Xpoint
   [напомнить пароль]

Как делать замену текста в PDF?

Метки: [без меток]
2008-03-03 18:42:42 [обр] Алексей Фёдоров(0/3)[досье]

Добрый день,

Есть PDF-шаблон с несколькими метками, которые нужно заменить на какие-либо актуальные значения. Например: «%user_name%» на «Ivan Ivanov». Сначала пытался использовать модуль PDF::API2, но выяснилось, что там нет замены текста. В Интернете нашел пример с модулем CAM::PDF:

my $pdf = CAM::PDF->new($input_pdf_file);  # existing document
my $page = $pdf->getPageContent(1);
# $page now holds the uncompressed page content as a string

# replace the text part
$page =~ s/%user_name%/$user_name/g;

$pdf->setPageContent(1, $page);
$pdf->cleanoutput($output_pdf_file);

Но вот беда, в моём случае на этапе замены текст «%user_name%» в перменной $page выглядит как «[(%)6(u)-4(s)-5(e)1(r)-1(_n)-4(ame)-5(%)] TJ»

Конечно, можно написать регулярное выражение, которое будет находить такие штуки и производить замену, но изобретать колесо не хочется. Проблема представляется достаточно типичной. Кто-нибудь производил замену текста в PDF? Есть ли нормальные решения? Типа:

$pdf->replace('%user_name%', 'Ivan Ivanov');

:)

Буду признателен за любые советы. Благодарю.

спустя 5 месяцев [обр] AB...(13/236)[досье]
Интерисуюсь ренением данной проблемы но только на будующее. Если Вы нашли решение, то подскажите какое.
Powered by POEM™ Engine Copyright © 2002-2005