2011-11-28 83 views
0

我正在用PHP直接從PDF文件中提取低級圖像,因爲GhostScript太慢了,而且我做得很好。但問題是,我無法弄清楚它說圖像屬於哪個頁面的地方。我從PDF中獲取圖像沒有問題,但我無法弄清楚它們的順序。如何知道PDF規範中圖像屬於哪個頁面?

在PDF數據中的哪個位置表示圖像應顯示在哪個頁面上?

+0

如果你可以分享你在做的細節,我們可以幫助 – aWebDeveloper

+0

我從PDF中提取圖像...用記事本+ +打開PDF,你會看到它的樣子。 – Alasdair

+0

搜索分頁符,但你做什麼可能是不對的 – aWebDeveloper

回答

2

圖像作爲獨立對象存儲在PDF中。它們通過頁面的資源字典XObject子字典從頁面引用。關係是頁面 - >資源 - >圖像,所以爲了知道圖像屬於哪個頁面,您必須掃描所有頁面的所有資源字典,並查看您的圖像出現在哪些資源字典中。圖像可以從多個資源字典中引用。這是非常低級別的PDF操作,我不知道你的代碼工作水平有多低。

+0

明白了。因此,頁面對象引用資源對象,該對象引用引用圖像的xobjects對象。你能否現在回答我這個問題:它在哪裏說圖像放置在頁面上的什麼位置? – Alasdair

+1

爲了瞭解圖像在頁面上的位置,您必須解析並執行頁面內容流。該圖像使用Do操作符繪製在頁面上,其操作數是資源字典中的圖像標識。頁面上圖像的位置和大小取決於執行Do操作符時的當前轉換矩陣。 – iPDFdev

+1

還有'內聯'圖像,其中圖像數據直接存儲在頁面內容流中而不是XObject。只是讓你意識到並非所有的圖像都是XObject! – KenS

相關問題