ExcelからTIFFへの変換の進行状況を追跡
可能な使用シナリオ
大きなExcelファイルを変換する際、時間がかかることがあります。この時間に、単なる読み込み画面ではなくドキュメント変換の進行状況を表示したい場合があります。Aspose.Cellsでは、IPageSavingCallbackインタフェースを提供することで、カスタムクラスで実装できるIPageSavingCallbackインタフェースが提供されます。TestPageSavingCallbackカスタムクラスで示されているように、レンダリングされるページを制御することもできます。
ExcelからTIFFへの変換の進行状況を追跡
以下のコードサンプルでは、ソースのExcelファイルをロードし、TestPageSavingCallbackを実装したカスタムクラスを使用して、変換の進行状況をコンソールに出力します。生成された出力ファイルは参照用に添付されています。
サンプルコード
// 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"); |
以下はTestTiffPageSavingCallback カスタムクラスのコードです。
// 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; | |
} | |
} | |
} |
コンソール出力
Start saving page index 0 of pages 10</br>
End saving page index 0 of pages 10</br>
Start saving page index 1 of pages 10</br>
End saving page index 1 of pages 10</br>
Start saving page index 2 of pages 10</br>
End saving page index 2 of pages 10</br>
Start saving page index 3 of pages 10</br>
End saving page index 3 of pages 10</br>
Start saving page index 4 of pages 10</br>
End saving page index 4 of pages 10</br>
Start saving page index 5 of pages 10</br>
End saving page index 5 of pages 10</br>
Start saving page index 6 of pages 10</br>
End saving page index 6 of pages 10</br>
Start saving page index 7 of pages 10</br>
End saving page index 7 of pages 10</br>
Start saving page index 8 of pages 10</br>
End saving page index 8 of pages 10</br>