使用 PDFBox 设置字符间距
Setting character spacing with PDFBox
我目前正在使用 Java 和 PDFBox 库即时创建一些 PDF。
我需要能够设置某些文本的字符 spacing/tracking,但似乎无法弄清楚。
看起来有一种方法可以这样做:http://ci.apache.org/projects/pdfbox/javadoc/index.html?org/apache/pdfbox/util/operator/SetCharSpacing.html
但我不太确定如何在这种情况下应用它。
cs.beginText();
cs.setFont( font, fontSize );
cs.setNonStrokingColor(color);
cs.moveTextPositionByAmount(position[0], position[1]);
cs.drawString(text);
cs.endText();
如有任何帮助,我们将不胜感激!谢谢
你需要用困难的方式来做,因为 PDPageContentStream 不支持 "Tc" 运算符 class:
cs.appendRawCommands("0.25 Tc\n");
您提到的 SetCharSpacing 方法用于解析现有的 PDF。
PS: 写入内容流后别忘了调用close!
PPS: setCharacterSpacing()
在 2.0.4 及更高版本中可用。
我目前正在使用 Java 和 PDFBox 库即时创建一些 PDF。
我需要能够设置某些文本的字符 spacing/tracking,但似乎无法弄清楚。
看起来有一种方法可以这样做:http://ci.apache.org/projects/pdfbox/javadoc/index.html?org/apache/pdfbox/util/operator/SetCharSpacing.html
但我不太确定如何在这种情况下应用它。
cs.beginText();
cs.setFont( font, fontSize );
cs.setNonStrokingColor(color);
cs.moveTextPositionByAmount(position[0], position[1]);
cs.drawString(text);
cs.endText();
如有任何帮助,我们将不胜感激!谢谢
你需要用困难的方式来做,因为 PDPageContentStream 不支持 "Tc" 运算符 class:
cs.appendRawCommands("0.25 Tc\n");
您提到的 SetCharSpacing 方法用于解析现有的 PDF。
PS: 写入内容流后别忘了调用close!
PPS: setCharacterSpacing()
在 2.0.4 及更高版本中可用。