Если у меня есть строка, как этотPaint.measureText: Является ли сумма частей равными целому?
String myString = "This is some text.";
Могу ли я получить те же длины, если я измеряю всю строку, как, когда я беру сумму измерения каждого символа?
На первый взгляд, я предположил, что ответ да, но тогда я читал this answer, сказанное measureText
добавляет AdvanceX
значение перед и после каждого измерения. Если это так, то это добавит тонкую ошибку в измерение суммированных длин (потому что между каждым символом будет двойное заполнение).
Я также знаю, что есть kerning с некоторыми шрифтами, которые изменяют, как близкие буквы помещаются вместе в зависимости от окружающего текста. Это заставляет меня все больше думать, что сумма частей будет отличаться от целого.
Изображение происходит от Wikipedia.
Это важно, потому что я создаю собственный пользовательский текстовый вид, который должен обрабатывать перенос строк. Если одно слово слишком длинное для строки, я измеряю каждый символ, пока не найду, где мне нужно сломаться. Однако я предположил, что суммирование меры отдельных ширин символов будет таким же, как измерение всей строки.
Я задал этот вопрос, чтобы ответить на него ниже, после того как закончил свои тесты.