Есть небольшоа 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 или вообще все нужно по другому правильно делать?
Заранее большое спасибо за любыве ваши советы!
Привет,В свое время бился с тем же.. из-за нехватки времени пришлось идти на простое, но работающее решение:
1. Скрипт забирает данный из массива (DB, etc.) и генерирует простой HTML файл (плюс подхода: вот вам и таблички)
2. Загружаем htmldoc, который умеет сделать из HTML-а приличный PDF - правда, без картинок, но все же...
Может, есть и более интеллигентное решиен, но задарма... :-)
WWell,
Привет! Спасибо за овтет, но я уже справился... =) использую PDF::API2 все нормально, только конечно я услал всюду руками указывать где что писать и при создании таблицы самому рисовать все рамочки... =) Но в итоге это работает.
Кстати, сейчас столкнулся с похожей проблемой, бился через PDF::FromPerl. Попробовал HTMLDoc, работает почти на ура, но увы, кириллические символы накладываются друг на друга, слова как бы сжимаются. Была такая проблема в свое время?
Привет,Обычно дело в шрифтах... HTMLDOC пользуется шрифтами Type1. Попробуйте скачать вот эти и замените ими те, которые идут с дистрибутивом HTMLDOC - может, помогут вам:
http://bilbo.online.bg/~assen/Type1.tar
WWell,
Спасибо, но, к сожалению, именно эти шрифты и идут в комплекте с HTMLDoc, поэтому проблемы они не решают. Имеет ли смысл как-то вручную подредактировать метрики шрифтов?
Пока остановился на таком способе:
/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.
Осталась лишь одна проблема: символ "№" (знак номера) при этом теряется.