私は、グラフを生成できる PyGTK アプリケーションに取り組んでいます。これはmatplotlibによって達成されました。クリップボードにコピー機能を追加するにはどうすればよいですか? 図をクリップボードにコピーするには?
質問する
3095 次
1 に答える
3
これはLinuxでそれを行います(画像をマウスでクリックするだけで、GIMPなどに貼り付ける準備ができたクリップボードにコピーされます):
import matplotlib.pyplot as plt
from matplotlib.backends.backend_gtk import FigureCanvasGTK as FigureCanvas
import gtk
import numpy as np
class W(gtk.Window):
def __init__(self):
gtk.Window.__init__(self)
img = np.random.uniform(0,1,(200,200))
fig = plt.Figure()
fig.gca().imshow(img)
self.image_canvas = FigureCanvas(fig)
self.image_canvas.connect('button_press_event', self.do_clip)
self.add(self.image_canvas)
self.show_all()
def do_clip(self, widget=None, event=None):
snap = self.image_canvas.get_snapshot()
pixbuf = gtk.gdk.pixbuf_get_from_drawable(None, snap,
snap.get_colormap(),0,0,0,0,
snap.get_size()[0], snap.get_size()[1])
clip = gtk.Clipboard()
clip.set_image(pixbuf)
w=W()
gtk.main()
于 2012-05-17T13:50:43.083 に答える