Re: Печать бланков с изменяющимся содержимым
On Sat, Mar 10, 2007 at 04:00:46PM +0500, Sentinel wrote:
> Отсюда и вопрос: как лучше решить задачу генерации бланков с изменяющимся
> содержимым свободными средствами?
Если знаком с LaTeX, то можно на нём + скриптом. А если нет, то может
оказаться проще не разбираться с этим, а сделать пустой бланк в виде
картинки и вписывать текст ImageMagick-ом. Вот пример перлового скрипта,
который берёт два слова из STDIN и пишет их поверх картинки. (Входной
текст должен быть в UTF8.) Для Python-а, думаю, тоже должны аналогичные
библиотеки быть.
(Кстати, в LaTeX тоже может быть проще загрузить бланк как фоновый
рисунок, а не пытаться изобразить его LaTeX-овскими средствами.)
#!/usr/bin/perl
use Image::Magick;
use strict;
my $color = 'black';
my $font = '/usr/local/share/fonts/ttfonts/tahoma.ttf';
my $fontsize = 32;
my $blank='blank.png';
my $outfile='filled.png';
my $name = <>; chomp $name;
my $namex = 700; my $namey = 360;
my $surname = <>; chomp $surname;
my $surnamex = 1000; my $surnamey = 360;
my $p = Image::Magick->new;
$p->ReadImage($blank);
$p->Set(font=>$font);
$p->Set(pointsize=>$fontsize);
$p->Annotate(text=>$name, x=>$namex, y=>$namey,
fill=>$color, align=>'Left',
);
$p->Annotate(text=>$surname, x=>$surnamex, y=>$surnamey,
fill=>$color, align=>'Left',
);
$p->Write($outfile);
--
Оля
Reply to: