簡體   English   中英

使用 XFINIUM.PDF 確定視覺對象在 PDF 中是否可見

[英]Determine whether visual object is visible in a PDF using XFINIUM.PDF

在使用 XFINIUM.PDF 提取 pdf 中可視對象的邊界時,我注意到一些可視對象實際上並不可見。
但是,我找不到任何可以用來確定它是否實際可見的屬性。
相反,我不關心不可見的文本,因為它位於圖像后面。

這是我的意思的一個例子。 出於某種原因,此 pdf 包含許多在頁面上實際上不可見的文本。 其中一部分是實際可見文本的副本,另一部分可能來自下一頁。 pdf 上的黑色矩形是右上角所選文本的邊界框。

從 XFINIUM.PDF Inspector 獲取的示例圖像

所有不可見文本都是 Form XObject 的子元素,但我不能忽略 XObject,因為頂部的圖形也是 XObject 的子元素,包括軸描述,我不想排除這些。

我注意到可見文本在 PdfGrayColorSpace(包括軸描述)中,而不可見文本在 PdfIccColorSpace 中,但我認為僅忽略所有 IccColorSpace 內容會在其他一些 pdf 中失敗。 我試過將它轉換為 RGB,但它轉換為 (0, 0, 0) 這顯然沒有幫助。
知道如何確定視覺對象是否可見嗎?

pdf 可在此處獲得,示例在第 9 頁。

您已經確定不可見文本位於 Form XObject 中。 它不可見的原因是它在該 XObject 的邊界之外:

339 0 obj
<<
  /Type /XObject
  /Subtype /Form
  /BBox [ 253.4743 617.9332 447.7891 726.5818 ]
  ...

如果將邊界框增加到整頁的尺寸

  ...
  /BBox [ 0 0 612 792 ]
  ...

第 9 頁看起來像這樣:

第 9 頁,帶有放大形式的 XObject 邊界

(顯然 XObject 包含頁面的舊版本。可能是圖形的原始文件丟失了,因此使用了早期版本的該頁面的副本。)


因此:

知道如何確定視覺對象是否可見嗎?

測試 Form XObject 內容是否在其BBox 內

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM