Tieni traccia dell'avanzamento della conversione del documento
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*TestPageSavingCallback*classe personalizzata.
Tieni traccia dell’avanzamento della conversione del documento
L’esempio di codice seguente carica il filefile excel di originee stampa l’avanzamento della conversione nella console utilizzando il fileTestPageSavingCallbackclasse personalizzata che implementa il**IPageSavingCallback**interfaccia.
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 + "PagesBook1.xlsx"); | |
PdfSaveOptions pdfSaveOptions = new PdfSaveOptions(); | |
pdfSaveOptions.setPageSavingCallback(new TestPageSavingCallback()); | |
wb.save(outputDir + "DocumentConversionProgress.pdf", pdfSaveOptions); |
Quello che segue è il codice per ilTestPageSavingCallbackclasse personalizzata.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
class TestPageSavingCallback 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 11
Terminare il salvataggio dell’indice 0 delle pagine 11
Inizia a salvare l’indice della pagina 1 delle pagine 11
Terminare il salvataggio dell’indice 1 delle pagine 11
Inizia a salvare l’indice della pagina 2 delle pagine 11
Terminare il salvataggio dell’indice 2 delle pagine 11
Inizia a salvare l’indice della pagina 3 delle pagine 11
Terminare il salvataggio dell’indice 3 delle pagine 11
Inizia a salvare l’indice della pagina 4 delle pagine 11
Terminare il salvataggio dell’indice 4 delle pagine 11
Inizia a salvare l’indice della pagina 5 delle pagine 11
Terminare il salvataggio dell’indice 5 delle pagine 11
Inizia a salvare l’indice della pagina 6 delle pagine 11
Terminare il salvataggio dell’indice 6 delle pagine 11
Inizia a salvare l’indice della pagina 7 delle pagine 11
Terminare il salvataggio dell’indice 7 delle pagine 11
Inizia a salvare l’indice della pagina 8 delle pagine 11
Terminare il salvataggio dell’indice 8 delle pagine 11