Измерение ширины строки и шрифта

Я хочу измерить "наименьшую единицу" строки (которая отображается в JTextArea с некоторым шрифтом).

Это ширина одного символа + интервал после него (который зависит от следующего символа).

Например. Я хочу измерить расстояние в пикселях от начала символа A к началу символа Z в строке "AZ",

Как я могу это сделать? Я пытался использовать FontMetrics и измеряя ширину строки обоих символов вместе, а затем уменьшая ее на ширину второго, но это не сработало...

1 ответ

Решение

java.awt.Font имеет

public GlyphVector layoutGlyphVector(FontRenderContext frc,
                                     char[] text,
                                     int start,
                                     int limit,
                                     int flags) {

Тогда используйте public Point2D getGlyphPosition(int glyphIndex) метод GlyphVector и сравнить разницу X координаты для любой желаемой пары символов.

Другие вопросы по тегам