我需要使用PDFBOX(java)以正确的对齐方式绘制文本。
我目前正在使用ContentStream.drawString将文本绘制到pdf。我没有使用等宽字体,因此字符的宽度各不相同。
有任何想法吗?
最佳答案
简单的解决方案!
text_width = (myFont.getStringWidth(myString) / 1000.0f) * fontSize;
contentStream.moveTextPositionByAmount(-text_width, 0);
contentStream.drawString(myString);
contentStream.moveTextPositionByAmount(text_width, 0);
其中myFont =您使用的字体,fontSize是字体的大小,myString是您要绘制的文本行。