# ipe::CairoPainter Class Reference
Ipe Cairo interface

Ipe Painter using Cairo and Freetype as a backend. More...

`#include <ipecairopainter.h>`

Inherits ipe::Painter.

List of all members.

## Public Member Functions

- CairoPainter (const Cascade *sheet, Fonts *fonts, cairo_t *cc, double zoom, bool pretty)
- virtual ~CairoPainter ()
- void setDimmed (bool dim)

## Protected Member Functions

- virtual void doPush ()
- virtual void doPop ()
- virtual void doMoveTo (const Vector &v)
- virtual void doLineTo (const Vector &v)
- virtual void doCurveTo (const Vector &v1, const Vector &v2, const Vector &v3)
- virtual void doClosePath ()
- virtual void doDrawArc (const Arc &arc)
- virtual void doAddClipPath ()
- virtual void doDrawPath (TPathMode mode)
- virtual void doDrawBitmap (Bitmap bitmap)
- virtual void doDrawText (const Text *text)

## Detailed Description

Ipe Painter using Cairo and Freetype as a backend.

This painter draws to a Cairo surface.

## Constructor & Destructor Documentation

CairoPainter::CairoPainter | ( | const Cascade * | sheet,
|  | Fonts * | fonts,
|  | cairo_t * | cc,
|  | double | zoom,
|  | bool | pretty
| ) |  |

Construct a painter.

zoom one means 72 pixels per inch. Set pretty to true to avoid drawing text without Latex.

virtual ipe::CairoPainter::~CairoPainter | ( |  | ) | `[inline, virtual]`

## Member Function Documentation

void ipe::CairoPainter::setDimmed | ( | bool | dim | ) | `[inline]`

void CairoPainter::doPush | ( |  | ) | `[protected, virtual]`

Perform graphics state push on output medium.

Reimplemented from ipe::Painter.

void CairoPainter::doPop | ( |  | ) | `[protected, virtual]`

Perform graphics state pop on output medium.

Reimplemented from ipe::Painter.

void CairoPainter::doMoveTo | ( | const Vector & | v | ) | `[protected, virtual]`

Perform moveto operator.

The transformation matrix has already been applied.

Reimplemented from ipe::Painter.

void CairoPainter::doLineTo | ( | const Vector & | v | ) | `[protected, virtual]`

Perform lineto operator.

The transformation matrix has already been applied.

Reimplemented from ipe::Painter.

void CairoPainter::doCurveTo | ( | const Vector & | v1,
|  | const Vector & | v2,
|  | const Vector & | v3
| ) |  | `[protected, virtual]`

Perform curveto operator.

The transformation matrix has already been applied.

Reimplemented from ipe::Painter.

void CairoPainter::doClosePath | ( |  | ) | `[protected, virtual]`

Perform closepath operator.

Reimplemented from ipe::Painter.

void CairoPainter::doDrawArc | ( | const Arc & | arc | ) | `[protected, virtual]`

Draw an elliptic arc.

The default implementations calls drawArcAsBezier(). The transformation matrix has not yet been applied to arc.

Reimplemented from ipe::Painter.

void CairoPainter::doAddClipPath | ( |  | ) | `[protected, virtual]`

Add a clip path.

Reimplemented from ipe::Painter.

void CairoPainter::doDrawPath | ( | TPathMode | mode | ) | `[protected, virtual]`

Actually draw the path.

Reimplemented from ipe::Painter.

void CairoPainter::doDrawBitmap | ( | Bitmap | bitmap | ) | `[protected, virtual]`

Draw a bitmap.

Reimplemented from ipe::Painter.

void CairoPainter::doDrawText | ( | const Text * | text | ) | `[protected, virtual]`

Draw a text object.

Reimplemented from ipe::Painter.

The documentation for this class was generated from the following files:

- ipecairopainter.h
- ipecairopainter.cpp