Tieni traccia dell'avanzamento della conversione di Excel in TIFF

Possibili scenari di utilizzo

A volte la conversione di file Excel di grandi dimensioni può richiedere del tempo. Durante questo periodo, potresti voler mostrare l’avanzamento della conversione del documento anziché solo una schermata di caricamento per migliorare l’usabilità della tua applicazione. Aspose.Cells supporta il processo di conversione del documento di monitoraggio fornendo il file**IPageSavingCallback**interfaccia. Il**IPageSavingCallback**fornisce l’interfaccia**PageStartSaving**e**PageEndSaving** metodi che puoi implementare nella tua classe personalizzata. Puoi anche controllare quali pagine vengono riprodotte come mostrato nel*TestTiffPageSavingCallback*classe personalizzata.

Tieni traccia dell’avanzamento della conversione di Excel in TIFF

L’esempio di codice seguente carica il filefile excel di origine e stampa l’avanzamento della conversione nella console utilizzando il fileTestTiffPageSavingCallbackclasse personalizzata che implementa il**IPageSavingCallback**interfaccia. Il file di output generato è allegato come riferimento.

File di uscita

Codice d’esempio

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
// The path to the source directory.
String sourceDir = Utils.Get_SourceDirectory();
// The path to the output directory.
String outputDir = Utils.Get_OutputDirectory();
Workbook wb = new Workbook(sourceDir + "sampleUseWorkbookRenderForImageConversion.xlsx");
ImageOrPrintOptions opts = new ImageOrPrintOptions();
opts.setPageSavingCallback(new TestTiffPageSavingCallback());
opts.setImageType(ImageType.TIFF);
WorkbookRender wr = new WorkbookRender(wb, opts);
wr.toImage(outputDir + "DocumentConversionProgressForTiff_out.tiff");

Quello che segue è il codice per ilTestTiffPageSavingCallbackclasse personalizzata.

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
class TestTiffPageSavingCallback implements IPageSavingCallback {
public void pageStartSaving(PageStartSavingArgs args)
{
System.out.println("Start saving page index " + args.getPageIndex() + " of pages " + args.getPageCount());
//don't output pages before page index 2.
if (args.getPageIndex() < 2)
{
args.setToOutput(false);
}
}
public void pageEndSaving(PageEndSavingArgs args)
{
System.out.println("End saving page index " + args.getPageIndex() + " of pages " + args.getPageCount());
//don't output pages after page index 8.
if (args.getPageIndex() >= 8)
{
args.setHasMorePages(false);
}
}
}

Uscita console

Inizia a salvare l’indice della pagina 0 delle pagine 10
Terminare il salvataggio dell’indice 0 delle pagine 10
Inizia a salvare l’indice della pagina 1 delle pagine 10
Terminare il salvataggio dell’indice 1 delle pagine 10
Inizia a salvare l’indice della pagina 2 delle pagine 10
Terminare il salvataggio dell’indice 2 delle pagine 10
Inizia a salvare l’indice della pagina 3 delle pagine 10
Terminare il salvataggio dell’indice 3 delle pagine 10
Inizia a salvare l’indice della pagina 4 delle pagine 10
Terminare il salvataggio dell’indice 4 delle pagine 10
Inizia a salvare l’indice della pagina 5 delle pagine 10
Terminare il salvataggio dell’indice 5 delle pagine 10
Inizia a salvare l’indice della pagina 6 delle pagine 10
Terminare il salvataggio dell’indice 6 delle pagine 10
Inizia a salvare l’indice della pagina 7 delle pagine 10
Terminare il salvataggio dell’indice 7 delle pagine 10
Inizia a salvare l’indice della pagina 8 delle pagine 10
Terminare il salvataggio dell’indice 8 delle pagine 10