Конвертер формата PDF с помощью программы Aspose.PDF для C++

Экспорт PDF в Microsoft Office® Word, Excel, презентации PowerPoint, изображения, HTML и форматы с фиксированным макетом

Обзор

В редких случаях возникает необходимость манипулировать документами, отличными от PDF, при этом данные синтаксического анализа доступны в форматах PDF. Таким образом, для таких приложений будет два сценария: либо они добавят функциональность синтаксического анализа PDF в свое собственное решение, либо добавят функцию преобразования PDF для обработки данных в поддерживаемых форматах. Во втором сценарии, позволяющем конвертировать PDF в Word, Excel, HTML, изображения или любой другой необходимый формат, достаточно просто внедрить PDF-читалку и конвертерC# PDF-код на базе.NET. Здесь мы рассмотрим несколько случаев, чтобы программисты могли изменять эти фрагменты кода преобразования в соответствии со своими требованиями.

Преобразование PDF в Microsoft Word 2003-2019 гг.

Пример: код C# для преобразования PDF в Word

String _dataDir("C:\\Samples\\Conversion\\");
String infilename("sample.pdf");
String outfilename("PDFToDOC.doc")

// Загрузите исходный PDF-файл
auto document = MakeObject<Document>(_dataDir + infilename);

// Сохранить с помощью опций сохранения
// Создать объект DocSaveOptions
auto saveOptions = MakeObject<DocSaveOptions>();

// Установите режим распознавания следующим образом: Flow означает режим полного распознавания
saveOptions->set_Mode(DocSaveOptions::RecognitionMode::Flow);
// Два других режима — режим распознавания.TextBox и режим распознавания.EnhancedFlow

// Установите горизонтальную близость как 2,5
saveOptions->set_RelativeHorizontalProximity(2.5f);

// Включите значение для распознавания маркеров во время процесса преобразования
saveOptions->set_RecognizeBullets(true);

// Сохраните полученный файл DOC
document->Save(_dataDir + outfilename, saveOptions);

Библиотека Aspose.PDF для .NET поддерживает все преобразования PDF в Word. Если мы просто конвертируем документы Microsoft Word без каких-либо специальных настроек, мы просто загружаем PDF-файл методом Save из класса Document и будем использовать путь к выходному документу Word и SaveFormat в качестве параметров. Для особых случаев, когда необходимо увеличить расстояние между линиями, разрешение изображения и другие настройки, в API есть класс DocSaveOptions, который предоставляет все такие настройки.

Сохранить PDF в виде файлов Excel

Сохранить PDF в виде файлов Excel

String _dataDir("C:\\Samples\\Conversion\\");
String infilename("sample.pdf");
String outfilename("PDFToExcel.xlsx");
// Загрузить PDF-документ
auto document = MakeObject<Document>(_dataDir + infilename);
// Инициализируйте параметры сохранения Excel
auto excelSave = MakeObject<ExcelSaveOptions>();
// Установите выходной формат Excel XLSX
excelSave->set_Format(ExcelSaveOptions::ExcelFormat::XLSX);
// Минимизируйте количество рабочих листов
excelSave->set_MinimizeTheNumberOfWorksheets(true);
// Конвертируйте PDF в выходной файл Excel
document->Save(outfilename, excelSave);

Доступно специализированное перечисление SaveFormat.excel для сохранения PDF в определенных выходных форматах Microsoft Excel XLS XLSX. Кроме того, в библиотеке**.NET PDF Library** также есть специальный класс ExcelSaveOptions, который не только обеспечивает сохранение в форматах Excel, но и предоставляет различные функции и свойства для настройки различных атрибутов, таких как точный формат вывода, минимизация количества рабочих листов и многое другое.

Конвертируйте PDF в презентации PowerPoint

Пример: преобразование кода C# из PDF в PowerPoint

// String for path name
String _dataDir("C:\\Samples\\Conversion\\");
String infilename("sample-pptx.pdf");
String outfilename("sample-pptx.pptx");
// Загрузить PDF-документ
Document pdfDocument = new Document("document.pdf");
auto pptxOptions = MakeObject<PptxSaveOptions>();
pptxOptions->set_SlidesAsImages(true);
// Сохранить выходной файл
document->Save(_dataDir + outfilename, pptxOptions);

.NET PDF API поддерживает преобразование страниц PDF в слайды презентаций PowerPoint с выбираемым текстом или изображениями путем визуализации слайдов в виде изображений. Схема сохранения формата переносимых документов в PowerPoint почти такая же: загрузка файла с использованием класса Document и последующий вызов метода Save с указанием пути к выходному файлу и SaveFormat в качестве параметров. В случае рендеринга со специальными параметрами презентации программисты могут использовать класс pptxSaveOptions с любыми соответствующими специальными опциями рендеринга. Вызов метода save и передача опций в качестве параметра.

Конвертация портативных документов PDF в HTML

Пример: код C# для преобразования PDF в HTML

String _dataDir("C:\\Samples\\Conversion\\");
String infilename("sample.pdf");
String outfilename("PDFToHTML.html")

// Загрузить исходный PDF-документ
auto document = MakeObject<Document>(_dataDir + infilename);

// Создать экземпляр объекта «Параметры сохранения» в формате HTML
auto htmlOptions = MakeObject<HtmlSaveOptions>();

// Указание отдельной папки для PDF-HTML с изображениями
htmlOptions->SpecialFolderForAllImages = (_dataDir + String("\\images\\"));

// Указание опции разделения полученного HTML-кода на несколько страниц
htmlOptions->set_SplitIntoPages(true);

document->Save(_dataDir + outfilename, htmlOptions);

Библиотека парсинга PDF поддерживает сохранение PDF в формате HTML целиком, а также со встроенными ресурсами, включая изображения. Процедура преобразования аналогична процедуре преобразования PDF в другие форматы для стандартных случаев, таких как загрузка исходного документа и вызов метода Save с указанием пути к выходному HTML-файлу и SaveFormat.Html в качестве параметров. В случае сохранения с помощью встроенных ресурсов существует класс HTMLSaveOptions с несколькими опциями, такими как сохранение изображений в определенной папке во время преобразования, разделение полученного HTML-кода на несколько страниц и многое другое.

Конвертируйте PDF в изображения

Пример: код C# для преобразования PDF в изображения

// Загрузить документ
auto document = MakeObject<Document>(_dataDir + u"ConvertAllPagesToBmp.pdf");

// Создать объект Resolution
 auto resolution = MakeObject<Aspose::Pdf::Devices::Resolution>(300); //300 dpi

// Создать устройство Image с заданными атрибутами
// Ширина, высота, разрешение
System::SmartPtr<Aspose::Pdf::Devices::ImageDevice>
    jpegDevice = MakeObject<Aspose::Pdf::Devices::JpegDevice>(resolution);
// Для BMP, PNG, TIFF это будет устройство BMP, устройство PNG, устройство TIFF соответственно

// Преобразуйте определенную страницу и сохраните изображение для потоковой передачи
jpegDevice->Process(document->get_Pages()->idx_get(1), imageStream);

// Закрыть трансляцию
imageStream->Close();

Конвертировать страницы PDF в изображения, включая PNG, JPEG, TIFF, BMP и т. д., легко в приложениях на основе платформы.NET с использованием приведенных ниже фрагментов кода. Разработчики могут просматривать страницы PDF после загрузки файла и преобразовывать страницу за страницей в необходимый формат изображения. Разработчики могут устанавливать горизонтальное и вертикальное разрешение изображений, используя Класс разрешения