Skriv ut och förhandsgranska arbetsbok med C++

Introduktion till utskrift

Microsoft Excel antar att du vill skriva ut hela kalkylbladsområdet om inte en markering anges. För att skriva ut med Aspose.Cells, importera först namnområdet Aspose.Cells.Rendering till programmet. Det har flera användbara klasser, till exempel SheetRender och WorkbookRender.

Förhandsgranska utskrift

Det kan finnas fall där Excel-filer med miljontals sidor behöver konverteras till PDF eller bilder. Bearbetning av sådana filer kommer att förbruka mycket tid och resurser. I sådana fall kan arbetsbokens och arbetsbladets förhandsgranskningsfunktion vara användbar. Innan sådana filer konverteras kan användaren kontrollera det totala antalet sidor och sedan bestämma om filen ska konverteras eller inte. Denna artikel fokuserar på att använda WorkbookPrintingPreview och SheetPrintingPreview -klasser för att ta reda på det totala antalet sidor.

Aspose.Cells erbjuder förhandsgranskningsfunktionen. För detta tillhandahåller API:et WorkbookPrintingPreview och SheetPrintingPreview klasser. För att skapa en förhandsgranskning av hela arbetsboken, skapa en instans av WorkbookPrintingPreview -klassen genom att skicka Workbook och ImageOrPrintOptions objekt till konstruktören. WorkbookPrintingPreview -klassen tillhandahåller en GetEvaluatedPageCount() metod som returnerar antalet sidor i den genererade förhandsgranskningen. Liknande WorkbookPrintingPreview -klass används SheetPrintingPreview -klassen för att generera en förhandsgranskning för ett specifikt arbetsblad. För att skapa en förhandsgranskning av ett arbetsblad, skapa en instans av SheetPrintingPreview -klassen genom att skicka Worksheet och ImageOrPrintOptions objekt till konstruktören. SheetPrintingPreview -klassen tillhandahåller också en GetEvaluatedPageCount() metod som returnerar antalet sidor i den genererade förhandsgranskningen.

Följande kodsnutt demonstrerar användningen av både WorkbookPrintingPreview och SheetPrintingPreview klasser genom att använda exempel på excel-fil.

Exempelkod

#include <iostream>
#include "Aspose.Cells.h"

using namespace Aspose::Cells;
using namespace std;

int main()
{
    Aspose::Cells::Startup();

    // Source directory path
    U16String srcDir(u"..\\Data\\01_SourceDirectory\\");

    // Create workbook object
    Workbook workbook(srcDir + u"Book1.xlsx");

    // Create image or print options
    ImageOrPrintOptions imgOptions;

    // Create workbook printing preview
    WorkbookPrintingPreview preview(workbook, imgOptions);
    cout << "Workbook page count: " << preview.GetEvaluatedPageCount() << endl;

    // Create sheet printing preview
    SheetPrintingPreview preview2(workbook.GetWorksheets().Get(0), imgOptions);
    cout << "Worksheet page count: " << preview2.GetEvaluatedPageCount() << endl;

    Aspose::Cells::Cleanup();
    return 0;
}

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

Konsoloutput

Workbook page count: 1
Worksheet page count: 1

Fortsatta ämnen