Преобразование PDF-документов через .NET

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

Обзор

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

Преобразование PDF-файлов в формат Microsoft Word 2003-2019

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

// Загрузите исходный PDF-файл
Document pdfFile = new Document("Source-PDF-File.pdf");

// Для простого преобразования PDF в Word

// pdfFile.Save("PDF-To-Word.doc", SaveFormat.Doc);

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

// Установите режим распознавания как Flow означает режим полного распознавания
saveOpts.Mode = DocSaveOptions.RecognitionMode.Flow;

// Два других режима: RecognitionMode.TextBox и RecognitionMode.EnhancedFlow

// Установите горизонтальную близость как 2,5
saveOpts.RelativeHorizontalProximity = 2.5f;

// Включить значение для распознавания маркеров в процессе преобразования
saveOpts.RecognizeBullets = true;

// Сохраните полученный DOC-файл
pdfFile.Save("PDF-To-Word.doc", saveOpts);

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

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

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

// Загрузить PDF-документ
Document pdfDoc = new Document("sample-file.pdf");
// Инициализация параметров сохранения Excel
ExcelSaveOptions opts = new ExcelSaveOptions();
// Установить выходной формат Excel XLSX
opts.Format = ExcelSaveOptions.ExcelFormat.XLSX;
// Минимизировать количество рабочих листов
opts.MinimizeTheNumberOfWorksheets = true;
// Преобразовать PDF в выходной файл Excel
pdfDoc.Save("pdf-to-excel-output.xlsx", opts);

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

Преобразование PDF в презентации PowerPoint

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

// Загрузить PDF-документ
Document pdfDocument = new Document("document.pdf");
PptxSaveOptions pptxOptions = new PptxSaveOptions();
pptxOptions.SlidesAsImages = true;
// Сохранить выходной файл
pdfDocument.Save("PDF to PPT.ppt", pptxOptions);

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

Конвертация формата переносимого документа PDF в HTML

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

// Загрузить исходный PDF-документ
Document doc = new Document("source-input-file.pdf");

// Создать экземпляр объекта параметров сохранения HTML
HtmlSaveOptions conversionOptions = new HtmlSaveOptions();

// Включение опции для встраивания всех ресурсов в HTML
conversionOptions.PartsEmbeddingMode = HtmlSaveOptions.PartsEmbeddingModes.EmbedAllIntoHtml;

// Указание отдельной папки для PDF в HTML с изображениями
conversionOptions.SpecialFolderForAllImages = "ImagesFolder";

// Указание параметра разделения результирующего HTML на несколько страниц
conversionOptions.SplitIntoPages = true;

doc.Save("converted-pdf-to.html", conversionOptions);

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

Преобразование PDF в изображения

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

// Загрузить документ
Document srcFile = new Document("pdf-pages-to-image.pdf");

using (FileStream streamObj = new FileStream("pdf-to-image.jpeg", FileMode.Create)){

// Создать объект «Разрешение»
Resolution resolution = new Resolution(300);

// Создать устройство Image с заданными атрибутами
// Ширина, высота, разрешение
JpegDevice renderToImages = new JpegDevice(500, 700, resolution);
// Для BMP, PNG, TIFF это будет устройство BMP, устройство PNG, устройство TIFF соответственно

// Преобразование определенной страницы и сохранение изображения в потоковом режиме
renderToImages.Process(srcFile.Pages[1], streamObj);

// Закрыть стрим
streamObj.Close();
}

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