Belge Dönüştürme İlerlemesini İzleme
Olası Kullanım Senaryoları
Bazen büyük excel dosyalarının dönüştürülmesi biraz zaman alabilir. Bu süre zarfında, uygulamanızın kullanılabilirliğini artırmak için yalnızca bir yükleme ekranı yerine belge dönüştürme ilerlemesini göstermek isteyebilirsiniz. Aspose.Cells, aşağıdakileri sağlayarak izleme belgesi dönüştürme sürecini destekler:IPageSavingCallbackarayüz. buIPageSavingCallbackarayüz sağlarPageStartSavingvePageEndSaving özel sınıfınızda uygulayabileceğiniz yöntemler. Ayrıca, aşağıda gösterildiği gibi hangi sayfaların oluşturulacağını da kontrol edebilirsiniz.TestPageSavingCallbacközel sınıf
Belge Dönüştürme İlerlemesini İzleme
Aşağıdaki kod örneği,kaynak excel dosyasıkullanarak dönüştürme ilerlemesini konsolda yazdırır.TestPageSavingCallbackuygulayan özel sınıf**IPageSavingCallback**arayüz.
Basit kod
// 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); |
için kod aşağıdadırTestPageSavingCallbacközel sınıf
// 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); | |
} | |
} | |
} |
Konsol Çıkışı
- sayfaların 0. sayfa dizinini kaydetmeye başlayın
- sayfaların sayfa dizini 0’ı kaydetmeyi sonlandır
- sayfanın 1. sayfasını kaydetmeye başla
- sayfaların 1. sayfa indeksini kaydetmeyi sonlandır
- sayfanın 2. sayfasını kaydetmeye başla
Kaydetmeyi sonlandır sayfa indeksi 2 sayfa 11
Sayfa 11’in sayfa dizini 3’ü kaydetmeye başla
Kaydetmeyi sonlandır sayfa indeksi 3 sayfa 11 - sayfanın 4. sayfasını kaydetmeye başla
Kaydetmeyi sonlandır sayfa dizini 4 sayfa 11 - sayfanın 5. sayfasını kaydetmeye başla
Kaydetmeyi sonlandır sayfa dizini 5 sayfa 11 - sayfanın 6. sayfasını kaydetmeye başla
Kaydetmeyi sonlandır sayfa dizini 6 sayfa 11 - sayfanın 7. sayfasını kaydetmeye başla
Kaydetmeyi sonlandır sayfa dizini 7 / sayfalar 11 - sayfanın 8. sayfasını kaydetmeye başla
Kaydetmeyi sonlandır sayfa dizini 8 sayfa 11