PDF::Table Perl 模块无法在 Debian Jessie 上运行
PDF::Table Perl module not working on Debian Jessie
当我尝试在 Debian Jessie (Perl 5.20) 上使用 PDF::Table 模块时,我收到此消息:
Useless use of greediness modifier '?' in regex; marked by <-- HERE in m/(\S{20}? <-- HERE )(?=\S)/ at /usr/share/perl5/PDF/Table.pm line 370.
该模块在 Debian Wheezy(使用 Perl 5.014002)上运行良好,但 Perl 5.20 的升级似乎使其无法在 Debian Jessie 上使用。我在这个错误中发现的唯一 documentation 讨论了 Perl 升级,但没有提供任何解决方案来解决这个问题。我使用的脚本是 PDF::Table CPAN 上的主要示例:
use strict;
use warnings;
use PDF::API2;
use PDF::Table;
my $pdftable = new PDF::Table;
my $pdf = new PDF::API2(-file => "table_of_lorem.pdf");
my $page = $pdf->page;
# some data to layout
my $some_data =[
["1 Lorem ipsum dolor",
"Donec odio neque, faucibus vel",
"consequat quis, tincidunt vel, felis."],
["Nulla euismod sem eget neque.",
"Donec odio neque",
"Sed eu velit."],
#... and so on
];
my $left_edge_of_table = 50;
# build the table layout
$pdftable->table(
# required params
$pdf,
$page,
$some_data,
x => $left_edge_of_table,
w => 495,
start_y => 500,
start_h => 300,
# some optional params
next_y => 750,
next_h => 500,
padding => 5,
padding_right => 10,
background_color_odd => "gray",
background_color_even => "lightblue", #cell background color for even rows
);
$pdf->saveas("table_of_lorem.pdf");
print "Content-type: text/html\n\n";
print "Ok";
我的托管人只说我必须 "adapt my code"...你能帮我找到正确的方法吗?我只在使用 PDF::Table 时注意到这个错误,但是 Perl 5.20 上的另一个 Perl 模块是否有可能出现同样的问题?非常感谢您的帮助!
您看到的问题是一个警告。这很烦人,但可以忽略。该模块已修复 in version 0.9.10。您可以直接从 CPAN 安装它,而不是使用系统包,然后警告就会消失。
当我尝试在 Debian Jessie (Perl 5.20) 上使用 PDF::Table 模块时,我收到此消息:
Useless use of greediness modifier '?' in regex; marked by <-- HERE in m/(\S{20}? <-- HERE )(?=\S)/ at /usr/share/perl5/PDF/Table.pm line 370.
该模块在 Debian Wheezy(使用 Perl 5.014002)上运行良好,但 Perl 5.20 的升级似乎使其无法在 Debian Jessie 上使用。我在这个错误中发现的唯一 documentation 讨论了 Perl 升级,但没有提供任何解决方案来解决这个问题。我使用的脚本是 PDF::Table CPAN 上的主要示例:
use strict;
use warnings;
use PDF::API2;
use PDF::Table;
my $pdftable = new PDF::Table;
my $pdf = new PDF::API2(-file => "table_of_lorem.pdf");
my $page = $pdf->page;
# some data to layout
my $some_data =[
["1 Lorem ipsum dolor",
"Donec odio neque, faucibus vel",
"consequat quis, tincidunt vel, felis."],
["Nulla euismod sem eget neque.",
"Donec odio neque",
"Sed eu velit."],
#... and so on
];
my $left_edge_of_table = 50;
# build the table layout
$pdftable->table(
# required params
$pdf,
$page,
$some_data,
x => $left_edge_of_table,
w => 495,
start_y => 500,
start_h => 300,
# some optional params
next_y => 750,
next_h => 500,
padding => 5,
padding_right => 10,
background_color_odd => "gray",
background_color_even => "lightblue", #cell background color for even rows
);
$pdf->saveas("table_of_lorem.pdf");
print "Content-type: text/html\n\n";
print "Ok";
我的托管人只说我必须 "adapt my code"...你能帮我找到正确的方法吗?我只在使用 PDF::Table 时注意到这个错误,但是 Perl 5.20 上的另一个 Perl 模块是否有可能出现同样的问题?非常感谢您的帮助!
您看到的问题是一个警告。这很烦人,但可以忽略。该模块已修复 in version 0.9.10。您可以直接从 CPAN 安装它,而不是使用系统包,然后警告就会消失。