Подтвердить что ты не робот

Какой лучший модуль Perl использовать для создания .pdf с нуля?

Существует множество модулей CPAN, связанных с созданием и обработкой файлов .pdf, и я надеюсь, что это сообщество может сэкономить мне некоторое время, спускаясь по тупикам.

Я ищу для создания .pdf файлов с нуля, только с простым форматированием, например, полужирным/курсивом и левым/правым/центральным. Возможность использования файла шаблона была бы хорошей, с точки зрения MVC, но если лучший модуль не поддерживает это, я в порядке. Я хочу лучший модуль для моей узкой задачи.

Изменить: добавить добавление ограничения, что он должен быть модулем Perl, если не является чистым perl-решением. Спасибо за ответы до сих пор!

Обновление. Создание PDF - одна из трудных проблем, чтобы решить, как подойти. В дополнение к хорошим предложениям здесь, по-видимому, существует около 1000 различных способов решения этой проблемы, и зная, какое решение инвестировать ваше время в это реальная проблема. В процессе создания этого решения легко получить зависимости от внешних исполняемых файлов, поэтому я по-прежнему предпочитаю делать все на Perl.

Я пошел по пути использования PDF:: Create, но нашел это слишком ограничивающим. Вы должны указать координаты для размещения каждой строки текста, и нет встроенной концепции переноса текста... это все, что вам нужно сделать. Невозможное количество накладных расходов для моей задачи.

Теперь я использую PDF:: API2, который намного мощнее, чем PDF:: Создать, но все же требует, чтобы PDF был собран на тревожно низком уровне. К счастью, есть некоторая помощь в Интернете. См. Рик Меашам отличный учебник PDF:: API2 с сопроводительной подпрограммой text_block(), который, к счастью, тяжело поднимается на проблему переноса текста.

Если вы не видите другое обновление здесь, это решение, которое в конечном итоге работает для меня.

4b9b3361

Ответ 1

Я являюсь автором модуля CPAN CAM:: PDF, который определенно не лучший инструмент для этой работы - он предназначен для высокопроизводительное редактирование, а не создание.

Среди бесплатных библиотек создания PDF мне нравится PDF:: API2 лучший. Он имеет очень богатый набор функций и хорошую поддержку шифрования (вдохновленный CAM:: PDF, который я могу добавить!) Автор, Альфредо, управляет популярным списком адресов электронной почты. Люди иногда жалуются на документацию, но я нашел ее адекватной.

Среди коммерческих библиотек у меня были хорошие впечатления от pdflib.

Ответ 2

Приходят на ум три модуля для создания PDF (в определенном порядке)....

PDF:: Шаблон дает вам тот вариант шаблона, который вы, возможно, хотите? PDF:: Создать кажется более простым (по крайней мере, из документов) и может удовлетворять вашим требованиям "простого форматирования" более адекватно.

Однако, если вы хотите знать, что думает "сообщество", тогда только PDF:: API2 получает рейтинг на CPAN Ratings, входящий в 4 из 5 звезд общий результат.

Надеюсь, что это поможет.

PS. Отказ от ответственности: я не использовал ни один из этих модулей. В прошлом я всегда обращался за XML/XSLT/XSL-FO, используя Apache FOP, когда Perl использовался для создания исходных XML-данных. Это может быть излишним для чего-то маленького и не всегда идеальным, если вы хотите встроить PDF-конвертирование в свое приложение Perl.

ПФС. Поэтому я также буду смотреть на эти модули CPAN PDF в какой-то момент в ближайшее время!

Ответ 3

Должен ли он быть модулем Perl? Вы всегда можете использовать LaTeX и конвертировать его в PDF. Не совсем так же прямолинейно, но это еще один вариант.

Ответ 4

G'day Marcus,

Рад, что вы нашли учебник. Я много работаю в PDF:: API2, поэтому, если есть что-то, с чем я могу помочь, просто дайте мне знать.

Естественно, я рекомендую PDF:: API2!

Там парень Джей Ханна, который в настоящее время превращает текстовый блок в модуль для CPAN, который делает именно то, что вы хотите: жирный, курсивный и т.д. Если вы проверите список рассылки, вы увидите его сообщения вверху.

Ура!

Рик Мешам

Ответ 5

Да, сложно ответить, не зная точно, каковы ваши ограничения. Если pure-Perl не является необходимостью, я бы склонен к DocBook.

Исходная разметка, которую вы создадите, может быть очень простой XML; и для преобразования требуется только XSL-процессор и обход чего-то типа Apache FOP.