pdfbox提取颜色字体的PDF格式错误

时间:2013-07-17 11:16:41

标签: pdf text fonts colors pdfbox

大家好抱歉我的英语水平,但我不是英国/美国人。

我的问题是下一个:我尝试使用示例代码,在示例中发布在此网站(How to get font color using pdfbox)中,作者说代码已经尝试但是当我尝试它时显​​示我这个错误:

2013年7月17日下午1:05:28 org.apache.pdfbox.util.PDFStreamEngine processOperator 信息:不支持/禁用操作:BDC 2013年7月17日下午1:05:29 org.apache.pdfbox.util.PDFStreamEngine processOperator 信息:不支持/禁用的操作:EMC DeviceGray org.apache.pdfbox.pdmodel.graphics.color.PDColorState@481958 0.0

我正在提取内容的3个字母(RGB)的pdf:

R:涂成红色 G:涂成绿色 B:涂成黑色

有人可以解释我,因为这个错误告诉我如何从pdf中提取彩色文字?

感谢所有期货评论

1 个答案:

答案 0 :(得分:0)

这些日志输出仅为INFO级别,而不是错误:

jul 17, 2013 1:05:28 PM org.apache.pdfbox.util.PDFStreamEngine processOperator INFO: unsupported/disabled operation: BDC
jul 17, 2013 1:05:29 PM org.apache.pdfbox.util.PDFStreamEngine processOperator INFO: unsupported/disabled operation: EMC 

他们所说的只是在没有注册处理器的页面内容中遇到某些运营商(BDC,EMC)。但由于这些运营商只对分析标记内容感兴趣,因此可以忽略这些运营商的任务。

此后您输入的代码为

DeviceGray
org.apache.pdfbox.pdmodel.graphics.color.PDColorState@481958
0.0

至少第一行和最后一行匹配该代码:遇到DeviceGray灰色且灰色值为0的颜色,很可能是你的黑色 B 。 (可能是你在中间添加了一个额外的输出,例如graphicState.getStrokingColor()?)

因此,没有错误,一切正常。