Я использую Perl
s PDF::FromHTML
для создания PDF-файла. Мой код выглядит следующим образом:PDF :: FromHTML создает пустой PDF
open HTML, ">", "file.html";
...
close HTML;
chmod(0777, "file.html");
my $pdf = PDF::FromHTML->new(encoding => 'utf-8');
$pdf->load_file("file.html") or die $!;
$pdf->convert(
Font => 'Arial',
LineHeight => 10,
Landscape => 1
);
$pdf->write_file("file.pdf") or die $!;
Поскольку я имел трудности, создавая реальную PDF-файл в самом начале, я теперь точно следуя синопсис на CPAN, который
my $pdf = PDF::FromHTML->new(encoding => 'utf-8');
# Loading from a file:
$pdf->load_file('source.html');
# Perform the actual conversion:
$pdf->convert(
# With PDF::API2, font names such as 'traditional' also works
Font => 'font.ttf',
LineHeight => 10,
Landscape => 1,
);
# Write to a file:
$pdf->write_file('target.pdf');
Однако это создает PDF-файл в нужном месте, но он состоит только из белой страницы. HTML-файл завершен и выглядит так, как должно выглядеть. Что мне не хватает?
'Arial' кажется быть допустимым шрифтом, так как с некорректными шрифтами скрипта умирающих с ошибкой' запрошенного шрифтом «Calibri» не installed'. HTML-файл очень прост, просто небольшая таблица с некоторыми ссылками и ссылка на 'css'-файл внутри головы. – Vince
Вы пытались использовать html2pdf.pl http://search.cpan.org/~audreyt/PDF-FromHTML-0.31/script/html2pdf.pl? – user1126070
Нет, у меня нет, и я не думаю, что это полезно, так как код в скрипте в основном такой же, как и мой код. – Vince