2013-08-19 31 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

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