Crate cairo

Source
Expand description

§Cairo bindings

Rust bindings for Rust and wrappers for Cairo, part of gtk-rs-core.

screenshot

Cairo 1.14 is the lowest supported version for the underlying library.

§Minimum supported Rust version

Currently, the minimum supported Rust version is 1.80.0.

§Default-on features

  • use_glib - Use with glib

§Fileformat features

  • png - Reading and writing PNG images
  • pdf - Rendering PDF documents
  • svg - Rendering SVG documents
  • ps - Rendering PostScript documents

§Cairo API version features

  • v1_16 - Use Cairo 1.16 APIs

§Documentation

§X Window features

  • xcb - X Window System rendering using the XCB library
  • xlib - X Window System rendering using XLib

§Windows API features

  • win32-surface - Microsoft Windows surface support

§Documentation rustdoc attributes

  • docsrs - Used to keep system dependent items in documentation

§Using

We recommend using crates from crates.io, as demonstrated here.

If you want to track the bleeding edge, use the git dependency instead:

[dependencies]
cairo-rs = { git = "https://github.com/gtk-rs/gtk-rs-core.git", package = "cairo-rs" }

Avoid mixing versioned and git crates like this:

# This will not compile
[dependencies]
cairo-rs = "0.13"
cairo-rs = { git = "https://github.com/gtk-rs/gtk-rs-core.git", package = "cairo-rs" }

§See Also

§License

cairo is available under the MIT License, please refer to it.

Re-exports§

pub use cairo_sys as ffi;
pub use freetype;freetype
pub use glib;use_glib

Structs§

Context
Device
FontExtents
FontFace
GLib type: Shared boxed type with reference counted clone semantics.
FontOptions
GLib type: Boxed type with copy-on-clone semantics.
Glyph
Gradient
ImageSurface
ImageSurfaceData
ImageSurfaceDataOwned
LinearGradient
MappedImageSurface
Matrix
Mesh
Path
PathSegments
Pattern
PdfOutline
PdfSurfacepdf
PsSurfaceps
RadialGradient
RecordingSurface
Rectangle
RectangleInt
RectangleList
Region
ScaledFont
GLib type: Shared boxed type with reference counted clone semantics.
SolidPattern
StreamWithErrorpdf or svg or ps
Surface
SurfacePattern
SvgSurfacesvg
TextCluster
TextExtents
UserDataKey
UserFontFace
Version
XCBConnectionxcb
XCBDrawablexcb
XCBPixmapxcb
XCBRenderPictFormInfoxcb
XCBScreenxcb
XCBSurfacexcb
XCBVisualTypexcb

Enums§

Antialias
BorrowError
Content
DeviceType
Error
Extend
FillRule
Filter
FontSlant
FontType
FontWeight
Format
FtSynthesizefreetype
HintMetrics
HintStyle
IoError
LineCap
LineJoin
MeshCorner
Operator
PathDataType
PathSegment
PatternType
PdfMetadatapdf
PdfVersionpdf
PsLevelps
RegionOverlap
ScriptModescript
SubpixelOrder
SurfaceType
SvgUnitsvg and v1_16
SvgVersionsvg
TextClusterFlags

Constants§

CAIRO_TAG_DESTv1_16
CAIRO_TAG_LINKv1_16
MIME_TYPE_CCITT_FAXv1_16
MIME_TYPE_CCITT_FAX_PARAMSv1_16
MIME_TYPE_EPSv1_16
MIME_TYPE_EPS_PARAMSv1_16
MIME_TYPE_JBIG2
MIME_TYPE_JBIG2_GLOBAL
MIME_TYPE_JBIG2_GLOBAL_ID
MIME_TYPE_JP2
MIME_TYPE_JPEG
MIME_TYPE_PNG
MIME_TYPE_UNIQUE_ID
MIME_TYPE_URI
PDF_OUTLINE_ROOTv1_16

Functions§

debug_reset_static_data
Resets all static data within cairo to its original state (i.e. identical to the state at program invocation). For example, all caches within cairo will be flushed empty.
version_string

Type Aliases§

Result