Ответ 1
Вам нужно будет что-то как ( см. документацию wxWidgets для получения дополнительной информации)
f = window.GetFont()
dc = wx.WindowDC(window)
dc.SetFont(f)
width, height = dc.GetTextExtent("Text to measure")
Я использую wxPython HyperTreeList, и я хочу установить ширину столбца точно равной длине самой большой строки в ней.
Чтобы это сделать, я хотел бы преобразовать размер строки python в пиксели.
Например: если у нас есть строка типа
str = "python"
len(str) = 6
Как преобразовать указанную длину строки/размер в пиксели?
Есть ли другой способ?
Вам нужно будет что-то как ( см. документацию wxWidgets для получения дополнительной информации)
f = window.GetFont()
dc = wx.WindowDC(window)
dc.SetFont(f)
width, height = dc.GetTextExtent("Text to measure")
Это зависит от того, как вы печатаете текст.
Вас может заинтересовать PIL ImageDraw
, который имеет метод textsize
. См. http://effbot.org/imagingbook/imagedraw.htm
Обновление: это ответ на исходный вопрос. После обновления вопроса может показаться немного не по теме.