2014-01-21 83 views
0

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

回答

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)) 

尝试设置自我。 PhotoMaxSize不同的数量,直到你找到最佳尺寸,或者你可以使用wx.GetDisplaySize()并根据它来派生一个高度。

您也可能会发现本教程有帮助: