我需要文本来填充预定义区域。我不一定希望字体超出某个限制,但如果它不适合某个区域,我更希望它至少缩小。 (所以要在字体大小上有一个上限,也有一个下限,但将上限作为默认值并在需要时缩小。)
有什么简单的方法可以轻松完成这样的事情吗?
最佳答案
我最终使用了 fitText PdfSignatureAppearance 上的操作,包含在 iText 中.这使得它很容易完成。它可能并不完美,但总比什么都没有要好得多。
public static final float calculateFontSize(String fontName, float maxFontsize, float width, float height, String text) {
Font font = FontFactory.getFont(fontName);
Rectangle rectangle = new Rectangle(width, height);
System.err.println("Calculating font size for " + width + " and " + height);
return PdfSignatureAppearance.fitText(font, text, rectangle, maxFontsize, PdfWriter.RUN_DIRECTION_LTR);
}
关于java - 有什么简单的方法可以调整一段文字的字体大小以适应特定区域?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3458503/