Как лучше всего конвертировать документы PDF в формат Microsoft Word в PHP? Это может быть либо сценарий PHP, либо вызов исполняемого файла (Linux) (с помощью proc_open ()). Просто он должен быть относительно быстрым и создавать качественные документы Word (в формате 97/2000/2003).
Коммерческое программное обеспечение в порядке.






Openoffice имеет Расширение импорта PDF. Большая часть OpenOffice поддерживает сценарии, поэтому вы должны иметь возможность написать интерфейс командной строки для выполнения преобразования. На официальной вики UNO есть много Примеры.
Безусловно, самый простой способ - использовать phpLiveDocx. Он может загружать DOC, DOCX и RTF и сохранять в PDF. Его можно загрузить с http://www.phplivedocx.org/articles/brief-introduction-to-phplivedocx/. Файл для загрузки содержит большое количество примеров приложений, которые иллюстрируют все аспекты библиотеки PHP5. Лео
это делает противоположное тому, что они хотят!
Чтобы читать файлы PDF, вам необходимо установить пакет XPDF, который включает «pdftotext». После установки XPDF / pdftotext вы запускаете следующий оператор PHP, чтобы получить текст PDF:
content = shell_exec('/usr/local/bin/pdftotext '.$filename.' -');
После получения контента Скачайте версию сообщества PHPDOCX, попробуйте вот так.
<?php
require_once '../../classes/CreateDocx.inc';
$docx = new CreateDocx();
$textInfo = $content;
$paramsTextInfo = array(
'val' => 1,
'i' => 'single',
'sz' => 8
);
$docx->addText($textInfo, $paramsTextInfo);
$docx->createDocx('report.docx');
?>
Он потеряет форматирование. Просто конвертация не волнует, как форматирование тоже сохранить?
Другой вариант преобразования - Aspose.Words Cloud SDK для PHP. Это эффективный набор решений для обработки документов Word без каких-либо зависимостей от Microsoft Word. Это платный продукт, но бесплатный тарифный план предлагает 150 бесплатных вызовов API в месяц.
<?php
require_once('D:\xampp\htdocs\aspose-words-cloud-php-master\vendor\autoload.php');
try {
//TODO: Get your ClientID and ClientSecret at https://dashboard.aspose.cloud (free registration is required).
$ClientSecret = "xxxxxxxxxxxxxxxxxxxxxx";
$ClientID = "xxxx-xxxx-xxxx-xxxx-xxxxxxxxxx";
$wordsApi = new Aspose\Words\WordsApi($ClientID,$ClientSecret);
$format = "docx";
$file = ("C:/Temp/02_pages.pdf");
$request = new Aspose\Words\Model\Requests\ConvertDocumentRequest($file, $format,null);
$result = $wordsApi->ConvertDocument($request);
copy($result->getPathName(),"C:/Temp/02_pages.docx");
} catch (Exception $e) {
echo "Something went wrong: ", $e->getMessage(), "\n";
PHP_EOL;
}
?>
P.S: Я евангелист-разработчик в Aspose.
вы когда-нибудь получали решение?