我正在使用Perl
s 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文件是完整的,看起来应该看起来像。我错过了什么?
答案 0 :(得分:0)
您需要指定有效字体。第二个示例具有无效的字体名称。
如果您安装了PDF :: API2,可以尝试使用:'Helvetica'作为fontname。
请检查你的HTML文件,它应该很简单(没有CSS或javascript)。
此致