Fortschritt der Dokumentkonvertierung verfolgen
Mögliche Verwendungsszenarien
Manchmal kann die Konvertierung großer Excel-Dateien einige Zeit in Anspruch nehmen. Während dieser Zeit möchten Sie möglicherweise den Dokumentkonvertierungsfortschritt anzeigen, anstatt nur einen Ladebildschirm anzuzeigen, um die Benutzerfreundlichkeit Ihrer Anwendung zu verbessern. Aspose.Cells unterstützt die Verfolgung des Dokumentkonvertierungsprozesses durch Bereitstellung der IPageSavingCallback-Schnittstelle. Die IPageSavingCallback-Schnittstelle bietet PageStartSaving und PageEndSaving Methoden, die Sie in Ihrer eigenen Klasse implementieren können. Sie können auch steuern, welche Seiten dargestellt werden, wie in der benutzerdefinierten Klasse TestPageSavingCallback dargestellt.
Fortschritt der Dokumentkonvertierung nachverfolgen
Der folgende Codeausschnitt lädt die Quelle-Excel-Datei und gibt ihren Konvertierungsfortschritt in der Konsole aus, indem die benutzerdefinierte Klasse TestPageSavingCallback implementiert wird, die die IPageSavingCallback-Schnittstelle implementiert.
Beispielcode
// 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); |
Der folgende Code ist für die benutzerdefinierte Klasse TestPageSavingCallback.
// 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); | |
} | |
} | |
} |
Konsolenausgabe
Start saving page index 0 of pages 11</br>
End saving page index 0 of pages 11</br>
Start saving page index 1 of pages 11</br>
End saving page index 1 of pages 11</br>
Start saving page index 2 of pages 11</br>
End saving page index 2 of pages 11</br>
Start saving page index 3 of pages 11</br>
End saving page index 3 of pages 11</br>
Start saving page index 4 of pages 11</br>
End saving page index 4 of pages 11</br>
Start saving page index 5 of pages 11</br>
End saving page index 5 of pages 11</br>
Start saving page index 6 of pages 11</br>
End saving page index 6 of pages 11</br>
Start saving page index 7 of pages 11</br>
End saving page index 7 of pages 11</br>
Start saving page index 8 of pages 11</br>
End saving page index 8 of pages 11