Может быть много причин для преобразования файлов Excel в изображения. Например, вы можете добавлять изображения на веб-страницы, PDF-файлы, документы Word, презентации PowerPoint и т. д. В этой статье вы узнаете, как преобразовать файлы Excel в изображения с помощью C++.
- C++ Excel для преобразования изображений API
- Преобразование Excel в изображение с помощью C++
- Получить бесплатную лицензию
C++ Excel для преобразования изображений API
Aspose.Cells for C++ — это собственная библиотека C++, которая позволяет создавать электронные таблицы, управлять ими и преобразовывать их без использования Microsoft Excel или Office Automation. Кроме того, API предоставляет встроенную поддержку для преобразования электронных таблиц Excel в различные форматы. Вы можете установить Aspose.Cells for C++ API, используя пакет NuGet или загрузив API напрямую.
Преобразование Excel в изображение с помощью C++
Aspose.Cells for C++ позволяет конвертировать электронные таблицы Excel в различные популярные форматы изображений. Ниже приведены поддерживаемые форматы выходного изображения:
Вы можете использовать следующие шаги для преобразования файлов Excel в изображения.
- Во-первых, загрузите файл Excel с классом IWorkbook.
- Создайте экземпляр класса IImageOrPrintOptions.
- Установите тип изображения, передав перечисление ImageFormat в метод IImageOrPrintOptions->SetImageFormat().
- Установите другие параметры, такие как разрешение по горизонтали и вертикали, с помощью класса IImageOrPrintOptions.
- Создайте экземпляр класса IWorksheet с рабочим листом, который вы хотите преобразовать.
- Создайте объект класса ISheetRender, передав экземпляры IWorksheet и IImageOrPrintOptions в качестве параметров.
- Получите количество страниц на листе с помощью метода ISheetRender->GetPageCount().
- Наконец, прокрутите страницы и сохраните каждую страницу как изображение с помощью метода ISheetRender->ToImage().
В следующем примере фрагмента кода показано, как преобразовать файлы Excel в изображения с помощью C++.
// Полные примеры и файлы данных см. на странице https://github.com/aspose-cells/Aspose.Cells-for-C.
// Путь к исходному каталогу.
StringPtr srcDir = new String("..\\Data\\01_SourceDirectory\\");
// Выходной путь к каталогу.
StringPtr outDir = new String("..\\Data\\02_OutputDirectory\\");
// Путь к входному файлу Excel.
StringPtr sampleConvertingWorksheetToDifferentImageFormats = srcDir->StringAppend(new String("sampleConvertingWorksheetToDifferentImageFormats.xlsx"));
// Создайте пустую книгу.
intrusive_ptr<Aspose::Cells::IWorkbook> workbook = Factory::CreateIWorkbook(sampleConvertingWorksheetToDifferentImageFormats);
// Доступ к первому рабочему листу.
intrusive_ptr<Aspose::Cells::IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// Создайте изображение или объект опций печати.
intrusive_ptr<Aspose::Cells::Rendering::IImageOrPrintOptions> imgOptions = Factory::CreateIImageOrPrintOptions();
// Укажите формат изображения.
imgOptions->SetImageFormat(Aspose::Cells::Systems::Drawing::Imaging::ImageFormat::GetPng());
// Укажите горизонтальное и вертикальное разрешение
imgOptions->SetHorizontalResolution(200);
imgOptions->SetVerticalResolution(200);
// Рендеринг листа в соответствии с указанным изображением или параметрами печати.
intrusive_ptr<Aspose::Cells::Rendering::ISheetRender> sr = Factory::CreateISheetRender(worksheet, imgOptions);
// Получить количество страниц.
Aspose::Cells::Systems::Int32 pageCount = sr->GetPageCount();
// Создайте объект построителя строк для конкатенации строк.
intrusive_ptr<Aspose::Cells::Systems::Text::StringBuilder> sb = new Aspose::Cells::Systems::Text::StringBuilder();
// Рендеринг каждой страницы в изображение png один за другим.
for (int i = 0; i < pageCount; i++)
{
// Очистите построитель строк и создайте путь к выходному изображению с конкатенацией строк.
sb->Clear();
sb->Append(outDir);
sb->Append((StringPtr)new String("outputConvertingWorksheetToImagePNG_"));
sb->Append(i);
sb->Append((StringPtr)new String(".png"));
// Получите путь к выходному изображению.
StringPtr outputPNG = sb->ToString();
// Преобразование рабочего листа в изображение png.
sr->ToImage(i, outputPNG);
}
Получить бесплатную лицензию
Вы можете попробовать API без ограничений по ознакомительной версии, запросив бесплатную временную лицензию.
Вывод
В заключение вы узнали, как преобразовать электронные таблицы Excel в изображения с помощью C++. Используя Aspose.Cells for C++ API, вы можете преобразовывать файлы Excel в различные популярные форматы изображений, включая PNG, TIFF, SVG, GIF, JPEG и т. д. Чтобы узнать больше об API, воспользуйтесь API документация.