2013-08-19 24 views
-1

我需要获得perl中pdf文件页面上的现有边距(左,右,上,下),以下是获取padf页面的维度的代码。获取PDF页面上的现有保证金

!在/ usr/bin中/ perl的

use strict; 
use warnings; 

use CAM::PDF; 

my $pdf = CAM::PDF->new('test2.pdf'); 

my $num_page=$pdf->numPages(); 
print "Total Pages : $num_page\n"; 

my ($x,$y,$width,$height)=$pdf->getPageDimensions(2); 
print "Dimension of PDF File : $width x $height px \n"; 

$width=sprintf("%.2f",$width/72); # PPI/DPI Conversion (72 px = 1 inch) 
$height=sprintf("%.2f",$height/72); 

print "Dimension of PDF File is : $width x $height inch \n" 
+1

请提出您的问题标题**短**问题描述(4-5个字),并在正文中详细解释您的问题**(使用[编辑]链接请)。 – Mat

回答

2

PDF文件是不喜欢一个Word文档,你不能改变“利润”,并有文字本身回流到新的大小。它更像是一个渲染的文档的图像快照(即TIFF文件),该文档已被格式化并放置在页面上。因此,在PDF中没有“边距”设置的概念。那时它是一个空白页面,其上放置了一堆物体。只是碰巧大多数的对象都包含在一个大的框中,这个框由页面布局时的页边距来定义。

您可以通过查看页面上每个对象的边框来近似边距,但是您必须忽略通常在“边距”之外的内容,例如页眉/页脚和页码,页边距笔记等

+0

谢谢吉姆,但我需要的是在文本从左,右,上,下开始前的空白大小。 –