Я хочу, чтобы иметь возможность конвертировать PDF-файл в HTML-файл через PHP, но у меня проблемы.
Я нашел базовый способ сделать это, используя Saaspose , который позволяет конвертировать PDF в HTML-файлы. Однако есть некоторые проблемы с этим, такие как использование SVG, изображений, позиционирования, шрифтов и т. Д.
Все, что мне нужно, это возможность захватить текст из файла PHP и любых связанных с ним изображений, а затем отобразить его в линейном формате, а не форматировать с абсолютным позиционированием.
Я имею в виду, что если PDF выглядит так:
Я бы хотел преобразовать его в HTML-файл с одним столбцом. Если бы были изображения, я бы хотел, чтобы они тоже вернулись.
Возможно ли это в PHP? Я знаю, что могу просто захватить текст из файла PDF, но как насчет захвата изображений?
Другая проблема заключается в том, что я хочу, чтобы все было встроенным, поскольку оно обслуживается клиентом в одном файле. В настоящее время я могу сделать это с помощью моей настройки через некоторый код:
for ($i = 0; $i < $object_number; $i++) { $object = $html->find("object")->find("embed")->eq($i); $embed = file_get_contents("Output/OutputHtml/" . $object->attr("src")); array_push($converted_obj, $embed); array_push($original_obj, $object); } for ($i = 0; $i < $object_number; $i++){ pq($original_obj[$i])->replaceWith($converted_obj[$i]); }
Которая захватывает все SVG
файлы и отображает их встроенные. Изображения были бы проще для этого, поскольку я мог бы использовать base64
.
1) загрузите и распакуйте файл .exe в папку: http://sourceforge.net/projects/pdftohtml/
2) создайте файл .php и поместите этот код (предположим, что файл pdftohtml.exe находится внутри этой папки и исходный sample.pdf тоже):
<?php $source_pdf="sample.pdf"; $output_folder="MyFolder"; if (!file_exists($output_folder)) { mkdir($output_folder, 0777, true);} $a= passthru("pdftohtml $source_pdf $output_folder/new_file_name",$b); var_dump($a); ?>
3) введите MyFolder , и вы увидите преобразованные файлы (в зависимости от количества страниц ..)
ps я не знаю, но существует много коммерческих или пробных апис.
То, что вы, по сути, хотите сделать, – это оплатить файл PDF. Я не уверен, что это существует, и в лучшем случае это очень сложно сделать.
Можно было бы написать какой-то код, чтобы делать то, что вам нужно для вашего конкретного файла, но для этого в общем случае я считаю, что это невозможно.
Я написал статью здесь, которая объясняет, почему я считаю, что исправление PDF-файла является ошибочным: http://www.planetpdf.com/enterprise/article.asp?ContentID=PDF_Reflow_in_Microsoft_Word_2012_Is_it_any_good
Особый интерес представляет начало абзаца «Давайте используем газетную историю, чтобы проиллюстрировать проблему».
Вы можете посмотреть, какие IDR-решения (которые для прозрачности, где я работаю!) Могут предложить.
В настоящее время мы внедряем программное обеспечение PDF в HTML5 и PDF Conversion в облаке: http://www.idrsolutions.com/cloud-pdf-converter/
Что может быть лучше подходит вам, это извлечение PDF-текста и функции извлечения PDF-изображений JPedal. Вполне вероятно, что мы посмотрим, как это можно сделать и в облаке, если PDF в HTML5 будет хорошо.
Извлечение текста: http://www.idrsolutions.com/pdf-to-text-conversion/
Извлечение изображения: http://www.idrsolutions.com/extract-images-from-pdf/
То, что вы хотите добиться от графика, который вы опубликовали, – это фактически преобразование графического изображения в OCR. http://www.phpclasses.org/package/2874-PHP-Recognize-text-objects-in-graphical-images.html