Как узнать, какой буквы нет в шрифте?
Вы можете проверить, есть ли у шрифта глиф для данного символа, используя метод containsGlyph
.Однако этот метод не пытается определить, соответствуют ли инструкции рисования для этого символа в шрифте тому или иному символу.
Программа шрифтов ArtScript.ttf, которой вы поделились , делает содержат глиф для буквы «а», хотя этот глиф не содержит инструкций для рисования.Таким образом, PdfFont
правильно выводит true
при запросе
System.out.println(font.containsGlyph('a'));
Я фактически удалил этот глиф из вашей программы шрифтов здесь .Для этого шрифта эта строка кода выводит false
.
В комментарии вы сказали
Я понимаю, что даже если нет буквы, есть пустая область с границами,но можно ли как-то определить эту область как пустую или нет?
Используя редактор шрифтов, вы можете фактически удалить глиф, например, в FontForge, используя "cut" или "detach and remove glyphs" какЯ сделал выше.