Подтвердить что ты не робот

Вычислить ширину отображения строки в С#?

На Java-версию этого вопроса был дан ответ, и, ну, я не знаю, как это сделать в .net.

Итак, как вы вычисляете ширину отображения строки в С#/.net?

4b9b3361

Ответ 1

У вас такая же проблема в этом вопросе, как и в Java-вопросе - недостаточно информации! Он будет отличаться между WinForms и WPF.

Для WinForms: Graphics.MeasureString

Для WPF я не уверен, но я подозреваю, что это будет зависеть от того, как вы рисуете текст...

Ответ 2

Альтернативой для Windows Forms является статический метод TextRenderer.MeasureText.

Хотя он ограничен целыми размерами, этот (в тандеме с TextRenderer.DrawText) отображает более точный и значительно более качественный текст ClearType, чем дуэт Graphics.MeasureString/DrawString.

Ответ 3

В WPF вы должны использовать FormattedText.

Ответ 4

Graphics.MeasureString, но это немного дрябло, как объясняется и улучшается; здесь

Ответ 6

Graphics.MeasureString([текст для измерения], [шрифт используется для измерения текста]);

Полученный объект предоставит следующее:

properties available

Также доступны другие перегрузки MeasureString.