2010-10-21 3 views
2

Я выяснил, как получить форму текстовой строки, прежде чем рисовать ее на этом экране в Java, например, используя класс TextLayout [1]. Однако я мог найти способ получить форму всего текста. Мне нужна форма для каждого символа в тексте. Кто-нибудь знает элегантный способ получения формы для персонажа?Манипулировать форму каждого символа в строке с использованием Java-графики

[1] http://download.oracle.com/javase/tutorial/2d/advanced/transforming.html

+0

шрифты также могут быть трансформированы с использованием font.deriveFont (AffineTransformation в), так что я мог бы использовать AttributedString и прикрепить другой шрифт каждый символ .. не уверен, что это хорошая идея? – Nils

ответ

2

Получить GlyphVector объект из Font. Возвращенный GlyphVector будет содержать последовательность глифов, которые используются для представления указанного текста.

После того, как у вас есть GlyphVector, вы можете получить подробные показатели или ограничительную форму для каждого отдельного глифа через методы getGlyphMetrics() и getGlyphOutline() соответственно.

(Примечание: Метод getGlyphCharIndex() может быть использован, чтобы обнаружить глиф для отображения символов.)

+0

Да, но это дает мне все глифы, из которых состоят персонажи сразу, без указания того, какой символ принадлежит персонажу .. или я что-то пропустил? – Nils

+1

Вы можете использовать метод 'getGlyphCharIndex()', чтобы найти глиф для сопоставления символов. – Grodriguez

+0

Спасибо, я пропустил это! – Nils

Смежные вопросы