我正在使用wxPython的HyperTreeList,我想将列宽设置为完全等于其中最大字符串的长度。
为了实现这一点,我想将python字符串大小转换为像素。
例如:如果我们有一个像
这样的字符串str = "python"
len(str) = 6
如何将上述字符串长度/大小转换为像素?
还有其他办法吗?
答案 0 :(得分:13)
您必须something like(有关详细信息,请参阅documentation of wxWidgets)
f = window.GetFont()
dc = wx.WindowDC(window)
dc.SetFont(f)
width, height = dc.GetTextExtent("Text to measure")
答案 1 :(得分:10)
这取决于您打印文本的方式。
您可能会对PIL ImageDraw
感兴趣的textsize
方法。见http://effbot.org/imagingbook/imagedraw.htm
更新:这是回答原始问题。问题更新后,它可能看起来有些偏离主题。