
Существуют
другие способы нанесения покрытия и гравировки пунктиром. По умолчанию для
рисования пикселов в этих примерах используется функция
GKK_CkPY, то есть пиксел источника
просто перезаписывает результирующий пиксел. Как показано ранее в этой главе в
табл. 11.2,
существуют
другие способы рисования пикселов. Комбинируя различные монохромные растровые
изображения с разнообразными функциями закрашивания, можно создавать
практически любое количество комбинаций.
1 1 п.„ лм
name=bookmark276>Функции, которые
устанавливают значения в GdkGC
Есть два способа вставки значений в GdkGC. Все предыдущие примеры используют вызов функции для
установки каждого индивидуального значения. В качестве альтернативы во время
создания графического контекста можно использовать структуру GdkGCValues для установки нескольких значений за один раз.
Следующий пример демонстрирует два различных метода.
1
/** setgc.c **/
2
!include <gnome.h>
3
4
gint eventDelete(GtkWidget *widget,
5
GdkEvent *event,gpointer
data);
6
gint eventDestroy(GtkWidget *widget,
7
GdkEvent *event,gpointer data);
8
gboolean eventDraw(GtkWidget *widget,
9
GdkEvent *event,gpointer
data);
10
static GdkGC *functionCreateGC(GdkWindow *window);