Package: cairo

CEnum cairo:surface-type-t

Declaration

(cffi:defcenum surface-type-t
  :image
  :pdf
  :ps
  :xlib
  :xcb
  :glitz
  :quartz
  :win32
  :beos
  :directfb
  :svg
  :os2
  :win32-printing
  :quartz-image
  :script
  :qt
  :recording
  :vg
  :gl
  :drm
  :tee
  :xml
  :skia
  :subsurface
  :cogl)  

Values

:image
The surface is of type image.
:pdf
The surface is of type pdf.
:ps
The surface is of type ps.
:xlib
The surface is of type xlib.
:xcb
The surface is of type xcb.
:glitz
The surface is of type glitz. Deprecated 1.18: glitz support have been removed, this surface type will never be set by Cairo.
:quartz
The surface is of type quartz.
:win32
The surface is of type win32.
:beos
The surface is of type beos. Deprecated 1.18: beos support have been removed, this surface type will never be set by Cairo.
:directfb
The surface is of type directfb. Deprecated 1.18: directfb support have been removed, this surface type will never be set by Cairo.
:svg
The surface is of type svg.
:os2
The surface is of type os2. Deprecated 1.18: os2 support have been removed, this surface type will never be set by Cairo.
:win32-printing
The surface is a win32 printing surface.
:quartz-image
The surface is of type quartz_image.
:script
The surface is of type script.
:qt
The surface is of type Qt. Deprecated 1.18: Ot support have been removed, this surface type will never be set by Cairo.
:recording
The surface is of type recording.
:vg
The surface is a OpenVG surface. Deprecated 1.18: OpenVG support have been removed, this surface type will never be set by Cairo.
:gl
The surface is of type OpenGL. Deprecated 1.18: OpenGL support have been removed, this surface type will never be set by Cairo.
:drm
The surface is of type Direct Render Manager. Deprecated 1.18: DRM support have been removed, this surface type will never be set by Cairo.
:tee
The surface is of type 'tee' (a multiplexing surface).
:xml
The surface is of type XML (for debugging).
:skia
The surface is of type Skia. Deprecated 1.18: Skia support have been removed, this surface type will never be set by Cairo.
:subsurface
The surface is a subsurface created with the cairo:surface-create-for-rectangle function.
:cogl
This surface is of type Cogl. Deprecated 1.18: Cogl support have been removed, this surface type will never be set by Cairo.

Details

The cairo:surface-type-t enumeration is used to describe the type of a given surface. The surface types are also known as "backends" or "surface backends" within Cairo. The type of a surface is determined by the function used to create it, which will generally be of the form cairo:type-surface-create, though see the cairo:surface-create-similar function as well. The surface type can be queried with the cairo:surface-type function.

The various cairo:surface-t functions can be used with surfaces of any type, but some backends also provide type-specific functions that must only be called with a surface of the appropriate type. These functions have names that begin with cairo:type-surface such as the cairo:image-surface-width function.

The behavior of calling a type-specific function with a surface of the wrong type is undefined.

Notes

In the Lisp API support for the following surface types is currently available: :image, :pdf, :ps, :svg, :script, :recording, and :subsurface.
 

See also

2025-1-18