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 rese come mostrato nel T*estPageSavingCallback*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 fileTestPageSavingCallback classe 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-.NET
//Source directory
string sourceDir = RunExamples.Get_SourceDirectory();
//Output directory
string outputDir = RunExamples.Get_OutputDirectory();
Workbook workbook = new Workbook(sourceDir + "sampleUseWorkbookRenderForImageConversion.xlsx");
ImageOrPrintOptions opts = new ImageOrPrintOptions();
opts.PageSavingCallback = new TestTiffPageSavingCallback();
opts.ImageType = ImageType.Tiff;
WorkbookRender wr = new WorkbookRender(workbook, 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-.NET
public class TestTiffPageSavingCallback : IPageSavingCallback
{
public void PageStartSaving(PageStartSavingArgs args)
{
Console.WriteLine("Start saving page index {0} of pages {1}", args.PageIndex, args.PageCount);
//don't output pages before page index 2.
if (args.PageIndex < 2)
{
args.IsToOutput = false;
}
}
public void PageEndSaving(PageEndSavingArgs args)
{
Console.WriteLine("End saving page index {0} of pages {1}", args.PageIndex, args.PageCount);
//don't output pages after page index 8.
if (args.PageIndex >= 8)
{
args.HasMorePages = 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