1

PythonでPILを使用して描画した画像があります。

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)

これでは何も表示されません。どこが間違っているのか知りたいだけ

ありがとうございました

4

1 に答える 1

1

createcM が何をするかを知らなければ、あなたを助ける方法を知ることは本当に難しいです。しかし、要するに、イメージを描画するには、wx.Image からデータをロードして、それを wx.Bitmap に変換し、DeviceContext を使用して描画します。通常、まず最初に wx.MemoryDC を描画し、すべての描画の更新が完了したら、wx.PaintDC または wx.ClientDC を使用して描画します。それを見てください

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

これは、PIL から画像を読み込む方法の良い例です。

于 2013-02-12T15:53:28.380 に答える