[ Version ( deprecated = true , deprecated_since = "4.6" ) ]
public void cairo_draw_from_gl (Context cr, Surface surface, int source, int source_type, int buffer_scale, int x, int y, int width, int height)
Warning: cairo_draw_from_gl is deprecated since 4.6.
The main way to not draw GL content in GTK.
The function is overly complex and produces broken output in various combinations of arguments. If you want to draw with GL textures in GTK, use [ctor@Gdk.GLTexture.new]; if you want to use that texture in Cairo, use [method@Gdk.Texture.download] to download the data into a Cairo image surface.
It takes a render buffer ID (
source_type == GL_RENDERBUFFER) or a texture id (
source_type == GL_TEXTURE) and draws it
cr with an OVER operation, respecting the current clip. The top left corner of the rectangle specified by
height will be drawn at the current (0,0) position of the `cairo_t`.
This will work for *all* `cairo_t`, as long as
surface is realized, but the fallback implementation that reads back the pixels
from the buffer may be used in the general case. In the case of direct drawing to a surface with no special effects applied to
it will however use a more efficient approach.
For GL_RENDERBUFFER the code will always fall back to software for buffers with alpha components, so make sure you use GL_TEXTURE if using alpha.
Calling this may change the current GL context.
a cairo context
The surface we're rendering for (not necessarily into)
The GL ID of the source buffer
The type of the
The scale-factor that the
The source x position in
The source y position in
The width of the region to draw
The height of the region to draw