Last Updated: 08 Oct, 2025

Title - How Do I Convert a PDF to MS Word Documents via PHP APIs?

Работа с PDF-файлами в веб-приложениях стала распространённой потребностью в различных отраслях. Независимо от того, управляете ли вы счетами, контрактами или учебным контентом, возможность конвертировать документы PDF в редактируемые форматы, такие как Microsoft Word (DOCX), крайне важна. К счастью, с помощью мощных и бесплатных PHP API разработчики могут легко автоматизировать и оптимизировать этот процесс.

Зачем конвертировать PDF в Word в PHP?

PDF-файлы отлично подходят для распространения, поскольку сохраняют структуру и дизайн. Однако их редактирование не всегда просто. Документы Word, с другой стороны, легко редактируются, что делает их идеальными для задач, требующих взаимодействия с пользователем, обновления или совместной работы. Решение на базе PHP позволяет разработчикам:

  • Реализовать пакетную обработку PDF в Word на стороне сервера
  • Интегрировать рабочие процессы редактирования документов в веб-приложения
  • Автоматизировать создание отчётов и обработку документов
  • Предоставить конечным пользователям возможность загружать редактируемые версии своих файлов

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

PHPWord с PDF-парсером

Для большего контроля над процессом конвертации вы можете объединить мощь PHPWord, библиотеки для создания и обработки документов Word, с библиотекой для парсинга PDF.

Пояснение к примеру кода:

В этом примере сначала используется библиотека PDFParser для чтения PDF-файла и извлечения текста с каждой страницы. Затем PHPWord создаёт новый документ Word и добавляет в него извлечённый текст. Этот метод даёт вам полный контроль над выводом, позволяя форматировать текст и добавлять другие элементы по мере необходимости.

require_once 'vendor/autoload.php';

// Создать новый объект парсера PDF
$parser = new \Smalot\PdfParser\Parser();

// Анализ PDF-файла
$pdf = $parser->parseFile('path/to/your/document.pdf');

// Извлечь все страницы из PDF
$pages = $pdf->getPages();

// Создать новый объект PHPWord
$phpWord = new \PhpOffice\PhpWord\PhpWord();

// Добавить раздел в документ Word
$section = $phpWord->addSection();

// Циклически перебрать каждую страницу PDF
foreach ($pages as $page) {
// Извлечь текст со страницы
$text = $page->getText();
// Добавить текст в документ Word
$section->addText($text);
}

// Сохраните документ Word
$objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2007');
$objWriter->save('output.docx');

echo "Содержимое PDF-файла успешно извлечено и сохранёно в Word!";

Spatie PDF-to-Text + PHPWord (текстовое преобразование)

Если ваши PDF-файлы содержат в основном простой текст (а не сложные таблицы или изображения), вы можете объединить библиотеки с открытым исходным кодом Spatie PDF-to-Text и PHPWord для упрощения процесса преобразования.

Как это работает?

Это самый простой метод, если у вас есть доступ к Adobe Acrobat Pro.

Шаги:

  1. Сначала вам нужно использовать Spatie\PdfToText API, который извлекает простой текст из PDF-файлов.
  2. Библиотека PHPWord используется для создания документа Word с извлеченным содержимым.
  3. Лучше всего подходит для текстовых PDF-файлов без сложного форматирования.

Вот пример кода, показывающий, как извлечь текст из PDF-файла, а затем создать документ Word с извлеченным содержимым с помощью библиотеки PHPWord.

PdfReader reader = new PdfReader("form.pdf");
FileOutputStream out = new FileOutputStream("data.fdf");
FdfWriter writer = new FdfWriter();
writer.setField("name", "John Doe");
writer.writeTo(out);
reader.close();
out.close();

Gotenberg через PHP (микросервис Docker с открытым исходным кодом)

Gotenberg — это микросервис конвертации документов с открытым исходным кодом, который можно интегрировать с PHP с помощью HTTP-запросов. Он идеально подходит для разработчиков, предпочитающих инструменты на базе Docker.

Как это работает?

  • Gotenberg использует LibreOffice в бэкенде для конвертации PDF-файлов.
  • Вы отправляете POST-запрос с PDF-файлом.
  • Сервер возвращает документ DOCX.
Code Snippet (PHP + Gotenberg)

Aspose.PDF Cloud for PHP (Free Tier)
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, 'http://localhost:3000/forms/libreoffice/convert');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);

$data = [
    [
        'name'     => 'files',
        'contents' => fopen('input.pdf', 'r'),
        'filename' => 'input.pdf'
    ]
];

curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
$response = curl_exec($ch);
file_put_contents('output.docx', $response);
curl_close($ch);

echo "Conversion done via Gotenberg!";

Aspose.PDF Cloud для PHP (бесплатный тариф)

Aspose.PDF Cloud PHP SDK предоставляет мощный PHP SDK, позволяющий разработчикам программного обеспечения конвертировать PDF-файлы в формат Word напрямую, используя облачный API. Вы можете начать бесплатно с ограниченным количеством вызовов API. Вот простой пример, показывающий, как разработчики программного обеспечения могут загружать и конвертировать PDF-файл в документы Microsoft Word DOCX с помощью команд PHP.

Пример кода:

use Aspose\Pdf\Cloud\PdfApi;

$pdfApi = new PdfApi('YOUR_APP_KEY', 'YOUR_APP_SID');

$pdfApi->putConvertDocument('sample.pdf', ['format' => 'docx']);

Заключение

Конвертация PDF-файлов в документы Word с помощью PHP не обязательно должна быть сложной или дорогостоящей. Используя подходящие бесплатные инструменты и библиотеки, разработчики могут предложить пользователям удобный экспорт редактируемых документов, повысить автоматизацию документооборота и общую производительность. Предпочитаете ли вы лёгкие PHP-обёртки или надёжные облачные API, у нас найдётся решение, отвечающее вашим потребностям.

FAQ

В: Можно ли конвертировать PDF в Word в PHP без использования платных API?

О: Да, вы можете бесплатно использовать библиотеки с открытым исходным кодом, такие как Spatie, PHPWord и LibreOffice CLI.

В: Поддерживает ли конвертация PDF в Word из открытых исходных кодов изображения и форматирование?

О: Базовые инструменты не поддерживают, но использование LibreOffice или Gotenberg сохраняет макет и изображения.

В: Можно ли автоматизировать конвертацию PDF в DOCX в веб-приложениях на PHP?

О: Безусловно — эти библиотеки можно интегрировать в любой рабочий процесс на основе PHP.

См. также