Stampa e anteprima del workbook con C++

Introduzione alla stampa

Microsoft Excel presume che si desideri stampare l’intera area del foglio di lavoro a meno che non si specifichi una selezione. Per stampare utilizzando Aspose.Cells, prima importa il namespace Aspose.Cells.Rendering nel programma. Ha diverse classi utili, ad esempio, SheetRender e WorkbookRender.

Anteprima di stampa

Potrebbero esserci casi in cui file di Excel con milioni di pagine devono essere convertiti in PDF o immagini. Il processo di tali file consumerà molto tempo e risorse. In tali situazioni, la funzione di Anteprima di stampa del Workbook e del Foglio di lavoro potrebbe rivelarsi utile. Prima di convertire tali file, l’utente può controllare il numero totale di pagine e poi decidere se convertire il file o meno. Questo articolo si concentra sull’utilizzo delle classi WorkbookPrintingPreview e SheetPrintingPreview per scoprire il numero totale di pagine.

Aspose.Cells fornisce la funzione di anteprima di stampa. A questo scopo, l’API fornisce le classi WorkbookPrintingPreview e SheetPrintingPreview. Per creare l’anteprima di stampa dell’intero workbook, creare un’istanza della classe WorkbookPrintingPreview passando gli oggetti Workbook e ImageOrPrintOptions al costruttore. La classe WorkbookPrintingPreview fornisce un metodo GetEvaluatedPageCount() che restituisce il numero di pagine nell’anteprima generata. Similmente alla classe WorkbookPrintingPreview, la classe SheetPrintingPreview viene utilizzata per generare un’anteprima di stampa per un foglio di lavoro specifico. Per creare l’anteprima di stampa di un foglio di lavoro, creare un’istanza della classe SheetPrintingPreview passando gli oggetti Worksheet e ImageOrPrintOptions al costruttore. La classe SheetPrintingPreview fornisce anche un metodo GetEvaluatedPageCount() che restituisce il numero di pagine nell’anteprima generata.

Il seguente frammento di codice dimostra l’utilizzo sia delle classi WorkbookPrintingPreview che SheetPrintingPreview utilizzando il file Excel di esempio.

Codice di Esempio

#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;
}

Quello che segue è l’output generato eseguendo il codice sopra.

Output della console

Workbook page count: 1
Worksheet page count: 1

Argomenti avanzati