Excel管理控件Aspose.Cells开发者指南(十):跟踪文档转换进度
Aspose.Cells for .NET是Excel电子表格编程API,可加快电子表格管理和处理任务,支持构建具有生成,修改,转换,呈现和打印电子表格功能的跨平台应用程序。
在接下来的系列教程中,将为开发者带来Aspose.Cells for .NET的一系列使用教程,例如关于加载保存转换、字体、渲染、绘图、智能标记等等。
【下载体验Aspose.Cells for .NET最新版】
致改变世界的程序员——现在购买Aspose系列产品满额即有优惠减免,最高立减10000元!更多活动详情可哦~
第一章:加载,保存,转换和管理
▲第十节:跟踪文档转换进度
有时转换大型excel文件可能需要一些时间。在这段时间里,您可能希望显示文档转换进度,而不只是显示加载屏幕,以增强应用程序的可用性。Aspose.Cells通过提供IPageSavingCallback接口来支持跟踪文档转换过程。该IPageSavingCallback接口提供PageStartSaving和PageEndSaving,你可以在你的自定义类实现方法。
以下代码示例通过使用实现IPageSavingCallback 接口的TestPageSavingCallback定制类 在控制台中加载源excel文件并打印其转换进度。
//源目录 string sourceDir = RunExamples.Get_SourceDirectory(); //输出目录 string outputDir = RunExamples.Get_OutputDirectory(); Workbook workbook = new Workbook(sourceDir + "PagesBook1.xlsx"); PdfSaveOptions pdfSaveOptions = new PdfSaveOptions(); pdfSaveOptions.PageSavingCallback = new TestPageSavingCallback(); workbook.Save(outputDir + "DocumentConversionProgress.pdf", pdfSaveOptions);
以下是TestPageSavingCallback定制类的代码。
public class TestPageSavingCallback : 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; } } }
控制台输出
Start saving page index 0 of pages 11 End saving page index 0 of pages 11 Start saving page index 1 of pages 11 End saving page index 1 of pages 11 Start saving page index 2 of pages 11 End saving page index 2 of pages 11 Start saving page index 3 of pages 11 End saving page index 3 of pages 11 Start saving page index 4 of pages 11 End saving page index 4 of pages 11 Start saving page index 5 of pages 11 End saving page index 5 of pages 11 Start saving page index 6 of pages 11 End saving page index 6 of pages 11 Start saving page index 7 of pages 11 End saving page index 7 of pages 11 Start saving page index 8 of pages 11 End saving page index 8 of pages 11
ASPOSE技术交流QQ群(642018183)已开通,各类资源及时分享,欢迎交流讨论!
如果您对Aspose有任何需求和疑难,记得扫描下方二维码告诉我们哦~