Преобразование PDF в Word на Java

Aspose.PDF for Java может экспортировать PDF‑документы в форматы Microsoft Word с различными параметрами распознавания и макета. Используйте DocSaveOptions для контроля того, как текст PDF, списки и изображения преобразуются в вывод Word.

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

Используйте этот пример, когда PDF‑документ должен быть экспортирован в устаревший формат DOC. Код создает DocSaveOptions, устанавливает формат Doc, и передаёт параметры в общий метод сохранения.

  1. Откройте исходный PDF в экземпляре Document.
  2. Создайте DocSaveOptions и установите формат Doc.
  3. Вызовите document.save(outputFile.toString(), saveOptions), при этом PDF экспортируется в двоичный формат документа Microsoft Word.
  4. Сохраните преобразованный файл DOC.
public static void convertPdfToDoc(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        DocSaveOptions saveOptions = new DocSaveOptions();
        saveOptions.setFormat(DocSaveOptions.DocFormat.Doc);
        document.save(outputFile.toString(), saveOptions);
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

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

Используйте этот пример, когда PDF‑документ необходимо экспортировать в файл DOCX. DOCX является предпочтительным форматом для большинства новых рабочих процессов обработки текстов, так как он широко поддерживается и его легче редактировать.

  1. Откройте исходный PDF в экземпляре Document.
  2. Создайте DocSaveOptions и установите формат DocX.
  3. Вызовите document.save(outputFile.toString(), saveOptions), при этом содержимое PDF экспортируется как документ Word формата Office Open XML.
  4. Сохраните полученный файл DOCX.
public static void convertPdfToDocx(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        DocSaveOptions saveOptions = new DocSaveOptions();
        saveOptions.setFormat(DocSaveOptions.DocFormat.DocX);
        document.save(outputFile.toString(), saveOptions);
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Преобразование PDF в DOCX с улучшенным распознаванием потока текста

Используйте этот пример, когда экспорт в Word должен отдавать предпочтение редактируемому содержимому с изменяемой компоновкой вместо фиксированного визуального макета.

  1. Откройте исходный PDF в экземпляре Document.
  2. Создайте DocSaveOptions для вывода в DocX.
  3. Включите setMode(DocSaveOptions.RecognitionMode.EnhancedFlow), при этом конвертер использует улучшенное распознавание потока при генерации DOCX.
  4. Вызовите document.save(outputFile.toString(), saveOptions) и сохраните преобразованный файл DOCX.
public static void convertPdfToDocxAdvanced(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        DocSaveOptions saveOptions = new DocSaveOptions();
        saveOptions.setFormat(DocSaveOptions.DocFormat.DocX);
        saveOptions.setMode(DocSaveOptions.RecognitionMode.EnhancedFlow);
        document.save(outputFile.toString(), saveOptions);
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Преобразование PDF в DOCX с сохранением разрывов строк

Используйте этот пример, когда в выводе Word необходимо сохранить разрывы строк из исходного PDF.

  1. Откройте исходный PDF в экземпляре Document.
  2. Создайте DocSaveOptions для экспорта в DocX.
  3. Включите setAddReturnToLineEnd(true), при этом явно указанные разрывы строк сохраняются при конвертации.
  4. Вызовите document.save(outputFile.toString(), saveOptions) и сохраните файл DOCX.
public static void convertPdfToDocxWithLineBreaks(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        DocSaveOptions saveOptions = new DocSaveOptions();
        saveOptions.setFormat(DocSaveOptions.DocFormat.DocX);
        saveOptions.setAddReturnToLineEnd(true);
        document.save(outputFile.toString(), saveOptions);
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Преобразование PDF в DOCX с распознаванием маркеров списков

Используйте этот пример, когда маркеры списка из исходного PDF должны быть распознаны и сохранены в виде структур списков в Word.

  1. Откройте исходный PDF в экземпляре Document.
  2. Создайте DocSaveOptions для экспорта в DocX.
  3. Включите setRecognizeBullets(true), при этом содержимое PDF, похожее на список, распознаётся как маркированные списки при конвертации.
  4. Вызовите document.save(outputFile.toString(), saveOptions) и сохраните файл DOCX.
public static void convertPdfToDocxWithBulletRecognition(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        DocSaveOptions saveOptions = new DocSaveOptions();
        saveOptions.setFormat(DocSaveOptions.DocFormat.DocX);
        saveOptions.setRecognizeBullets(true);
        document.save(outputFile.toString(), saveOptions);
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Преобразование PDF в DOCX с настройкой разрешения изображений

Используйте этот пример, когда необходимо контролировать точность изображений в сгенерированном DOCX во время конвертации.

  1. Откройте исходный PDF в экземпляре Document.
  2. Создайте DocSaveOptions для экспорта в DocX.
  3. Установите setImageResolutionX(300) и setImageResolutionY(300), при этом растровый контент генерируется с запрошенным разрешением.
  4. Вызовите document.save(outputFile.toString(), saveOptions) и сохраните вывод DOCX.
public static void convertPdfToDocxWithImageResolution(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        DocSaveOptions saveOptions = new DocSaveOptions();
        saveOptions.setFormat(DocSaveOptions.DocFormat.DocX);
        saveOptions.setImageResolutionX(300);
        saveOptions.setImageResolutionY(300);
        document.save(outputFile.toString(), saveOptions);
    }
    System.out.println(inputFile + " converted into " + outputFile);
}