[cairo] virtual surfaces and composition

Enrico Weigelt, metux IT consult enrico.weigelt at gr13.net
Wed Dec 9 10:04:59 PST 2015

On 09.12.2015 17:35, Henry (Yu) Song wrote:


> Since you mentioned your target platform is Mobile, I assume it supports EGL, GLES (2.0+ and X)

Unfortunately, no.
SoC's with *usable* (IOW: documented) GPUs are hard to get.
(and I wont waste a single second w/ proprietary BLOBs anymore)

> If that is the case, create a pixmap, 

You mean by cairo_image_surface_create() ?

By the way: an support for DRM bo surfaces yet ?

> you will be able to render small widgets into that texture directly.

Just to make idea clear: I want one surface per widget.

> If you are interested, we have a fork of cairo (open source as well) that has fast, commercial quality implementation.  Our cairo fork is based on 1.14.2 and has the following features that are missing in upstream cairo
> 1. Efficient GL surface with MSAA - upstream MSAA is not efficien
> 2. Supports GLES 3.0/GL 3.3+ with EGL, GLX, CGL and WGL - upstream WGL broke, and only supports GLES 2.0/GL 3.3-
> 3. Support Guassian blur
> 4. CSS style drop and inset shadow (only for CAIRO_OPERATOR_OVER at this moment), you can cache shadow for greater performance
> 5. Color emoji support
> 6. Support mixing cairo and raw GL/GLES calls
> 7. Accelerated and TRUE recording playback
> 8. Support Evas-GL ( you probably don't care about that).

Wouldn't help much for my usecase, as I dont have an GLES
(assuming soft-raster would just slow down everything ...)

Enrico Weigelt,
metux IT consulting

More information about the cairo mailing list