我正在从图像文件列表中创建一个pdf,我想知道是否可以创建我的pdf的每个页面,使其与我当前添加的任何图像的大小相同 - 所以它们都适合而且没有更大的那些被裁剪或其他什么。
目前我正在创建这样的网页:my $page = $pdf->page();
我也有特定图像的对象。如果有人可以将其标记为PDF :: API2,那就太棒了。
答案 0 :(得分:2)
我想您要查看$pdf->mediabox()
,$pdf->cropbox()
,$pdf->bleedbox()
和$pdf->trimbox()
。
你可能想找到PDF规范来确定它们是如何工作的。
答案 1 :(得分:2)
你是否真的想在屏幕上观看?如果打印尺寸无关紧要,您可以这样做:
use PDF::API2;
my $pdf = PDF::API2->new();
foreach my $filename (@list_of_jpeg_locations) {
my $image = $pdf->image_jpeg($filename);
my $width = $image->width();
my $height = $image->height();
# Set the page size to equal the image size
my $page = $pdf->page();
$page->mediabox($width, $height);
# Place the image in the bottom corner of the page
my $gfx = $page->gfx();
$gfx->image($image, 0, 0);
}
$pdf->saveas('/path/to/file.pdf');
如果需要,您可以调整此代码以缩放图像以适合特定的打印页面大小。