wxpython图像不适合屏幕

时间:2014-01-21 20:29:33

标签: wxpython

我的电脑最高分辨率为1366x768。我有一系列1024x768的大量图像。我把它们带到wxpython中的所有东西总是会从屏幕底部切掉。如何调整图像大小以使其完全适合屏幕...显然,宽度不是问题,只是图像的高度造成了麻烦。当gui的框架被创建时,我失去了大约1/4的图像。

1 个答案:

答案 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()并根据该高度导出高度。

您可能还会发现本教程很有用: