因此,我正在创建一个极其可变的接口,即使字体几乎也必须是可变的(请相信我,我需要它,因此它可以在每种分辨率下使用)
但是很明显,如果有文本,则有多行,各行之间有空格.
经过一番尝试后,我发现字体之间的间隔不是静态的(例如2个像素),因此它必须是完整字体的百分比(例如,百分比为25%,字体大小为40像素) ,则间距为10像素)或某种公式.
经过一些搜索工作后,我找不到有关字体间距的任何信息,因此我认为它是Java特定的.
我对此表示怀疑.由于Java没有可以更改此间距的方法(据我所知).
所以我的问题是,有什么办法可以更改或了解两行Times New Roman文本之间的间距吗?
最大的问题是我需要知道这一点来创建字体…
如果需要公式:
fontSize =(myTextArea.getHeight()-([fontAscend] [fontDescent])* 21)/ 22
附言我正在使用JTextArea,但不想使用JEditorPane
解决方法:
也许这就是您所追求的?
myTextArea.getFontMetrics().getHeight()
getFontMetrics是一个method on JComponent,它为您提供一个具有getHeight()
method的FontMetrics对象.