PDFBox:处理彩色背景上的白色文本

时间:2018-03-20 11:26:32

标签: java pdf pdfbox

我有一些棘手的PDF文件包含白色文本。为了不在文本剥离器中呈现它,我重写了ProcessTextPosition方法:

private static final int COLOR_WHITE = 16777215;    
@Override
protected void processTextPosition(TextPosition text) {
        PDGraphicsState gs = getGraphicsState();    
        PDColor nonStrokingColor = gs.getNonStrokingColor();
        try {
            if (nonStrokingColor.toRGB() != COLOR_WHITE) {
                super.processTextPosition(text);
            }
        } catch (IOException e) {
            logger.error("Could not convert stroking color to RGB", e);
        }
}

然而,有时我仍然需要渲染这样的白色文本 - 当它被放置在彩色背景上时。据我所知,这通常是一些填充矩形,但我不知道如何在ProcessTextPosition中处理它。有没有办法做到这一点? 文件示例:example。 这里"收入"在绿色矩形上是白色的,也是" Huron帐户"是蓝色矩形上的白色文字。

0 个答案:

没有答案