Pixbuf перекрытие / слияние - PullRequest
       50

Pixbuf перекрытие / слияние

1 голос
/ 25 сентября 2011

Есть ли способ перекрывать (но не перезаписывать) два gtk.gdk.Pixbuf в gtk.IconView?

Например, у меня есть ячейка с этим изображением pixbuf: http://www.pirates -caraibes.com / media / zone / AnimMer.gif

Я хочу добавить это изображение: http://www.pirates -caraibes.com / media / objet / plage-coin-test12.gif в ячейку на предыдущем изображении (для отображения предыдущего изображение по прозрачности).

Как я могу это сделать?

Спасибо

Редактировать: Я видел метод gtk.gdk.Pixbuf.composite, но у него нет аргумента src, как у функции gdk_pixbuf_composite() C (http://developer.gnome.org/gdk-pixbuf/unstable//gdk-pixbuf-Scaling.html#gdk-pixbuf-composite)

Ответы [ 2 ]

0 голосов
/ 31 октября 2011

Как я упоминал выше (в комментарии), я наконец нашел ответ в PyGTK FAQ .

0 голосов
/ 27 сентября 2011

Вы можете сделать это с помощью старого API рисования GDK, но он исчез в GTK 3. Для обоих GTK 2 и 3 работает использование API-интерфейса cairo.

http://developer.gnome.org/gdk/stable/gdk-Cairo-Interaction.html

http://cairographics.org/samples/

То, что добавляет прозрачность, называется «альфа-каналом», который стоит рядом с каналами RGB. Это означает, что вам нужно убедиться, что вы рисуете на поверхность ARGB cairo.

...