Creating a layered window on Linux X11 / Gtk

My question is how can I create and place layered windows on Linux using X11 or some tools like Gtk. When I say a layered window, I mean a window whose shape and transparency are determined by pixel data containing the rgb and alpha channels (transparency). See screenshot below.

I used them extensively on Windows using the fairly simple UpdateLayeredWindow API, and I am wondering how to do the same on Linux.

Thank.

Layered butterflies on Windows

+3
source share
3 answers

Initially, X11 only supports single-bit transparency (the SHAPE extension is required, but these days almost all X11 servers implement it). Use the functions XShapeCombineMaskor gtk_widget_shape_combine_mask.

, , , cairo. .

+2

X11,

  • 32 ( 32- , , ).
  • ARGB ( pixmap , pixmap). , ARGB (a = 128, r = 255, g = 255, b = 255 - a = 128, r = 128, g = 128, b = 128 - ). , XRender ARGB PutImage.
0

X11 : SHAPE ( X-) ARGB . , OpenGL ARGB :

fooobar.com/questions/71282/...

0

All Articles