BT Sözlüğü › Altyapı › ARGB visual

ARGB visual

Altyapı Svenska → Güncellendi: 2026-10-10

Dördüncü baytı alfa kanalı olan 32 bitlik X11 visual’ı; bir pencere piksel başına yarı saydam olabilir, yeter ki bunu umursayan bir compositor çalışıyor olsun.

X11 çekirdek protokolü saydamlıktan habersizdir. Visual, piksel değerlerinin renge nasıl dönüştüğünü tarif eder ve 24 bitte her bit kırmızı, yeşil ve maviye gider. XRender’ın eklediği, 32 bitlik bir değerin üst sekiz bitinin kapsama olarak okunduğu ARGB32 picture biçimiydi; sunucu o zamandan beri sıradan olanın yanında 32 derinliğinde bir TrueColor visual da sunar. Bu visual’la oluşturulan pencere bir alfa kanalı taşır, ama 2004’te Composite çizimi ayrı bir pixmap’e taşıyana kadar kimse bunu kullanmadı: o andan itibaren compositor alfayı okuyup pencereyi arkasındakiyle harmanlayabilir. Linux’taki gölgeler, solma efektleri ve yarı saydam terminallerin hepsi bu yoldan geçer.

Tuzaklar iyi bilinir. 32 bitlik bir pencere, visual’a ait kendi colormap’i ve açık bir border_pixel ile oluşturulmalıdır; yoksa sunucu BadMatch hatası verir ve nesiller boyu programcı bunu zor yoldan öğrenmiştir. Compositor çalışmıyorsa alfa tümüyle yok sayılır ve pencere tamponda ne varsa onu, genellikle siyahı gösterir. GTK 2005’te gdk_screen_get_rgba_colormap’i, Qt 2009’da WA_TranslucentBackground özniteliğini kazanarak doğru visual’ı otomatik seçti. Tüm pencereyi solgunlaştırmak isteyen biri bunların hepsini atlayıp xcompmgr ve Compiz’den kalma gayriresmî bir gelenek olan _NET_WM_WINDOW_OPACITY özelliğini kullanır; bu özelliği o günden beri her compositor destekledi, ama hiç EWMH’ye yazılmadı.

← Sözlüğe dön