Class Pattern

A Pattern represents a source when drawing onto a Surface. There are different subtypes of Pattern, for different types of sources; for example, SolidPattern.fromRGB creates a pattern for a solid opaque color.

Other than various Pattern subclasses, some of the pattern types can be implicitly created using various Context.setSource functions; for example Context.setSourceRGB.

The C type of a pattern can be queried with getType(), although D polymorphism features also work.

Memory management of Pattern can be done with the dispose() method, see https://github.com/jpf91/cairoD/wiki/Memory-Management#3-RC-class

Inherits from

  • Object (base class)

Constructors

Name Description
this Create a Pattern from a existing cairo_pattern_t*. Pattern is a garbage collected class. It will call cairo_pattern_destroy when it gets collected by the GC or when dispose() is called.

Properties

Name Type Description
matrix [get, set] Matrix Convenience property
type [get] cairo_pattern_type_t Convenience property

Methods

Name Description
createFromNative The createFromNative method for the Pattern classes. See https://github.com/jpf91/cairoD/wiki/Memory-Management#createFromNative for more information.
filter Convenience property
getExtend Gets the current extend mode for a pattern. See Extend for details on the semantics of each extend strategy.
getFilter Gets the current filter for a pattern. See Filter for details on each filter.
getMatrix Returns the pattern's transformation matrix.
getType This function returns the C type of a pattern. See PatternType for available types.
setExtend Sets the mode to be used for drawing outside the area of a pattern. See Extend for details on the semantics of each extend strategy. The default extend mode is CAIRO_EXTEND_NONE for surface patterns and CAIRO_EXTEND_PAD for gradient patterns.
setFilter Sets the filter to be used for resizing when using this pattern. See Filter for details on each filter.
setMatrix Sets the pattern's transformation matrix to matrix. This matrix is a transformation from user space to pattern space.
checkError Method for use in subclasses. Calls cairo_pattern_status(nativePointer) and throws an exception if the status isn't CAIRO_STATUS_SUCCESS

Templates

Name Description
CairoCountedClass!(cairo_pattern_t*, "cairo_pattern_")

Note

This class uses the CairoCountedClass mixin, so all it's members are also available in Pattern classes, although they do not show up in the documentation because of a limitation in ddoc.

Authors

Johannes Pfau cairoD
Andrej Mitrovic cairoD
cairo team cairo

Copyright

License

cairoD wrapper/bindings Boost License 1.0
cairo LGPL 2.1 / MPL 1.1