Преобразование PDF файла в другие форматы

Преобразование PDF в EPUB

EPUB (сокращение от электронная публикация) - это бесплатный и открытый стандарт электронной книги от Международного форума цифровых публикаций (IDPF). Файлы имеют расширение .epub. EPUB предназначен для контента с возможностью переформатирования, что означает, что EPUB-ридер может оптимизировать текст для конкретного устройства отображения. EPUB также поддерживает контент с фиксированной версткой. Формат предназначен как единый формат, который издатели и центры конверсии могут использовать внутри компании, а также для распространения и продажи. Он заменяет стандарт Open eBook.

Aspose.PDF для Java поддерживает функцию преобразования PDF-документов в формат EPUB. Aspose.PDF для Java имеет класс под названием EpubSaveOptions, который может быть использован в качестве второго аргумента метода Document.save(..), чтобы создать файл EPUB. Пожалуйста, попробуйте использовать следующий фрагмент кода для выполнения этого требования.

// Загрузить PDF документ
Document document = new Document(DATA_DIR + "PDFToEPUB.pdf");
// Создать экземпляр параметров сохранения Epub
EpubSaveOptions options = new EpubSaveOptions();
// Указать макет для содержимого
options.setContentRecognitionMode(EpubSaveOptions.RecognitionMode.Flow);
// Сохранить ePUB документ
document.save(DATA_DIR + "PDFToEPUB_out.epub", options);
document.close();

Конвертация PDF в LaTeX/TeX

Aspose.PDF for Java поддерживает конвертацию PDF в LaTeX/TeX. Формат файла LaTeX - это текстовый формат с специальной разметкой, используемый в системе подготовки документов на базе TeX для высококачественной вёрстки.

Для конвертации PDF файлов в TeX, Aspose.PDF имеет класс TeXSaveOptions, который предоставляет метод setOutDirectoryPath для сохранения временных изображений в процессе конвертации.

Следующий фрагмент кода показывает процесс конвертации PDF файлов в формат TEX с помощью Java.

String documentFileName = Paths.get(DATA_DIR.toString(), "PDFToTeX.pdf").toString();
String texDocumentFileName = Paths.get(DATA_DIR.toString(), "PDFToTeX_out.tex").toString();

// Создать объект документа
Document document = new Document(documentFileName);

// Создать экземпляр параметров сохранения LaTex
TeXSaveOptions saveOptions = new TeXSaveOptions();

// Указать директорию вывода
String pathToOutputDirectory = DATA_DIR.toString();

// Установить путь директории вывода для объекта параметров сохранения
saveOptions.setOutDirectoryPath(pathToOutputDirectory);

// Сохранить PDF файл в формате LaTex
document.save(texDocumentFileName, saveOptions);
document.close();

Преобразование PDF в текст

Aspose.PDF для Java поддерживает преобразование всего PDF-документа и отдельной страницы в текстовый файл.

Преобразование всего PDF-документа в текстовый файл

Вы можете преобразовать PDF-документ в TXT-файл, используя метод Visit класса TextAbsorber.

Следующий кодовый фрагмент объясняет, как извлечь текст со всех страниц.

// Открыть документ
String pdfFileName = Paths.get(DATA_DIR.toString(), "demo.pdf").toString();
String txtFileName = Paths.get(DATA_DIR.toString(), "PDFToTXT_out.txt").toString();

// Загрузить PDF-документ
Document document = new Document(pdfFileName);
TextAbsorber ta = new TextAbsorber();
ta.visit(document);
// Сохранить извлеченный текст в текстовый файл
BufferedWriter writer = new BufferedWriter(new FileWriter(txtFileName));
writer.write(ta.getText());
writer.close();

Преобразование страницы PDF в текстовый файл

Вы можете преобразовать документ PDF в TXT файл с помощью Aspose.PDF для Java. Вам следует использовать метод Visit класса TextAbsorber для решения этой задачи.

Следующий фрагмент кода объясняет, как извлечь текст с конкретных страниц.

String pdfFileName = Paths.get(DATA_DIR.toString(), "demo.pdf").toString();
String txtFileName = Paths.get(DATA_DIR.toString(), "PDFToTXT_out.txt").toString();

// Загрузить PDF документ
Document document = new Document(pdfFileName);

TextAbsorber ta = new TextAbsorber();
int[] pages = new int[] { 1, 3, 4 };

for (int page : pages) {
    ta.visit(document.getPages().get_Item(page));
}

// Сохранить извлеченный текст в текстовый файл
BufferedWriter writer = new BufferedWriter(new FileWriter(txtFileName));
writer.write(ta.getText());
writer.close();
document.close();

Convert PDF to XPS

Aspose.PDF for Java предоставляет возможность конвертировать PDF файлы в формат XPS. Давайте попробуем использовать представленный фрагмент кода для конвертации PDF файлов в формат XPS с помощью Java.

Тип файла XPS в первую очередь ассоциируется с XML Paper Specification от Microsoft Corporation. XML Paper Specification (XPS), ранее известная под кодовым названием Metro и включающая маркетинговую концепцию Next Generation Print Path (NGPP), является инициативой Microsoft по интеграции создания и просмотра документов в операционную систему Windows.

Для конвертации PDF файлов в XPS, Aspose.PDF имеет класс XpsSaveOptions, который используется в качестве второго аргумента конструктора Document.save(..) для генерации XPS файла. Следующий фрагмент кода показывает процесс преобразования PDF файлов в формат XPS.

String documentFileName = Paths.get(DATA_DIR.toString(), "sample.pdf").toString();
String xpsDocumentFileName = Paths.get(DATA_DIR.toString(), "sample-res-xps.xps").toString();

// Создать объект Document
Document document = new Document(documentFileName);

// Создать экземпляр опций сохранения XPS
XpsSaveOptions saveOptions = new XpsSaveOptions();

// Сохранить вывод в формате XML
document.save(xpsDocumentFileName, saveOptions);
document.close();