我正在使用Perl的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-file已经完成,看起来应该是这样的。我遗漏了什么?
发布于 2014-02-04 17:28:52
您需要指定有效的字体。第二个示例的字体名无效。
如果你安装了PDF::API2,你可以尝试使用:'Helvetica‘作为字体名。
请检查您的HTML文件,它应该是相当简单(没有CSS或javascript)。
致以敬意,
https://stackoverflow.com/questions/21546082
复制相似问题