我正在使用以下方法将一些文本写入现有的PDF文件

        PDPage page = document.getPage(pgNo);
        PDFont font = PDType1Font.TIMES_ROMAN;
        PDPageContentStream contentStream = new PDPageContentStream(document, page, true, false);
        contentStream.beginText();
        contentStream.drawString("Helo World");
        contentStream.endText();
        contentStream.close();
        document.save(new File(target));
        document.close();


然后在文档中打印单词“ Hello World”。但是我需要使其不可见。如何更改上面的代码示例以使其不可见?

最佳答案

调用beginText之后,插入此行

contentStream.appendRawCommands("3 Tr ");


这实际上将文本呈现模式设置为RENDERING_MODE_NEITHER_FILL_NOR_STROKE_TEXT,这将使文本不可见。

http://pdfbox.apache.org/docs/1.8.6/javadocs/org/apache/pdfbox/pdmodel/text/PDTextState.html#RENDERING_MODE_NEITHER_FILL_NOR_STROKE_TEXT

10-06 05:49