获取pdf页面上的现有保证金

时间:2013-08-19 19:51:28

标签: python c perl unix pdf

我需要在perl的pdf文件页面上获取现有边距(左,右,上,下),这是获取padf页面尺寸的代码。

!在/ 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 个答案:

答案 0 :(得分:2)

PDF文件与Word文档不同,您无法更改“边距”并使文本自行重排为新尺寸。它更像是已经格式化并在页面上布局的呈现的文档的图像快照(即TIFF文件)。因此,PDF中没有“边距”设置的概念。那时它是一个空白页面,上面放着一堆物体。恰好,大多数对象都包含在一个大框中,该框由页面布局时由边距定义。

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