我在使用 PDFBox、java 库时遇到问题。我正在尝试处理 pdf 的结构,并在不丢失信息的情况下使用 PDPage.getContents() 而不是文本剥离器。
问题是,它显示的内容带有大量缩写和数字等,我在网站上找不到对此的解释。
示例:
BT
0.001 Tc
1.2045 TL
9.9626 0 0 9.9626 53.04069 571.90505 Tm
[(con)26.6(t)4.4(aining)-378.3(their)-378.2(a)-4.9(sso)-29(ciated)-358.9(eigen)26.6(v)59(alues)] TJ
ET
BT
0 Tc
0 TL
/F8 1 Tf
9.9626 0 0 9.9626 226.08209 571.90505 Tm
[(\012)] TJ
ET
BT
/F11 1 Tf
6.9738 0 0 6.9738 231.84 570.465 Tm
[(d)] TJ
ET
BT
0.0002 Tc
/F5 1 Tf
9.9626 0 0 9.9626 236.64 571.905 Tm
[(,)-372.5(i)0.9(n)-383.8(d)1.7(escending)-379.1(o)-5.7(r)-5.6(der)-5.6(.)-360.4(Beca)-5.7(use)-362.4(t)3.6(he)] TJ
ET
BT
-0.0008 Tc
1.2045 TL
9.9626 0 0 9.9626 53.04024 559.90505 Tm
[(co)17.4(v)57.2(a)-6.7(r)-6.6(i)-0.1(a)-6.7(n)0.7(ce)-267(ma)-6.7(tr)-6.6(ix)-280(is)-280.9(symmetr)-6.6(ic)-279.1(a)-6.7(n)0.7(d)-288.4(s)-3.8(emip)-23.4(o)-6.7(s)-3.8(itiv)21.1(e)-279.1(d)0.7(e“nite,)-289.1(t)2.6(he)-291.1(eig)-6.7(e)-2(n)24.8(v)21.1(ecto)-6.7(r)-6.6(s)-256.8(a)-6.7(r)-6.6(e)] TJ
ET
我能够翻译一些简单明显的内容(ET = 结束文本,BT = 开始文本),但基本上其他所有内容我都无法确定。 “音节”旁边的数字似乎与位置有关。
我特别感兴趣的是/F5、/F7、..;它们似乎与它们后面的文本格式有关,但仅仅知道这对一般的 pdf 分析并没有真正的帮助,我需要更多的信息。
我很乐意接受任何可能有用的信息。 预先感谢您:)
最佳答案
最好的起点是 PDF 32000 specification 中的附件 A(左侧)“运算符(operator)摘要” ,或者第645页。一开始我一直用它。
在您的示例中,“Tf”是“选择字体”。要了解字体是什么,请使用 PDFDebugger 在资源字典中查找名称,或将鼠标光标悬停在“Tf”上并等待字体名称显示。这是一个例子:
所以/TT2 是 Verdana、Bold 字体子集。
关于java - PDFBox获取缩写内容含义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39938292/