2013-05-30 3 views
0

У меня есть область рисования GTK, и я хочу, чтобы в качестве фона для нее отображалось изображение, в то время как над ним можно рисовать другие вещи.GTK выделяемая область прозрачный цвет фона

Моя первая попытка заключалась в том, что я просто снимал изображение, помещал его в растровое изображение и рисовал его, прежде чем рисовать другие объекты. Это привело к тому, что фоны объектов полностью покрывали фоновое изображение.

Теперь я думаю, мне нужно изменить изображение gtk.gdk.GC pixmap объекта, чтобы цвет фона был прозрачным. Здесь я испытываю проблемы. Я не знаю, как установить альфа-версию gtk.gdk.Color.

Как установить альфа gtk.gdk.Color? (или любой другой способ сделать цвет прозрачным)

Если эта идея кажется маловероятной для работы, пожалуйста, дайте мне знать. Я довольно новичок в GTK.

+0

Исправлено: то, что происходило, были объектами верхнего уровня, которые я использовал, заполняли всю область рисования пробелом, хотя сами объекты довольно малы. Чтобы исправить это, я использовал свою первую попытку и вместо того, чтобы рисовать фоновое изображение на области рисования, я нарисовал на самой pixmap. – user2327814

ответ

2

Я не знаю, если это может помочь вам, но мой лучший совет заключается в использовании Cairo: с открытым исходным кодом 2D-графики библиотека, обеспечивающая поддержку кросс-платформенной передовые 2D рисования. Это также самый простой способ рисовать 2D-графику, я думаю, (я пробовал GDK в прошлом, и я думал, что это было бы намного сложнее использовать).

В python вы можете использовать определенные привязки Pycairo. Here вы можете узнать больше об этом, с помощью простых учебных пособий.

По вашей конкретной проблеме см. Дополнительную информацию о images и trasparency.

Основная функция для диапозитива является:

Большого резюме, чтобы узнать, как управлять изображениями и прозрачность в примере отраженного изображении на той же странице, что и раньше, о непрозрачности.

 Смежные вопросы

  • Нет связанных вопросов^_^