Verfolgen Sie den Fortschritt der Dokumentenkonvertierung
Mögliche Nutzungsszenarien
Manchmal kann das Konvertieren großer Excel-Dateien einige Zeit dauern. Während dieser Zeit möchten Sie möglicherweise den Fortschritt der Dokumentkonvertierung statt nur eines Ladebildschirms anzeigen, um die Benutzerfreundlichkeit Ihrer Anwendung zu verbessern. Aspose.Cells unterstützt die Verfolgung des Dokumentenkonvertierungsprozesses durch Bereitstellung der**IPageSavingCallback**Schnittstelle. Das**IPageSavingCallback**Schnittstelle bietet**PageStartSaving**und**PageEndSaving** Methoden, die Sie in Ihrer benutzerdefinierten Klasse implementieren können. Sie können auch steuern, welche Seiten gerendert werden, wie in gezeigt*TestPageSavingCallback*benutzerdefinierte Klasse.
Verfolgen Sie den Fortschritt der Dokumentenkonvertierung
Das folgende Codebeispiel lädt dieExcel-Quelldateiund druckt seinen Konvertierungsfortschritt in der Konsole mithilfe vonTestPageSavingCallbackbenutzerdefinierte Klasse, die die implementiert**IPageSavingCallback**Schnittstelle.
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); |
Das Folgende ist der Code für dieTestPageSavingCallbackbenutzerdefinierte Klasse.
// 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
Beginnen Sie mit dem Speichern des Seitenindex 0 der Seiten 11
Beenden Sie das Speichern des Seitenindex 0 der Seiten 11
Beginnen Sie mit dem Speichern von Seitenindex 1 von Seite 11
Beenden Sie das Speichern des Seitenindex 1 der Seite 11
Beginnen Sie mit dem Speichern von Seitenindex 2 von Seite 11
Beenden Sie das Speichern des Seitenindex 2 der Seite 11
Beginnen Sie mit dem Speichern von Seitenindex 3 von Seite 11
Beenden Sie das Speichern des Seitenindex 3 der Seite 11
Beginnen Sie mit dem Speichern von Seitenindex 4 von Seite 11
Beenden Sie das Speichern von Seitenindex 4 von Seite 11
Beginnen Sie mit dem Speichern von Seitenindex 5 von Seite 11
Beenden Sie das Speichern des Seitenindex 5 der Seite 11
Beginnen Sie mit dem Speichern von Seitenindex 6 von Seite 11
Beenden Sie das Speichern des Seitenindex 6 der Seite 11
Beginnen Sie mit dem Speichern von Seitenindex 7 von Seite 11
Beenden Sie das Speichern des Seitenindex 7 von Seite 11
Beginnen Sie mit dem Speichern von Seitenindex 8 der Seiten 11
Beenden Sie das Speichern des Seitenindex 8 der Seite 11