2008-11-04 2 views

ответ

53

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

Для WinForms: Graphics.MeasureString

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

+18

В WPF вы должны использовать FormattedText, http://msdn.microsoft.com/en-us/library/system.windows.media.formattedtext.aspx. – 2008-11-04 22:39:30

+0

Как бы вы это делали в ASP.NET? – Shimmy 2012-12-24 22:58:07

+3

@Shimmy: Ну, в ASP.NET он будет полностью зависеть от того, что делает браузер. Это действительно не та вещь, которую вы пытаетесь сделать в веб-приложении - вместо этого вы должны использовать CSS для управления форматированием. – 2012-12-24 22:58:52

9

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

61

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

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

1

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

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

properties available

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

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