如何从Perl生成PDF表?
是否有任何perl模块可以在pdf中的指定位置绘制一个表,每个单元格中都有空内容的给定行和列?想到两个模块:如何从Perl生成PDF表?,perl,pdf,Perl,Pdf,是否有任何perl模块可以在pdf中的指定位置绘制一个表,每个单元格中都有空内容的给定行和列?想到两个模块: 我使用PDF::table生成了一个简单的表,如下所示: use PDF::API2; use PDF::Table; my $pdf = PDF::API2->new( -file => 'table.pdf' ); my $table = PDF::Table->new; my $page = $pdf->page; my $data =
我使用PDF::table生成了一个简单的表,如下所示:
use PDF::API2;
use PDF::Table;
my $pdf = PDF::API2->new( -file => 'table.pdf' );
my $table = PDF::Table->new;
my $page = $pdf->page;
my $data = [
[ 'A1', 'A2', 'A3' ],
[ 'B1', 'B2', 'B3' ],
[ 'C1', 'C2', 'C3' ],
];
$table->table( $pdf, $page, $data,
x => 50,
w => 495,
start_y => 750,
next_y => 700,
start_h => 300,
next_h => 500,
);
$pdf->save;
对于PDF::Report::Table,如下所示:
use PDF::Report;
use PDF::Report::Table;
my $pdf = PDF::Report->new( PageSize => 'A4', PageOrientation => 'Portrait' );
my $table = PDF::Report::Table->new( $pdf );
my $data = [
[ 'A1', 'A2', 'A3' ],
[ 'B1', 'B2', 'B3' ],
[ 'C1', 'C2', 'C3' ],
];
$pdf->openpage;
$pdf->setAddTextPos( 50, 50 );
$table->addTable( $data, 400 ); # 400 is table width
$pdf->saveAs( 'table.pdf' );
下面的解决方案非常有限。例如,您无法轻松地仅更改表格的内部单元格边框,甚至无法使单元格居中对齐。因此,您必须从头开始重新编写功能,似乎?
my$table=PDF::table->new
这就是PDF::Table文档所说的方法,但在最新版本中:$perl-e'使用PDF::Table$table=PDF::table->new'
警告:页面必须是PDF::API2::Page对象,但它似乎是:at-e第1行。错误:无法从传递的PDF对象设置页面,因为该对象无效!在-e第1行。
(顺便说一句,格式化帮助中说以4个空格开始代码,并以2个空格结束插入换行符是错误的。)@PhilGoetz-这是我在上面发布的一个错误。我刚刚测试了PDF::Table的版本,很可能是我在回答问题时使用的,它运行良好(版本0.02)。