Visa arbetsbok med JavaScript via C++

Förhandsgranska utskrift

Det kan finnas fall där Excel-filer med miljontals sidor måste konverteras till PDF eller bilder. Behandling av sådana filer tar mycket tid och resurser. I sådana fall kan funtionen för arbetsboks- och bladutsiktsförhandsgranskning vara användbar. Innan konvertering kan användaren kontrollera det totala sidantalet och bestämma om filen ska konverteras eller inte. Denna artikel fokuserar på att använda klasserna WorkbookPrintingPreview och SheetPrintingPreview för att ta reda på det totala antalet sidor.

Aspose.Cells tillhandahåller utskriftsförhandsgranskning. För detta använder API:et WorkbookPrintingPreview och SheetPrintingPreview klasser. För att skapa en förhandsgranskning av hela arbetsboken, skapa en instans av WorkbookPrintingPreview klassen genom att passera Workbook och ImageOrPrintOptions objekt till konstruktorn. WorkbookPrintingPreview klassen tillhandahåller en evaluatedPageCount metod som returnerar antalet sidor i den genererade förhandsgranskningen. Liknande WorkbookPrintingPreview klassen, används SheetPrintingPreview klassen för att generera en utskriftsförhandsgranskning för ett specifikt blad. För att skapa utskriftsförhandsgranskning av ett blad, skapa en instans av SheetPrintingPreview klassen genom att passera Worksheet och ImageOrPrintOptions objekt till konstruktorn. SheetPrintingPreview klassen tillhandahåller också en evaluatedPageCount metod som returnerar antalet sidor i den genererade förhandsgranskningen.

Följande kodexempel demonstrerar användningen av både WorkbookPrintingPreview och SheetPrintingPreview klasser genom att använda provläsnings Excel-fil.

Exempelkod

<!DOCTYPE html>
<html>
    <head>
        <title>Aspose.Cells Example - Printing Preview</title>
    </head>
    <body>
        <h1>Printing Preview Example</h1>
        <input type="file" id="fileInput" accept=".xls,.xlsx,.csv" />
        <button id="runExample">Run Example</button>
        <a id="downloadLink" style="display: none;">Download Result</a>
        <div id="result"></div>
    </body>

    <script src="aspose.cells.js.min.js"></script>
    <script type="text/javascript">
        const { Workbook, ImageOrPrintOptions, WorkbookPrintingPreview, SheetPrintingPreview } = AsposeCells;

        AsposeCells.onReady({
            license: "/lic/aspose.cells.enc",
            fontPath: "/fonts/",
            fontList: [
                "arial.ttf",
                "NotoSansSC-Regular.ttf"
            ]
        }).then(() => {
            console.log("Aspose.Cells initialized");
        });

        document.getElementById('runExample').addEventListener('click', async () => {
            const fileInput = document.getElementById('fileInput');
            if (!fileInput.files.length) {
                document.getElementById('result').innerHTML = '<p style="color: red;">Please select an Excel file.</p>';
                return;
            }

            const file = fileInput.files[0];
            const arrayBuffer = await file.arrayBuffer();

            // Instantiating a Workbook object from the uploaded file
            const workbook = new Workbook(new Uint8Array(arrayBuffer));

            // Creating image/print options
            const imgOptions = new ImageOrPrintOptions();

            // Workbook printing preview
            const preview = new WorkbookPrintingPreview(workbook, imgOptions);
            const workbookPageCount = preview.evaluatedPageCount;
            console.log("Workbook page count: " + workbookPageCount);

            // Worksheet printing preview for first worksheet
            const preview2 = new SheetPrintingPreview(workbook.worksheets.get(0), imgOptions);
            const worksheetPageCount = preview2.evaluatedPageCount;
            console.log("Worksheet page count: " + worksheetPageCount);

            document.getElementById('result').innerHTML = `<p>Workbook page count: ${workbookPageCount}</p><p>Worksheet page count: ${worksheetPageCount}</p>`;
        });
    </script>
</html>

Följande är utdatan som genereras genom att köra ovanstående kod.

Konsoloutput

  
Workbook page count: 1  
Worksheet page count: 1  

Fortsatta ämnen