Использование PHP для создания PDF файла из простого текста и текста HTML

Возможный дубликат:
Преобразование HTML + CSS в PDF с помощью PHP?

У меня есть форма с 5 полями, две из которых - текстовые поля, расширенные с помощью tinyMCE, остальные - простые входы текста типа.

Мне нужно сгенерировать PDF с этого ввода. Я понимаю, что я могу использовать Zend_Pdf для создания PDF файла и включать простые текстовые данные. Но как, например, я могу включить маркированный список из полей tinyMCE?

Будет ли лучший способ создать HTML файл, а затем использовать, например, DOMPDF или HTML2PDF? В идеале я бы предпочел просто использовать структуру zend для создания документа, положения и вставки полей и сохранения.

Спасибо заранее.

Ответ 1

Дополнительная информация в Преобразование HTML + CSS в PDF с помощью PHP?.

По моему опыту, Prince XML был Rolls-Royce таких технологий так далеко и над любым из других он даже не смешно, Это дорого. Но у меня были всевозможные проблемы со всеми остальными.

Ответ 2

Некоторое время назад я попытался использовать программы конвертации HTML в PDF для преобразования... HTML в PDF, но в конце концов я отказался от этого подхода и просто создал PDF файлы непосредственно в коде. Я использую fpdf (http://www.fpdf.org/) в качестве базы и добавленный код поддержки для списков и сеток и т.д.

Ответ 3

Я использую Prince XML, упомянутый cletus. Результаты очень хорошие, даже с CSS-стиле html с поплавками и т.д. Это дорого, но он просто работает и экономит много времени.

Ответ 4

FPDF - очень старая библиотека для PHP4. В настоящее время он не будет работать даже сейчас. Я бы рекомендовал DOMPDF или TCPDF. Они оба предназначены для PHP5 + и могут до некоторой степени есть HTML или CSS.

Ответ 5

Вы можете преобразовать все это в HTML, а затем использовать openoffice или какой-нибудь другой инструмент (pandoc тоже очень изящно), чтобы конвертировать из HTML в PDF.

В качестве альтернативы вы можете посмотреть LiveDocx, в котором php-bindings. Это хостинг, но вы можете использовать его бесплатно.

Ответ 6

Я лично рекомендую приложение командной строки вместо любых php-библиотек.

Причины:

  • Библиотекам PHP требуется больше времени и памяти (кэш) для процесса преобразования

  • Им нужны только форматированные html-страницы, иначе через ошибки или предупреждение

  • Не поддерживается внешняя таблица стилей.

Инструмент командной строки:

If run your script on Linux server then I suggest command line tool.

Причины:

  • Они чрезвычайно быстрые по сравнению с библиотеками PHP.

  • Поддержка css.

  • Принять не хорошо отформатированный html.

Какой инструмент командной строки использовать?

  • wkhtmltopdf
  • HtmlToPdf
  • html2pdf

для получения дополнительной информации см. Преобразование HTML в PDF (не PDF в HTML) с использованием PHP