URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 3400
[ Назад ]

Исходное сообщение
"Создание PDF с помощью perl"

Отправлено Сергей Петров , 21-Июн-05 12:39 
Есть небольшоа web based информационная система (apache, MySQL, perl). Появилась необходимость не только просмативать/добавлять/редактировать разнообразную информацию (это уже функционирует), но так же и красиво ее распечатывать.

Я склоняюсь к мысли, что лучше не распечатывать html страницу, а герерировать pdf и распечатывать его. К сожалению, тема создания pdf с помощью perl в рунете (да и в нете вообще) имхо не раскрыта.

На cpan я нашел  ( http://search.cpan.org/~ftassin/PDF-Create-0.01/lib/PDF/Crea... ) модуль PDF::Create, который вроде как позволяет создавать PDF с помощью perl. Создавать-то он создает, пример работает, но появилось сразу много вопросов:

1. вместо русского текста - крякозябры.
2. непонятно, как можно делать страницу не книжную, а альбомную
3. совершенно непонятно, как создавать таблицы.

Если не сложно, скажите, пожалуйста, может быть существуют какие-нибудь доки с примерами по моим вопросам, а то сколько я не искал - пока ничего не попадается.

Может быть я ошибся, нужно использовать какой-нибудь другой модуль, а не PDF::Create или вообще все нужно по другому правильно делать?

Заранее большое спасибо за любыве ваши советы!


Содержание

Сообщения в этом обсуждении
"Создание PDF с помощью perl"
Отправлено Асен Тотин , 28-Июн-05 00:56 
Привет,

В свое время бился с тем же.. из-за нехватки времени пришлось идти на простое, но работающее решение:

1. Скрипт забирает данный из массива (DB, etc.) и генерирует простой HTML файл (плюс подхода: вот вам и таблички)

2. Загружаем htmldoc, который умеет сделать из HTML-а приличный PDF - правда, без картинок, но все же...

Может, есть и более интеллигентное решиен, но задарма... :-)

WWell,


"Создание PDF с помощью perl"
Отправлено Сергей Петров , 28-Июн-05 17:42 
Привет! Спасибо за овтет, но я уже справился... =) использую PDF::API2 все нормально, только конечно я услал всюду руками указывать где что писать и при создании таблицы самому рисовать все рамочки... =) Но в итоге это работает.

"Создание PDF с помощью perl"
Отправлено Porco , 08-Июн-06 18:13 
Кстати, сейчас столкнулся с похожей проблемой, бился через PDF::FromPerl. Попробовал HTMLDoc, работает почти на ура, но увы, кириллические символы накладываются друг на друга, слова как бы сжимаются. Была такая проблема в свое время?

"Создание PDF с помощью perl"
Отправлено Асен Тотин , 08-Июн-06 18:30 
Привет,

Обычно дело в шрифтах... HTMLDOC пользуется шрифтами Type1. Попробуйте скачать вот эти и замените ими те, которые идут с дистрибутивом HTMLDOC - может, помогут вам:

http://bilbo.online.bg/~assen/Type1.tar

WWell,



"Создание PDF с помощью perl"
Отправлено Porco , 09-Июн-06 10:53 
Спасибо, но, к сожалению, именно эти шрифты и идут в комплекте с HTMLDoc, поэтому проблемы они не решают. Имеет ли смысл как-то вручную подредактировать метрики шрифтов?

"Создание PDF с помощью perl"
Отправлено Porco , 14-Июн-06 11:13 
Пока остановился на таком способе:
/usr/bin/htmldoc --charset cp-1251 --fontsize 11 --headingfont Times --top 80 --size A4 --footer . --webpage -t ps smth.html | /usr/bin/ps2pdf - smth.pdf
т.е. сначала htmldoc'ом в postscript, и далее ps2pdf - в pdf.
Осталась лишь одна проблема: символ "№" (знак номера) при этом теряется.