文件示例为here
我想我需要一些来自 mkl 的帮助(在附件中有一些隐藏的()字符,这些字符是PDFTextStripper提取的。现在我不知道是什么让它变得不可见(例如请参阅第6列值 - 它们都在括号中:
Publix Liquors 1,600 2.5 1/1/2014 12/31/2018($ 24,000.00)($ 4,032.00)($ 28,032.00) BayCare Health Systems 3,200 5 7/30/2004 7/31/2018($ 51,200.00)($ 9,648.00)($ 60,848.00)在选择期8/11/2018之前无需更改租金
..............
你能否至少指出为什么他们在这种情况下隐藏 ? 提前谢谢!
答案 0 :(得分:2)
在这种情况下,您需要处理实际的透明度。
隐藏括号是由像
这样的指令块创建的q
/Alpha3 gs
0 0 0 rg
BT
0 Tr
/Font0 14.299999 Tf
1.0 0 0 -1.0 537.66486 195.42578 Tm
0 0 Td
<037F>
Tj
ET
Q
资源中的扩展图形状态 Alpha3 被声明为
14 0 obj
<<
/CA 0
/ca 0
>>
endobj
因此,/Alpha3 gs
将笔触和填充不透明度都设置为0,即使用填充或描边绘制的任何内容都是完全透明的。
在PDFBox PDFTextStripper
中,可以在processTextPosition
中从当前图形状态(getGraphicsState
)检索这些值,作为属性getAlphaConstant
和getNonStrokeAlphaConstant