Как получить ширину строки в пикселях? - PullRequest
10 голосов
/ 16 марта 2010

Я использую HyperTreeList от wxPython и хочу установить ширину столбца, точно равную длине самой большой строки в нем.

Для этого я хотел бы преобразовать размер строки питона в пиксели.

Например: если у нас есть строка типа

str = "python"
len(str) = 6

Как я могу преобразовать вышеуказанную длину / размер строки в пиксели?

Есть ли другой способ?

Ответы [ 2 ]

13 голосов
/ 16 марта 2010

Вам нужно будет сделать что-то как (см. Документацию для wxWidgets для получения дополнительной информации)

f = window.GetFont()
dc = wx.WindowDC(window)
dc.SetFont(f)
width, height = dc.GetTextExtent("Text to measure")
10 голосов
/ 16 марта 2010

Зависит от того, как вы печатаете текст.

Вас может заинтересовать PIL ImageDraw, который имеет метод textsize. Смотри http://effbot.org/imagingbook/imagedraw.htm

Обновление: это был ответ на оригинальный вопрос. Может показаться немного не по теме после обновления вопроса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...