gpt4 book ai didi

python - 如何使用 wxpython 在位图中绘制文本?

转载 作者:太空宇宙 更新时间:2023-11-03 13:53:30 25 4
gpt4 key购买 nike

我想在 wx.EmptyBitmap 中居中绘制一个数字。

我如何使用 wxpython 做到这一点?

提前致谢:)

import wx

app = None

class Size(wx.Frame):
def __init__(self, parent, id, title):
frame = wx.Frame.__init__(self, parent, id, title, size=(250, 200))
bmp = wx.EmptyBitmap(100, 100)
dc = wx.MemoryDC()
dc.SelectObject(bmp)
dc.DrawText("whatever", 50, 50)
dc.SelectObject(wx.NullBitmap)
wx.StaticBitmap(self, -1, bmp)
self.Show(True)


app = wx.App()
Size(None, -1, 'Size')
app.MainLoop()

这段代码只给我一个黑色的图像,我做错了什么?这里缺少什么..

最佳答案

在 wx.MemoryDC 中选择 bmp,在该 dc 上绘制任何内容,然后选择该位图,例如

import wx

app = None

class Size(wx.Frame):
def __init__(self, parent, id, title):
frame = wx.Frame.__init__(self, parent, id, title, size=(250, 200))
w, h = 100, 100
bmp = wx.EmptyBitmap(w, h)
dc = wx.MemoryDC()
dc.SelectObject(bmp)
dc.Clear()
text = "whatever"
tw, th = dc.GetTextExtent(text)
dc.DrawText(text, (w-tw)/2, (h-th)/2)
dc.SelectObject(wx.NullBitmap)
wx.StaticBitmap(self, -1, bmp)
self.Show(True)


app = wx.App()
app.MainLoop()

关于python - 如何使用 wxpython 在位图中绘制文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2583549/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com