我的电脑最高分辨率为1366x768。我有一系列1024x768的大量图像。我把它们带到wxpython中的所有东西总是会从屏幕底部切掉。如何调整图像大小以使其完全适合屏幕...显然,宽度不是问题,只是图像的高度造成了麻烦。当gui的框架被创建时,我失去了大约1/4的图像。
答案 0 :(得分:0)
我通常使用一些缩放代码,如下所示:
img = wx.Image(filepath, wx.BITMAP_TYPE_ANY)
# scale the image, preserving the aspect ratio
W = img.GetWidth()
H = img.GetHeight()
if W > H:
NewW = self.PhotoMaxSize
NewH = self.PhotoMaxSize * H / W
else:
NewH = self.PhotoMaxSize
NewW = self.PhotoMaxSize * W / H
img = img.Scale(NewW,NewH)
然后,一旦我适当缩放,我将它添加到wx.StaticBitmap:
self.imageCtrl = wx.StaticBitmap(self.panel, wx.ID_ANY,
wx.BitmapFromImage(img))
self.imageCtrl.SetBitmap(wx.BitmapFromImage(img))
尝试将 self.PhotoMaxSize 设置为各种金额,直到找到最佳尺寸,或者您可以使用wx.GetDisplaySize()并根据该高度导出高度。
您可能还会发现本教程很有用: