Ipelib
|
#include <ipecairopainter.h>
Inherits ipe::Painter.
Public Member Functions | |
CairoPainter (const Cascade *sheet, Fonts *fonts, cairo_t *cc, double zoom, bool pretty, bool filterBest) | |
virtual | ~CairoPainter () |
void | setDimmed (bool dim) |
void | executeStream (const PdfDict *stream, const PdfDict *resources) |
bool | type3Font () const |
Public Member Functions inherited from ipe::Painter | |
Painter (const Cascade *style) | |
virtual | ~Painter () |
void | setAttributeMap (const AttributeMap *map) |
Attribute | lookup (Kind kind, Attribute sym) const |
void | transform (const Matrix &m) |
void | untransform (TTransformations trans) |
void | translate (const Vector &v) |
void | push () |
void | pop () |
void | pushMatrix () |
void | popMatrix () |
void | newPath () |
void | moveTo (const Vector &v) |
void | lineTo (const Vector &v) |
void | curveTo (const Vector &v1, const Vector &v2, const Vector &v3) |
void | curveTo (const Bezier &bezier) |
void | rect (const Rect &re) |
void | drawEllipse () |
void | drawArc (const Arc &arc) |
void | closePath () |
void | drawPath (TPathMode mode) |
void | drawBitmap (Bitmap bitmap) |
void | drawText (const Text *text) |
void | drawSymbol (Attribute symbol) |
void | addClipPath () |
void | setStroke (Attribute color) |
void | setFill (Attribute color) |
void | setPen (Attribute pen) |
void | setDashStyle (Attribute dash) |
void | setLineCap (TLineCap cap) |
void | setLineJoin (TLineJoin join) |
void | setFillRule (TFillRule rule) |
void | setSymStroke (Attribute color) |
void | setSymFill (Attribute color) |
void | setSymPen (Attribute wid) |
void | setOpacity (Attribute opaq) |
void | setStrokeOpacity (Attribute opaq) |
void | setTiling (Attribute til) |
void | setGradient (Attribute grad) |
const Cascade * | cascade () const |
Color | stroke () const |
Color | fill () const |
const Matrix & | matrix () const |
Fixed | pen () const |
String | dashStyle () const |
void | dashStyle (std::vector< double > &dashes, double &offset) const |
TLineCap | lineCap () const |
TLineJoin | lineJoin () const |
TFillRule | fillRule () const |
Color | symStroke () const |
Color | symFill () const |
Fixed | symPen () const |
Fixed | opacity () const |
Fixed | strokeOpacity () const |
Attribute | tiling () const |
Attribute | gradient () const |
const State & | state () const |
void | setState (const State &state) |
Protected Member Functions | |
virtual void | doPush () override |
virtual void | doPop () override |
virtual void | doMoveTo (const Vector &v) override |
virtual void | doLineTo (const Vector &v) override |
virtual void | doCurveTo (const Vector &v1, const Vector &v2, const Vector &v3) override |
virtual void | doClosePath () override |
virtual void | doDrawArc (const Arc &arc) override |
virtual void | doAddClipPath () override |
virtual void | doDrawPath (TPathMode mode) override |
virtual void | doDrawBitmap (Bitmap bitmap) override |
virtual void | doDrawText (const Text *text) override |
Protected Member Functions inherited from ipe::Painter | |
virtual void | doNewPath () |
virtual void | doDrawSymbol (Attribute symbol) |
void | drawArcAsBezier (double alpha) |
Additional Inherited Members | |
Protected Attributes inherited from ipe::Painter | |
std::list< State > | iState |
std::list< Matrix > | iMatrix |
const Cascade * | iCascade |
const AttributeMap * | iAttributeMap |
int | iInPath |
Ipe Painter using Cairo and Freetype as a backend.
This painter draws to a Cairo surface.
CairoPainter::CairoPainter | ( | const Cascade * | sheet, |
Fonts * | fonts, | ||
cairo_t * | cc, | ||
double | zoom, | ||
bool | pretty, | ||
bool | filterBest | ||
) |
Construct a painter.
zoom one means 72 pixels per inch. Set pretty to true to avoid drawing text without Latex.
|
inlinevirtual |
|
inline |
Referenced by ipe::CanvasBase::drawObjects().
References ipe::Painter::matrix(), ipe::Painter::opacity(), and ipe::Fixed::toDouble().
Referenced by doDrawText(), ipe::PdfViewBase::refreshSurface(), and ipe::PdfThumbnail::render().
|
inline |
Referenced by ipe::CanvasBase::drawObjects().
|
overrideprotectedvirtual |
Perform graphics state push on output medium.
Reimplemented from ipe::Painter.
|
overrideprotectedvirtual |
Perform graphics state pop on output medium.
Reimplemented from ipe::Painter.
|
overrideprotectedvirtual |
Perform moveto operator.
The transformation matrix has already been applied.
Reimplemented from ipe::Painter.
References ipe::Vector::x, and ipe::Vector::y.
|
overrideprotectedvirtual |
Perform lineto operator.
The transformation matrix has already been applied.
Reimplemented from ipe::Painter.
References ipe::Vector::x, and ipe::Vector::y.
|
overrideprotectedvirtual |
Perform curveto operator.
The transformation matrix has already been applied.
Reimplemented from ipe::Painter.
References ipe::Vector::x, and ipe::Vector::y.
|
overrideprotectedvirtual |
Perform closepath operator.
Reimplemented from ipe::Painter.
|
overrideprotectedvirtual |
Draw an elliptic arc.
The default implementations calls drawArcAsBezier(). The transformation matrix has not yet been applied to arc.
Reimplemented from ipe::Painter.
References ipe::Arc::iAlpha, ipe::Arc::iBeta, ipe::Arc::iM, ipe::Arc::isEllipse(), and ipe::Painter::matrix().
|
overrideprotectedvirtual |
Add a clip path.
Reimplemented from ipe::Painter.
|
overrideprotectedvirtual |
Actually draw the path.
Reimplemented from ipe::Painter.
References ipe::Painter::cascade(), ipe::Painter::dashStyle(), ipe::EBevelJoin, ipe::EButtCap, ipe::EDefaultCap, ipe::EDefaultJoin, ipe::EEvenOddRule, ipe::EMiterJoin, ipe::Gradient::ERadial, ipe::ERoundCap, ipe::ERoundJoin, ipe::ESquareCap, ipe::EStrokedAndFilled, ipe::Painter::fill(), ipe::Painter::fillRule(), ipe::Cascade::findGradient(), ipe::Cascade::findTiling(), ipe::Painter::gradient(), ipe::Tiling::iAngle, ipe::Color::iBlue, ipe::Gradient::iExtend, ipe::Color::iGreen, ipe::Gradient::iMatrix, ipe::Gradient::iRadius, ipe::Color::iRed, ipe::Tiling::iStep, ipe::Gradient::iStops, ipe::Gradient::iType, ipe::Gradient::iV, ipe::Tiling::iWidth, ipe::Painter::lineCap(), ipe::Painter::lineJoin(), ipe::Painter::matrix(), ipe::Painter::opacity(), ipe::Painter::pen(), ipe::Painter::stroke(), ipe::Painter::strokeOpacity(), ipe::Painter::tiling(), ipe::Fixed::toDouble(), ipe::Vector::x, and ipe::Vector::y.
|
overrideprotectedvirtual |
Draw a bitmap.
Reimplemented from ipe::Painter.
References ipe::Buffer::data(), ipe::Bitmap::height(), ipe::Painter::matrix(), ipe::Painter::opacity(), ipe::Bitmap::pixelData(), ipe::Buffer::size(), and ipe::Bitmap::width().
|
overrideprotectedvirtual |
Draw a text object.
Reimplemented from ipe::Painter.
References ipe::Text::align(), executeStream(), ipe::String::find(), ipe::Text::getXForm(), ipe::Color::iBlue, ipe::Color::iGreen, ipe::Text::XForm::iName, ipe::Color::iRed, ipe::Text::XForm::iStretch, ipe::Text::XForm::iTranslation, ipe::String::left(), ipe::Painter::matrix(), ipe::Painter::opacity(), ipe::Fonts::screenFont(), ipe::String::size(), ipe::Painter::stroke(), ipe::Text::text(), ipe::Fixed::toDouble(), ipe::Text::totalHeight(), ipe::Painter::transform(), ipe::Painter::translate(), ipe::Matrix::translation(), ipe::Text::width(), ipe::Vector::x, ipe::Vector::y, ipe::String::z(), and ipe::Vector::ZERO.