Rendera sekvens av sidor med PageIndex och PageCount egenskaper i ImageOrPrintOptions med C++

Möjliga användningsscenario

Du kan rendera en sekvens av sidor från din Excel-fil till bilder genom att använda Aspose.Cells med ImageOrPrintOptions.GetPageIndex() och ImageOrPrintOptions.GetPageCount()-egenskaper. Dessa egenskaper är användbara när det finns många, t.ex. tusentals sidor i ditt arbetsblad men du vill bara rendera några av dem. Detta kommer inte bara att spara bearbetningstiden utan också spara minnesanvändningen av renderingsprocessen.

Rendera sekvens av sidor med hjälp av egenskaperna PageIndex och PageCount i ImageOrPrintOptions

Följande kodexempel laddar den prov-Excel-filen och renderar endast sidorna 4, 5, 6 och 7 med hjälp av ImageOrPrintOptions.GetPageIndex()- och ImageOrPrintOptions.GetPageCount()-egenskaperna. Här är de renderade sidorna som genererats av koden.

todo:image_alt_text todo:image_alt_text
todo:image_alt_text todo:image_alt_text

Exempelkod

#include <iostream>
#include <string>
#include "Aspose.Cells.h"
using namespace Aspose::Cells;
using namespace Aspose::Cells::Drawing;

int main()
{
    Aspose::Cells::Startup();

    U16String srcDir(u"..\\Data\\01_SourceDirectory\\");
    U16String outDir(u"..\\Data\\02_OutputDirectory\\");

    Workbook wb(srcDir + u"sampleImageOrPrintOptions_PageIndexPageCount.xlsx");

    Worksheet ws = wb.GetWorksheets().Get(0);

    ImageOrPrintOptions opts;
    opts.SetPageIndex(3);
    opts.SetPageCount(4);
    opts.SetImageType(ImageType::Png);

    SheetRender sr(ws, opts);

    for (int i = opts.GetPageIndex(); i < sr.GetPageCount(); i++)
    {
        std::wstring pageNum = std::to_wstring(i + 1);
        U16String filePath = outDir + U16String(u"outputImage-") + 
            U16String(reinterpret_cast<const char16_t*>(pageNum.c_str())) + 
            U16String(u".png");
        sr.ToImage(i, filePath);
    }

    std::cout << "Images generated successfully!" << std::endl;

    Aspose::Cells::Cleanup();
}