2013-02-12 75 views
1

我有一個圖像在python中使用PIL繪製。PIL繪製圖像,然後在wxpython中顯示它

import Image 
import ImageDraw 
createCM(): 
    img = Image.new("RGB", (400,400), "white") 
    draw = ImageDraw.Draw(img) 

    coords = [(100,70), (220, 310), (200,200)] 
    dotSize = 2 

    for (x,y) in coords: 
     draw.rectangle([x,y,x+dotSize-1,y+dotSize-1], fill="black") 

想要我現在要做的就是在我的wxpython面板上顯示。

我開始喜歡這個

CMchart = createCM(self) 
self.vbox = wxBoxSizer(wx.VERTICAL) 
self.vbox.Add(CMchart, 1, wx.LEFT | wx.TOP | wx.GROW) 
self.vbox.AddSpacer(25) 
self.SetSizer(self.vbox) 
self.vbox.Fit(self) 

簡化版,這顯示任何東西。只是想知道我錯了

謝謝

回答

1

不知道什麼createcM做它是真的很難知道如何幫助你。但不足之處在於,要繪製圖像,需要從wx.Image加載數據,然後將其轉換爲wx.Bitmap,然後使用DeviceContext繪製它。通常,首先繪製一個wx.MemoryDC,當你完成所有的繪圖更新後,使用wx.PaintDC或wx.ClientDC繪製它。就拿它給你提供瞭如何從PIL載入圖像一個很好的例子來看看它

http://wiki.wxpython.org/WorkingWithImages#PIL_.28Python_Imaging_Library.29

+0

這是有幫助的歡呼聲 – 2013-02-13 13:18:28