2010-11-17 30 views
1

我有這種要求合併兩個pdf文檔並在生成的pdf文檔中設置指定的邊距。有沒有辦法獲得當前頁面頁邊距形式PdfReader或PdfImportedPage?我希望通過這些測量來決定是否轉換或縮放輸入頁面。如何使用iText API獲取當前頁邊距

回答

4

就PDF格式而言,確實沒有這樣的事情。你有一堆邊界框,可能會或可能不會在給定的頁面上定義。唯一需要的框是媒體框:

媒體框:'頁面大小'。此PDF頁面應該打印的媒體大小。

裁切框:已完成頁面的大小。媒體和作物之間的任何差異都會在後期處理步驟中被切斷。默認爲媒體框。

藝術框:包含「頁面的有意義的內容」。默認爲裁剪框。

裝飾盒&出血盒:類似於裁剪盒,但是除非你碰巧是一個專業的印刷公司,像「額定速度」這樣的東西,否則就會出現差異。

除非你運用藝術盒(我會感到震驚),否則唯一真正的選擇是解析每個頁面的內容(使用com.itextpdf.text.pdf.parser中的類。* )並自己減少利潤。這很可能是容易出錯的。

OTOH,如果最初製作PDF的應用程序可能已將其佈局信息嵌入到PDF中,則在這種情況下,您需要了解他們如何在逐個應用程序(甚至是版本 - - 版本)的基礎上。

0

也許這個例子有助於:http://itextpdf.com/examples/iia.php?id=280
雖然在Java中,不知道你在什麼背景。

+0

謝謝,我試過這個例子,出於某種原因,我看到一個帶有表格和圖像的PDF文檔的NPE。我想知道這個TextMarginFinder是否可以用於各種PDF文檔。我還發現這個TextMarginFinder是iText API的新增功能。 – 2010-11-19 11:26:39