Inkscape
Vector Graphics Editor
|
Builds the inner SVG representation using libpoppler from the calls of PdfParser. More...
#include <svg-builder.h>
Public Member Functions | |
SvgBuilder (SPDocument *document, gchar *docname, XRef *xref) | |
SvgBuilder (SvgBuilder *parent, Inkscape::XML::Node *root) | |
virtual | ~SvgBuilder () |
void | setDocumentSize (double width, double height) |
void | setMargins (const Geom::Rect &page, const Geom::Rect &margins, const Geom::Rect &bleed) |
Calculate the page margin size based on the pdf settings. | |
void | cropPage (const Geom::Rect &bbox) |
Crop to this bounding box, do this before setMargins() but after setDocumentSize. | |
void | setMetadata (char const *name, const std::string &content) |
void | setAsLayer (const char *layer_name=nullptr, bool visible=true) |
Sets groupmode of the current container to 'layer' and sets its label if given. | |
void | setGroupOpacity (double opacity) |
Sets the current container's opacity. | |
void | pushPage (const std::string &label, GfxState *state) |
We're creating a multi-page document, push page number. | |
void | setPageMode (bool as_pages) |
bool | shouldMergePath (bool is_fill, const std::string &path) |
Returns the CSSAttr of the previously added path if it's exactly the same path AND is missing the fill or stroke that is now being painted. | |
bool | mergePath (GfxState *state, bool is_fill, const std::string &path, bool even_odd=false) |
Set the fill XOR stroke of the previously added path, if that path is missing the given attribute AND the path is exactly the same. | |
void | addPath (GfxState *state, bool fill, bool stroke, bool even_odd=false) |
Emits the current path in poppler's GfxState data structure Can be used to do filling and stroking at once. | |
void | addClippedFill (GfxShading *shading, const Geom::Affine shading_tr) |
void | addShadedFill (GfxShading *shading, const Geom::Affine shading_tr, GfxPath *path, const Geom::Affine tr, bool even_odd=false) |
Emits the current path in poppler's GfxState data structure The path is set to be filled with the given shading. | |
void | addImage (GfxState *state, Stream *str, int width, int height, GfxImageColorMap *color_map, bool interpolate, int *mask_colors) |
void | addImageMask (GfxState *state, Stream *str, int width, int height, bool invert, bool interpolate) |
void | addMaskedImage (GfxState *state, Stream *str, int width, int height, GfxImageColorMap *color_map, bool interpolate, Stream *mask_str, int mask_width, int mask_height, bool invert_mask, bool mask_interpolate) |
void | addSoftMaskedImage (GfxState *state, Stream *str, int width, int height, GfxImageColorMap *color_map, bool interpolate, Stream *mask_str, int mask_width, int mask_height, GfxImageColorMap *mask_color_map, bool mask_interpolate) |
void | applyOptionalMask (Inkscape::XML::Node *mask, Inkscape::XML::Node *target) |
Take a constructed mask and decide how to apply it to the target. | |
void | startGroup (GfxState *state, double *bbox, GfxColorSpace *blending_color_space, bool isolated, bool knockout, bool for_softmask) |
Starts building a new transparency group. | |
void | finishGroup (GfxState *state, bool for_softmask) |
void | popGroup (GfxState *state) |
void | beginString (GfxState *state, int len) |
Begin and end string is the inner most text processing step which tells us we're about to have a certain number of chars. | |
void | endString (GfxState *state) |
void | addChar (GfxState *state, double x, double y, double dx, double dy, double ax, double ay, double originX, double originY, CharCode code, int nBytes, Unicode const *u, int uLen) |
Adds the specified character to the text buffer Takes care of converting it to UTF-8 and generates a new style repr if style has changed since the last call. | |
void | beginTextObject (GfxState *state) |
These text object functions are the outer most calls for begining and ending text. | |
void | endTextObject (GfxState *state) |
bool | isPatternTypeSupported (GfxPattern *pattern) |
Checks whether the given pattern type can be represented in SVG Used by PdfParser to decide when to do fallback operations. | |
void | setFontStrategies (FontStrategies fs) |
void | saveState (GfxState *state) |
void | restoreState (GfxState *state) |
void | updateStyle (GfxState *state) |
Sets _invalidated_style to true to indicate that styles have to be updated Used for text output when glyphs are buffered till a font change. | |
void | updateFont (GfxState *state, std::shared_ptr< CairoFont > cairo_font, bool flip) |
Updates _css_font according to the font set in parameter state. | |
void | updateTextPosition (double tx, double ty) |
Updates current text position. | |
void | updateTextShift (GfxState *state, double shift) |
Shifts the current text position by the given amount (specified in text space) | |
void | updateTextMatrix (GfxState *state, bool flip) |
Flushes the buffered characters. | |
void | beforeStateChange (GfxState *old_state) |
Notifies the svg builder the state will change. | |
void | setClip (GfxState *state, GfxClipType clip, bool is_bbox=false) |
Clips to the current path set in GfxState. | |
void | addOptionalGroup (const std::string &oc, const std::string &label, bool visible=true) |
Inkscape::XML::Node * | beginLayer (const std::string &label, bool visible) |
void | beginMarkedContent (const char *name=nullptr, const char *group=nullptr) |
void | endLayer (Inkscape::XML::Node *save) |
void | endMarkedContent () |
void | addColorProfile (unsigned char *profBuf, int length) |
void | setEmbedImages (bool embed_images) |
Static Public Member Functions | |
static FontStrategies | autoFontStrategies (FontStrategy s, FontList fonts) |
Decide what to do for each font in the font list, with the given strategy. | |
Private Member Functions | |
void | _init () |
gchar * | _createPattern (GfxPattern *pattern, GfxState *state, bool is_stroke=false) |
Creates a pattern from poppler's data structure Handles linear and radial gradients. | |
gchar * | _createGradient (GfxShading *shading, const Geom::Affine pat_matrix, bool for_shading=false) |
Creates a linear or radial gradient from poppler's data structure. | |
void | _addStopToGradient (Inkscape::XML::Node *gradient, double offset, GfxColor *color, GfxColorSpace *space, double opacity) |
Adds a stop with the given properties to the gradient's representation. | |
bool | _addGradientStops (Inkscape::XML::Node *gradient, GfxShading *shading, _POPPLER_CONST Function *func) |
gchar * | _createTilingPattern (GfxTilingPattern *tiling_pattern, GfxState *state, bool is_stroke=false) |
Creates a tiling pattern from poppler's data structure Creates a sub-page PdfParser and uses it to parse the pattern's content stream. | |
Inkscape::XML::Node * | _createImage (Stream *str, int width, int height, GfxImageColorMap *color_map, bool interpolate, int *mask_colors, bool alpha_only=false, bool invert_alpha=false) |
Creates an <image> element containing the given ImageStream as a PNG. | |
Inkscape::XML::Node * | _createMask (double width, double height) |
Creates a <mask> with the specified width and height and adds to <defs> If we're not the top-level SvgBuilder, creates a <defs> too and adds the mask to it. | |
Inkscape::XML::Node * | _createClip (const std::string &d, const Geom::Affine tr, bool even_odd) |
SPCSSAttr * | _setStyle (GfxState *state, bool fill, bool stroke, bool even_odd=false) |
Sets style properties from poppler's GfxState data structure. | |
void | _setStrokeStyle (SPCSSAttr *css, GfxState *state) |
Sets stroke style from poppler's GfxState data structure Uses the given SPCSSAttr for storing the style properties. | |
void | _setFillStyle (SPCSSAttr *css, GfxState *state, bool even_odd) |
Sets fill style from poppler's GfxState data structure Uses the given SPCSSAttr for storing the style properties. | |
void | _setTextStyle (Inkscape::XML::Node *node, GfxState *state, SPCSSAttr *font_style, Geom::Affine text_affine) |
Sets the style for the text, rendered or un-rendered, preserving the text_transform for any gradients or other patterns. | |
void | _setBlendMode (Inkscape::XML::Node *node, GfxState *state) |
Sets blend style properties from poppler's GfxState data structure \update a SPCSSAttr with all mix-blend-mode set. | |
void | _setTransform (Inkscape::XML::Node *node, GfxState *state, Geom::Affine extra=Geom::identity()) |
Inkscape::XML::Node * | _flushTextText (GfxState *state, double text_scale, const Geom::Affine &text_transform) |
Create text node for text. | |
Inkscape::XML::Node * | _flushTextPath (GfxState *state, double text_scale, const Geom::Affine &text_transform) |
Create path node(s) for text. | |
void | _flushText (GfxState *state) |
Writes the buffered characters to the SVG document. | |
Inkscape::XML::Node * | _pushGroup () |
Inkscape::XML::Node * | _popGroup () |
Inkscape::XML::Node * | _pushContainer (const char *name) |
Inkscape::XML::Node * | _pushContainer (Inkscape::XML::Node *node) |
Inkscape::XML::Node * | _popContainer () |
Inkscape::XML::Node * | _getClip (const Inkscape::XML::Node *node) |
Return the active clip as a new xml node. | |
bool | _shouldClip (const Inkscape::XML::Node *node) const |
Inkscape::XML::Node * | _addToContainer (const char *name) |
Create an svg element and append it to the current container object. | |
Inkscape::XML::Node * | _renderText (std::shared_ptr< CairoFont > cairo_font, double font_size, const Geom::Affine &transform, cairo_glyph_t *cairo_glyphs, unsigned int count) |
Renders the text as a path object using cairo and returns the node object. | |
void | _setClipPath (Inkscape::XML::Node *node) |
void | _addToContainer (Inkscape::XML::Node *node, bool release=true) |
Append the given xml element to the current container object, clipping and masking as needed. | |
Inkscape::XML::Node * | _getGradientNode (Inkscape::XML::Node *node, bool is_fill) |
Find the fill or stroke gradient we previously set on this node. | |
std::string | convertGfxColor (const GfxColor *color, GfxColorSpace *space) |
std::string | _getColorProfile (cmsHPROFILE hp) |
Return the color profile name if it's already been added. | |
Static Private Member Functions | |
static bool | _attrEqual (Inkscape::XML::Node *a, Inkscape::XML::Node *b, char const *attr) |
Builds the inner SVG representation using libpoppler from the calls of PdfParser.
Definition at line 101 of file svg-builder.h.
Inkscape::Extension::Internal::SvgBuilder::SvgBuilder | ( | SPDocument * | document, |
gchar * | docname, | ||
XRef * | xref | ||
) |
Definition at line 72 of file svg-builder.cpp.
References _container, _doc, _docname, _init(), _is_top_level, _root, _xml_doc, _xref, SPDocument::getReprDoc(), and SPDocument::getReprRoot().
Inkscape::Extension::Internal::SvgBuilder::SvgBuilder | ( | SvgBuilder * | parent, |
Inkscape::XML::Node * | root | ||
) |
Definition at line 83 of file svg-builder.cpp.
References _container, _doc, _docname, _init(), _is_top_level, _root, _xml_doc, _xref, parent, and root.
|
virtual |
Definition at line 93 of file svg-builder.cpp.
References _clip_history.
|
private |
Definition at line 1242 of file svg-builder.cpp.
References _addStopToGradient(), bounds, offset, and Inkscape::Extension::Internal::svgGetShadingColor().
Referenced by _createGradient().
|
private |
Adds a stop with the given properties to the gradient's representation.
Definition at line 1200 of file svg-builder.cpp.
References _xml_doc, Inkscape::XML::Node::appendChild(), convertGfxColor(), Inkscape::XML::Document::createElement(), css, offset, Inkscape::GC::release(), rgb, Inkscape::XML::Node::setAttributeCssDouble(), sp_repr_css_attr_new(), sp_repr_css_attr_unref(), sp_repr_css_change(), sp_repr_css_set_property(), and Inkscape::CSSOStringStream::str().
Referenced by _addGradientStops().
|
private |
Create an svg element and append it to the current container object.
Definition at line 328 of file svg-builder.cpp.
References _addToContainer(), _xml_doc, Inkscape::XML::Document::createElement(), name, and node.
Referenced by _addToContainer(), _flushTextText(), _renderText(), addImage(), addImageMask(), addMaskedImage(), addPath(), addShadedFill(), addSoftMaskedImage(), and popGroup().
|
private |
Append the given xml element to the current container object, clipping and masking as needed.
if release is true (default), the XML node will be GC released too.
Definition at line 340 of file svg-builder.cpp.
References _container, Inkscape::XML::Node::appendChild(), node, Inkscape::XML::Node::parent(), and Inkscape::GC::release().
|
staticprivate |
Definition at line 2353 of file svg-builder.cpp.
References Inkscape::XML::Node::attribute().
Referenced by applyOptionalMask().
|
private |
Definition at line 871 of file svg-builder.cpp.
References _doc, _prev_clip, _xml_doc, Inkscape::XML::Node::appendChild(), Inkscape::XML::Node::attribute(), Inkscape::XML::Document::createElement(), Inkscape::XML::Node::firstChild(), SPDocument::getDefs(), SPObject::getRepr(), Geom::identity(), Inkscape::GC::release(), Inkscape::XML::Node::setAttribute(), sp_svg_transform_write(), and Inkscape::Extension::Internal::svgSetTransform().
Referenced by _getClip(), and cropPage().
|
private |
Creates a linear or radial gradient from poppler's data structure.
shading | poppler's data structure for the shading |
matrix | gradient transformation, can be null |
for_shading | true if we're creating this for a shading operator; false otherwise |
Definition at line 1136 of file svg-builder.cpp.
References _addGradientStops(), _doc, _xml_doc, Inkscape::XML::Node::appendChild(), Inkscape::XML::Node::attribute(), Inkscape::XML::Document::createElement(), SPDocument::getDefs(), SPObject::getRepr(), Geom::identity(), Inkscape::GC::release(), Inkscape::XML::Node::setAttribute(), Inkscape::XML::Node::setAttributeOrRemoveIfEmpty(), Inkscape::XML::Node::setAttributeSvgDouble(), and sp_svg_transform_write().
Referenced by _createPattern(), and addShadedFill().
|
private |
Creates an <image> element containing the given ImageStream as a PNG.
Definition at line 2007 of file svg-builder.cpp.
References _docname, _embed_images, _xml_doc, counter, Inkscape::XML::Document::createElement(), css, file_name, height, Inkscape::Extension::Internal::png_write_vector(), Inkscape::XML::Node::setAttribute(), Inkscape::XML::Node::setAttributeOrRemoveIfEmpty(), Inkscape::XML::Node::setAttributeSvgDouble(), sp_repr_css_attr_new(), sp_repr_css_attr_unref(), sp_repr_css_change(), sp_repr_css_set_property(), and width.
Referenced by addImage(), addImageMask(), addMaskedImage(), and addSoftMaskedImage().
|
private |
Creates a <mask> with the specified width and height and adds to <defs> If we're not the top-level SvgBuilder, creates a <defs> too and adds the mask to it.
Definition at line 2206 of file svg-builder.cpp.
References _doc, _is_top_level, _xml_doc, Inkscape::XML::Node::appendChild(), Inkscape::XML::Document::createElement(), SPDocument::getDefs(), SPObject::getRepr(), height, Inkscape::XML::Node::lastChild(), Inkscape::GC::release(), Inkscape::XML::Node::setAttribute(), Inkscape::XML::Node::setAttributeSvgDouble(), and width.
Referenced by addImageMask(), addMaskedImage(), addSoftMaskedImage(), and startGroup().
|
private |
Creates a pattern from poppler's data structure Handles linear and radial gradients.
Creates a new PdfParser and uses it to build a tiling pattern.
Definition at line 1045 of file svg-builder.cpp.
References _createGradient(), _createTilingPattern(), _height, Inkscape::Util::Quantity::convert(), ctmToAffine(), and stateToAffine().
Referenced by _setFillStyle(), and _setStrokeStyle().
|
private |
Creates a tiling pattern from poppler's data structure Creates a sub-page PdfParser and uses it to parse the pattern's content stream.
Definition at line 1075 of file svg-builder.cpp.
References _doc, _xml_doc, _xref, Inkscape::XML::Node::appendChild(), Inkscape::XML::Node::attribute(), Inkscape::XML::Document::createElement(), ctmToAffine(), SPDocument::getDefs(), SPObject::getRepr(), PdfParser::getState(), PdfParser::parse(), Inkscape::GC::release(), Inkscape::XML::Node::setAttribute(), Inkscape::XML::Node::setAttributeOrRemoveIfEmpty(), Inkscape::XML::Node::setAttributeSvgDouble(), and sp_svg_transform_write().
Referenced by _createPattern().
|
private |
Writes the buffered characters to the SVG document.
This is a dual path function that can produce either a text element or a group of path elements depending on the font handling mode.
Definition at line 1704 of file svg-builder.cpp.
References _aria_label, _clip_text_group, _doc, _flushTextPath(), _flushTextText(), _glyphs, _page_affine, _pushContainer(), _setBlendMode(), _setClipPath(), _text_matrix, Inkscape::Extension::Internal::SvgGlyph::cairo_font, Geom::Affine::expansionX(), SPDocument::getDefs(), SPObject::getRepr(), Geom::Scale::inverse(), Inkscape::Extension::Internal::SvgGlyph::position, Inkscape::GC::release(), Inkscape::XML::Node::setAttribute(), Geom::Affine::setTranslation(), stateToAffine(), and Inkscape::Extension::Internal::svgSetTransform().
Referenced by beforeStateChange(), beginString(), endTextObject(), and updateTextMatrix().
|
private |
Create path node(s) for text.
Definition at line 1624 of file svg-builder.cpp.
References _aria_label, _glyphs, _popGroup(), _pushGroup(), _renderText(), _setTextStyle(), node, Inkscape::XML::Node::setAttribute(), Geom::X, Geom::Y, and Geom::Point::y().
Referenced by _flushText().
|
private |
Create text node for text.
Definition at line 1438 of file svg-builder.cpp.
References _addToContainer(), _glyphs, _setTextStyle(), _xml_doc, Inkscape::XML::Node::appendChild(), Inkscape::XML::Document::createElement(), Inkscape::XML::Document::createTextNode(), Inkscape::GC::release(), sp_repr_css_attr_new(), sp_repr_css_attr_unref(), sp_repr_css_change(), sp_repr_css_set_property(), sp_repr_css_set_property_double(), and Inkscape::CSSOStringStream::str().
Referenced by _flushText().
|
private |
Return the active clip as a new xml node.
Definition at line 793 of file svg-builder.cpp.
References _clip_history, _clip_text, _createClip(), _page_affine, _shouldClip(), Inkscape::XML::Node::attribute(), child, ClipHistoryEntry::evenOdd(), ClipHistoryEntry::getAffine(), ClipHistoryEntry::getClipPath(), Geom::identity(), Geom::Affine::inverse(), node, sp_svg_transform_read(), Inkscape::Extension::Internal::svgInterpretPath(), and Inkscape::Extension::Internal::svgSetTransform().
Referenced by _setClipPath().
|
private |
Return the color profile name if it's already been added.
Definition at line 987 of file svg-builder.cpp.
References _doc, _icc_profiles, _xml_doc, Inkscape::XML::Node::appendChild(), Inkscape::Colors::CMS::Profile::create(), Inkscape::XML::Document::createElement(), SPDocument::getDefs(), SPDocument::getDocumentCMS(), SPObject::getRepr(), Inkscape::Colors::DocumentCMS::getSpace(), name, Inkscape::GC::release(), Inkscape::XML::Node::setAttribute(), Inkscape::XML::Node::setAttributeOrRemoveIfEmpty(), and validateString().
Referenced by addColorProfile(), and convertGfxColor().
|
private |
Find the fill or stroke gradient we previously set on this node.
Definition at line 2342 of file svg-builder.cpp.
References _doc, css, SPDocument::getObjectById(), node, sp_repr_css_attr(), and try_extract_uri_id().
Referenced by applyOptionalMask().
|
private |
Definition at line 101 of file svg-builder.cpp.
References _clip_history, _container, _css_font, _height, _in_text_object, _invalidated_style, _node_stack, and _width.
Referenced by SvgBuilder(), and SvgBuilder().
|
private |
Definition at line 310 of file svg-builder.cpp.
References _clip_history, _container, _node_stack, _root, node, and ClipHistoryEntry::restore().
Referenced by _popGroup(), endTextObject(), finishGroup(), and popGroup().
|
private |
Definition at line 370 of file svg-builder.cpp.
References _container, _popContainer(), and _root.
Referenced by _flushTextPath(), beginLayer(), endLayer(), endMarkedContent(), and pushPage().
|
private |
Definition at line 296 of file svg-builder.cpp.
References _pushContainer(), _xml_doc, Inkscape::XML::Document::createElement(), and name.
Referenced by _flushText(), _pushContainer(), _pushGroup(), setClip(), and startGroup().
|
private |
Definition at line 301 of file svg-builder.cpp.
References _clip_history, _container, _node_stack, node, and ClipHistoryEntry::save().
|
private |
Definition at line 361 of file svg-builder.cpp.
References _container, _pushContainer(), Inkscape::XML::Node::appendChild(), node, and Inkscape::GC::release().
Referenced by _flushTextPath(), beginLayer(), beginMarkedContent(), and pushPage().
|
private |
Renders the text as a path object using cairo and returns the node object.
If the path is empty (e.g. due to trying to render a color bitmap font), return path node with empty "d" attribute. The aria attribute will still contain the original text.
cairo_font - The font that cairo can use to convert text to path. font_size - The size of the text when drawing the path. transform - The matrix which will place the text on the page, this is critical to allow cairo to render all the required parts of the text. cairo_glyphs - A pointer to a list of glyphs to render. count - A count of the number of glyphs to render.
Definition at line 1798 of file svg-builder.cpp.
References _addToContainer(), _aria_label, _height, _width, extract_pathvector_from_cairo(), ink_cairo_transform(), Inkscape::XML::Node::setAttribute(), sp_svg_write_path(), and surface.
Referenced by _flushTextPath().
|
private |
Sets blend style properties from poppler's GfxState data structure \update a SPCSSAttr with all mix-blend-mode set.
Definition at line 593 of file svg-builder.cpp.
References css, enum_blend_mode, key, node, Inkscape::XML::Node::setAttributeOrRemoveIfEmpty(), sp_repr_css_attr(), sp_repr_css_attr_unref(), sp_repr_css_set_property(), and sp_repr_css_write_string().
Referenced by _flushText(), addImage(), addImageMask(), addMaskedImage(), addPath(), and addSoftMaskedImage().
|
private |
Definition at line 350 of file svg-builder.cpp.
References _clip_history, _clip_text, _getClip(), ClipHistoryEntry::hasClipPath(), node, and Inkscape::XML::Node::setAttribute().
Referenced by _flushText(), addImage(), addImageMask(), addMaskedImage(), addPath(), addSoftMaskedImage(), and popGroup().
|
private |
Sets fill style from poppler's GfxState data structure Uses the given SPCSSAttr for storing the style properties.
Definition at line 566 of file svg-builder.cpp.
References _createPattern(), convertGfxColor(), css, sp_repr_css_set_property(), and Inkscape::CSSOStringStream::str().
Referenced by _setStyle(), addImageMask(), and mergePath().
|
private |
Sets stroke style from poppler's GfxState data structure Uses the given SPCSSAttr for storing the style properties.
Definition at line 475 of file svg-builder.cpp.
References _createPattern(), convertGfxColor(), css, dash_pattern, sp_repr_css_set_property(), and Inkscape::CSSOStringStream::str().
Referenced by _setStyle(), and mergePath().
|
private |
Sets style properties from poppler's GfxState data structure.
Definition at line 615 of file svg-builder.cpp.
References _setFillStyle(), _setStrokeStyle(), css, fill, sp_repr_css_attr_new(), sp_repr_css_set_property(), and stroke.
Referenced by _setTextStyle(), and addPath().
|
private |
Sets the style for the text, rendered or un-rendered, preserving the text_transform for any gradients or other patterns.
These values were promised to us when the font was updated.
Definition at line 1766 of file svg-builder.cpp.
References _setStyle(), has_fill(), has_stroke(), node, sp_repr_css_attr_unref(), sp_repr_css_change(), and sp_repr_css_merge().
Referenced by _flushTextPath(), and _flushTextText().
|
private |
Definition at line 606 of file svg-builder.cpp.
References _page_affine, node, stateToAffine(), and Inkscape::Extension::Internal::svgSetTransform().
Referenced by addImage(), addImageMask(), addMaskedImage(), addPath(), and addSoftMaskedImage().
|
private |
Definition at line 828 of file svg-builder.cpp.
References _clip_history, _doc, Inkscape::XML::Node::attribute(), bounds, Geom::PathVector::empty(), SPDocument::ensureUpToDate(), fill_nonZero, ClipHistoryEntry::getAffine(), ClipHistoryEntry::getClipPath(), SPDocument::getObjectByRepr(), ClipHistoryEntry::hasClipPath(), Geom::identity(), item, node, pathv_fully_contains(), Geom::PathVector::push_back(), sp_svg_read_pathv(), sp_svg_transform_read(), Inkscape::Extension::Internal::svgInterpretPath(), and SPItem::visualBounds().
Referenced by _getClip().
void Inkscape::Extension::Internal::SvgBuilder::addChar | ( | GfxState * | state, |
double | x, | ||
double | y, | ||
double | dx, | ||
double | dy, | ||
double | ax, | ||
double | ay, | ||
double | originX, | ||
double | originY, | ||
CharCode | code, | ||
int | nBytes, | ||
Unicode const * | u, | ||
int | uLen | ||
) |
Adds the specified character to the text buffer Takes care of converting it to UTF-8 and generates a new style repr if style has changed since the last call.
x, y: Position of glyph. dx, dy: Advance of glyph. originX, originY code: 8-bit char code, 16 bit CID, or Unicode of glyph. u: Unicode mapping of character. "Unicode" is an unsigned int.
Definition at line 1873 of file svg-builder.cpp.
References _aria_label, _aria_space, _cairo_font, _css_font, _css_font_size, _font_specification, _glyphs, _invalidated_style, _text_position, Inkscape::Extension::Internal::SvgGlyph::advance, Inkscape::Extension::Internal::SvgGlyph::cairo_font, Inkscape::Extension::Internal::SvgGlyph::cairo_index, Inkscape::Extension::Internal::SvgGlyph::char_space, Inkscape::Extension::Internal::SvgGlyph::code, Inkscape::Extension::Internal::SvgGlyph::css_font, Inkscape::Extension::Internal::SvgGlyph::delta, delta, Inkscape::Extension::Internal::SvgGlyph::font_specification, Inkscape::Extension::Internal::SvgGlyph::horiz_scaling, Inkscape::Extension::Internal::SvgGlyph::is_space, Inkscape::Extension::Internal::SvgGlyph::origin, Inkscape::Extension::Internal::SvgGlyph::position, Inkscape::Extension::Internal::SvgGlyph::rise, sp_repr_css_attr_new(), sp_repr_css_merge(), Inkscape::Extension::Internal::SvgGlyph::state, Inkscape::Extension::Internal::SvgGlyph::style_changed, Inkscape::Extension::Internal::SvgGlyph::text_position, Inkscape::Extension::Internal::SvgGlyph::text_size, Inkscape::Extension::Internal::SvgGlyph::word_space, and Geom::Y.
Referenced by PdfParser::doShowText().
void Inkscape::Extension::Internal::SvgBuilder::addClippedFill | ( | GfxShading * | shading, |
const Geom::Affine | shading_tr | ||
) |
Definition at line 712 of file svg-builder.cpp.
References _clip_history, addShadedFill(), ClipHistoryEntry::getAffine(), ClipHistoryEntry::getClipPath(), and ClipHistoryEntry::getClipType().
Referenced by PdfParser::opShFill().
void Inkscape::Extension::Internal::SvgBuilder::addColorProfile | ( | unsigned char * | profBuf, |
int | length | ||
) |
Definition at line 974 of file svg-builder.cpp.
References _getColorProfile(), and _icc_profile.
Referenced by PdfParser::doShowText().
void Inkscape::Extension::Internal::SvgBuilder::addImage | ( | GfxState * | state, |
Stream * | str, | ||
int | width, | ||
int | height, | ||
GfxImageColorMap * | color_map, | ||
bool | interpolate, | ||
int * | mask_colors | ||
) |
Definition at line 2229 of file svg-builder.cpp.
References _addToContainer(), _createImage(), _setBlendMode(), _setClipPath(), _setTransform(), height, and width.
Referenced by PdfParser::doShowText().
void Inkscape::Extension::Internal::SvgBuilder::addImageMask | ( | GfxState * | state, |
Stream * | str, | ||
int | width, | ||
int | height, | ||
bool | invert, | ||
bool | interpolate | ||
) |
Definition at line 2241 of file svg-builder.cpp.
References _addToContainer(), _createImage(), _createMask(), _setBlendMode(), _setClipPath(), _setFillStyle(), _setTransform(), Inkscape::XML::Node::appendChild(), Inkscape::XML::Node::attribute(), css, height, invert(), Inkscape::GC::release(), Inkscape::XML::Node::removeAttribute(), Inkscape::XML::Node::setAttribute(), Inkscape::XML::Node::setAttributeSvgDouble(), sp_repr_css_attr_new(), sp_repr_css_attr_unref(), sp_repr_css_change(), and width.
Referenced by PdfParser::doShowText().
void Inkscape::Extension::Internal::SvgBuilder::addMaskedImage | ( | GfxState * | state, |
Stream * | str, | ||
int | width, | ||
int | height, | ||
GfxImageColorMap * | color_map, | ||
bool | interpolate, | ||
Stream * | mask_str, | ||
int | mask_width, | ||
int | mask_height, | ||
bool | invert_mask, | ||
bool | mask_interpolate | ||
) |
Definition at line 2278 of file svg-builder.cpp.
References _addToContainer(), _createImage(), _createMask(), _setBlendMode(), _setClipPath(), _setTransform(), Inkscape::XML::Node::appendChild(), Inkscape::XML::Node::attribute(), height, Inkscape::GC::release(), Inkscape::XML::Node::removeAttribute(), Inkscape::XML::Node::setAttribute(), Inkscape::XML::Node::setAttributeOrRemoveIfEmpty(), sp_svg_transform_write(), and width.
Referenced by PdfParser::doShowText().
void Inkscape::Extension::Internal::SvgBuilder::addOptionalGroup | ( | const std::string & | oc, |
const std::string & | label, | ||
bool | visible = true |
||
) |
Definition at line 940 of file svg-builder.cpp.
References _ocgs, label, and visible.
Referenced by PdfParser::doShowText().
void Inkscape::Extension::Internal::SvgBuilder::addPath | ( | GfxState * | state, |
bool | fill, | ||
bool | stroke, | ||
bool | even_odd = false |
||
) |
Emits the current path in poppler's GfxState data structure Can be used to do filling and stroking at once.
fill | whether the path should be filled |
stroke | whether the path should be stroked |
even_odd | whether the even-odd rule should be used when filling the path |
Definition at line 688 of file svg-builder.cpp.
References _addToContainer(), _setBlendMode(), _setClipPath(), _setStyle(), _setTransform(), css, fill, mergePath(), Inkscape::XML::Node::setAttribute(), sp_repr_css_attr_unref(), sp_repr_css_change(), stroke, and Inkscape::Extension::Internal::svgInterpretPath().
Referenced by PdfParser::doFillAndStroke(), PdfParser::doFunctionShFill1(), PdfParser::doShadingPatternFillFallback(), PdfParser::fillPatch(), PdfParser::gouraudFillTriangle(), PdfParser::opCloseStroke(), PdfParser::opEOFill(), PdfParser::opFill(), PdfParser::opFillStroke(), and PdfParser::opStroke().
void Inkscape::Extension::Internal::SvgBuilder::addShadedFill | ( | GfxShading * | shading, |
const Geom::Affine | shading_tr, | ||
GfxPath * | path, | ||
const Geom::Affine | tr, | ||
bool | even_odd = false |
||
) |
Emits the current path in poppler's GfxState data structure The path is set to be filled with the given shading.
Definition at line 724 of file svg-builder.cpp.
References _addToContainer(), _container, _createGradient(), _page_affine, css, Geom::Affine::inverse(), Inkscape::XML::Node::lastChild(), Inkscape::XML::Node::name(), Inkscape::XML::Node::setAttribute(), shouldMergePath(), sp_repr_css_attr_new(), sp_repr_css_attr_unref(), sp_repr_css_change(), sp_repr_css_set_property(), Inkscape::Extension::Internal::svgInterpretPath(), and Inkscape::Extension::Internal::svgSetTransform().
Referenced by addClippedFill().
void Inkscape::Extension::Internal::SvgBuilder::addSoftMaskedImage | ( | GfxState * | state, |
Stream * | str, | ||
int | width, | ||
int | height, | ||
GfxImageColorMap * | color_map, | ||
bool | interpolate, | ||
Stream * | mask_str, | ||
int | mask_width, | ||
int | mask_height, | ||
GfxImageColorMap * | mask_color_map, | ||
bool | mask_interpolate | ||
) |
Definition at line 2310 of file svg-builder.cpp.
References _addToContainer(), _createImage(), _createMask(), _setBlendMode(), _setClipPath(), _setTransform(), Inkscape::XML::Node::appendChild(), Inkscape::XML::Node::attribute(), height, Inkscape::GC::release(), Inkscape::XML::Node::removeAttribute(), Inkscape::XML::Node::setAttribute(), and width.
Referenced by PdfParser::doShowText().
void Inkscape::Extension::Internal::SvgBuilder::applyOptionalMask | ( | Inkscape::XML::Node * | mask, |
Inkscape::XML::Node * | target | ||
) |
Take a constructed mask and decide how to apply it to the target.
Definition at line 2361 of file svg-builder.cpp.
References _attrEqual(), _getGradientNode(), Inkscape::XML::Node::attribute(), Inkscape::XML::Node::childCount(), Inkscape::XML::Node::firstChild(), Inkscape::XML::Node::parent(), Inkscape::XML::Node::removeChild(), Inkscape::XML::Node::setAttribute(), sp_repr_css_attr(), sp_repr_css_change(), and sp_repr_css_set_property().
Referenced by finishGroup(), and popGroup().
|
static |
Decide what to do for each font in the font list, with the given strategy.
Definition at line 2484 of file svg-builder.cpp.
References AS_SHAPES, AS_SUB, AS_TEXT, DELETE_ALL, DELETE_MISSING, DELETE_TEXT, KEEP_MISSING, RENDER_ALL, RENDER_MISSING, and SUBSTITUTE_MISSING.
Referenced by Inkscape::Extension::Internal::PdfInput::open(), and Inkscape::Extension::Internal::PdfImportDialog::PdfImportDialog().
void Inkscape::Extension::Internal::SvgBuilder::beforeStateChange | ( | GfxState * | old_state | ) |
Notifies the svg builder the state will change.
Used to flushText if we are in text object. This is necessary as the state stored in glyphs is only a pointer to the current state, thus changing the state changes a glyphs every glyph style. This needs fixing!
Definition at line 1429 of file svg-builder.cpp.
References _flushText(), and _in_text_object.
Referenced by PdfParser::opSetDash(), PdfParser::opSetFillCMYKColor(), PdfParser::opSetFillColor(), PdfParser::opSetFillColorN(), PdfParser::opSetFillColorSpace(), PdfParser::opSetFillGray(), PdfParser::opSetFillRGBColor(), PdfParser::opSetLineCap(), PdfParser::opSetLineJoin(), PdfParser::opSetLineWidth(), PdfParser::opSetMiterLimit(), PdfParser::opSetStrokeCMYKColor(), PdfParser::opSetStrokeColor(), PdfParser::opSetStrokeColorN(), PdfParser::opSetStrokeColorSpace(), PdfParser::opSetStrokeGray(), PdfParser::opSetStrokeRGBColor(), and PdfParser::opSetTextRender().
Inkscape::XML::Node * Inkscape::Extension::Internal::SvgBuilder::beginLayer | ( | const std::string & | label, |
bool | visible | ||
) |
Definition at line 945 of file svg-builder.cpp.
References _container, _doc, _node_stack, _popGroup(), _pushGroup(), _root, SPDocument::getObjectById(), label, node, sanitizeId(), setAsLayer(), Inkscape::XML::Node::setAttribute(), and visible.
Referenced by PdfParser::doShowText().
void Inkscape::Extension::Internal::SvgBuilder::beginMarkedContent | ( | const char * | name = nullptr , |
const char * | group = nullptr |
||
) |
Definition at line 912 of file svg-builder.cpp.
References _container, _doc, _node_stack, _ocgs, _pushGroup(), SPDocument::getObjectById(), name, node, sanitizeId(), setAsLayer(), and Inkscape::XML::Node::setAttribute().
Referenced by PdfParser::doShowText().
void Inkscape::Extension::Internal::SvgBuilder::beginString | ( | GfxState * | state, |
int | len | ||
) |
Begin and end string is the inner most text processing step which tells us we're about to have a certain number of chars.
Definition at line 1841 of file svg-builder.cpp.
References _aria_space, _flushText(), _glyphs, and _invalidated_strategy.
Referenced by PdfParser::doShowText().
void Inkscape::Extension::Internal::SvgBuilder::beginTextObject | ( | GfxState * | state | ) |
These text object functions are the outer most calls for begining and ending text.
No text functions should be called outside of these two calls
Definition at line 1975 of file svg-builder.cpp.
References _in_text_object, and _invalidated_style.
Referenced by PdfParser::opBeginText().
|
private |
Definition at line 397 of file svg-builder.cpp.
References _getColorProfile(), _icc_profile, rgb, Inkscape::CSSOStringStream::str(), and Inkscape::Extension::Internal::svgConvertGfxRGB().
Referenced by _addStopToGradient(), _setFillStyle(), and _setStrokeStyle().
void Inkscape::Extension::Internal::SvgBuilder::cropPage | ( | const Geom::Rect & | bbox | ) |
Crop to this bounding box, do this before setMargins() but after setDocumentSize.
Definition at line 191 of file svg-builder.cpp.
References _container, _createClip(), _page_affine, _root, Geom::identity(), Inkscape::XML::Node::setAttribute(), and Inkscape::CSSOStringStream::str().
Referenced by PdfParser::PdfParser().
void Inkscape::Extension::Internal::SvgBuilder::endLayer | ( | Inkscape::XML::Node * | save | ) |
Definition at line 963 of file svg-builder.cpp.
References _node_stack, _popGroup(), and Inkscape::Extension::save().
Referenced by PdfParser::doShowText().
void Inkscape::Extension::Internal::SvgBuilder::endMarkedContent | ( | ) |
Definition at line 969 of file svg-builder.cpp.
References _popGroup().
Referenced by PdfParser::doShowText().
void Inkscape::Extension::Internal::SvgBuilder::endString | ( | GfxState * | state | ) |
Definition at line 1858 of file svg-builder.cpp.
Referenced by PdfParser::doShowText().
void Inkscape::Extension::Internal::SvgBuilder::endTextObject | ( | GfxState * | state | ) |
Definition at line 1980 of file svg-builder.cpp.
References _clip_text, _clip_text_group, _flushText(), _in_text_object, and _popContainer().
Referenced by PdfParser::opEndText().
void Inkscape::Extension::Internal::SvgBuilder::finishGroup | ( | GfxState * | state, |
bool | for_softmask | ||
) |
Definition at line 2426 of file svg-builder.cpp.
References _container, _popContainer(), applyOptionalMask(), and popGroup().
Referenced by PdfParser::doShowText().
bool Inkscape::Extension::Internal::SvgBuilder::isPatternTypeSupported | ( | GfxPattern * | pattern | ) |
Checks whether the given pattern type can be represented in SVG Used by PdfParser to decide when to do fallback operations.
Definition at line 1021 of file svg-builder.cpp.
Referenced by PdfParser::doFillAndStroke(), PdfParser::opCloseStroke(), PdfParser::opEOFill(), PdfParser::opFill(), and PdfParser::opStroke().
bool Inkscape::Extension::Internal::SvgBuilder::mergePath | ( | GfxState * | state, |
bool | is_fill, | ||
const std::string & | path, | ||
bool | even_odd = false |
||
) |
Set the fill XOR stroke of the previously added path, if that path is missing the given attribute AND the path is exactly the same.
This effectively merges the two objects and is an 'interpretation' step.
Definition at line 661 of file svg-builder.cpp.
References _container, _setFillStyle(), _setStrokeStyle(), css, Inkscape::XML::Node::lastChild(), shouldMergePath(), sp_repr_css_attr_new(), sp_repr_css_attr_unref(), sp_repr_css_change(), and sp_repr_css_set_property().
Referenced by addPath().
void Inkscape::Extension::Internal::SvgBuilder::popGroup | ( | GfxState * | state | ) |
Definition at line 2437 of file svg-builder.cpp.
References _addToContainer(), _clip_history, _doc, _popContainer(), _setClipPath(), Inkscape::GC::anchor(), applyOptionalMask(), child, clip(), SPDocument::getObjectById(), ClipHistoryEntry::hasClipPath(), ClipHistoryEntry::isBoundingBox(), orig, parent, and try_extract_uri_id().
Referenced by finishGroup(), and restoreState().
void Inkscape::Extension::Internal::SvgBuilder::pushPage | ( | const std::string & | label, |
GfxState * | state | ||
) |
We're creating a multi-page document, push page number.
Definition at line 115 of file svg-builder.cpp.
References _as_pages, _container, _doc, _ocgs, _page, _page_affine, _page_left, _page_num, _page_offset, _page_top, _popGroup(), _pushGroup(), _root, _width, _xml_doc, Inkscape::XML::Node::appendChild(), Inkscape::XML::Document::createElement(), SPDocument::getNamedView(), SPObject::getRepr(), Geom::Translate::inverse(), label, Inkscape::GC::release(), setAsLayer(), Inkscape::XML::Node::setAttribute(), Inkscape::XML::Node::setAttributeSvgDouble(), stateToAffine(), validateString(), Geom::X, and Geom::Y.
Referenced by PdfParser::PdfParser().
void Inkscape::Extension::Internal::SvgBuilder::restoreState | ( | GfxState * | state | ) |
Definition at line 280 of file svg-builder.cpp.
References _clip_groups, _clip_history, _mask_groups, popGroup(), and ClipHistoryEntry::restore().
Referenced by PdfParser::doShowText().
void Inkscape::Extension::Internal::SvgBuilder::saveState | ( | GfxState * | state | ) |
Definition at line 275 of file svg-builder.cpp.
References _clip_history, and ClipHistoryEntry::save().
Referenced by PdfParser::doShowText().
void Inkscape::Extension::Internal::SvgBuilder::setAsLayer | ( | const char * | layer_name = nullptr , |
bool | visible = true |
||
) |
Sets groupmode of the current container to 'layer' and sets its label if given.
Definition at line 255 of file svg-builder.cpp.
References _container, css, Inkscape::XML::Node::setAttribute(), sp_repr_css_attr_new(), sp_repr_css_change(), sp_repr_css_set_property(), validateString(), and visible.
Referenced by beginLayer(), beginMarkedContent(), and pushPage().
void Inkscape::Extension::Internal::SvgBuilder::setClip | ( | GfxState * | state, |
GfxClipType | clip, | ||
bool | is_bbox = false |
||
) |
Clips to the current path set in GfxState.
state | poppler's data structure |
even_odd | whether the even-odd rule should be applied |
Definition at line 776 of file svg-builder.cpp.
References _clip_groups, _clip_history, _pushContainer(), clip(), ClipHistoryEntry::hasClipPath(), and ClipHistoryEntry::setClip().
Referenced by PdfParser::doEndPath(), and PdfParser::doShowText().
void Inkscape::Extension::Internal::SvgBuilder::setDocumentSize | ( | double | width, |
double | height | ||
) |
Definition at line 170 of file svg-builder.cpp.
References _as_pages, _height, _page, _page_left, _page_num, _root, _width, height, Inkscape::XML::Node::setAttributeSvgDouble(), and width.
Referenced by PdfParser::PdfParser(), and setMargins().
|
inline |
Definition at line 183 of file svg-builder.h.
References _embed_images.
|
inline |
Definition at line 158 of file svg-builder.h.
References _font_strategies.
void Inkscape::Extension::Internal::SvgBuilder::setGroupOpacity | ( | double | opacity | ) |
Sets the current container's opacity.
Definition at line 271 of file svg-builder.cpp.
References _container, and Inkscape::XML::Node::setAttributeSvgDouble().
Referenced by PdfParser::doShowText().
void Inkscape::Extension::Internal::SvgBuilder::setMargins | ( | const Geom::Rect & | page, |
const Geom::Rect & | margins, | ||
const Geom::Rect & | bleed | ||
) |
Calculate the page margin size based on the pdf settings.
Definition at line 211 of file svg-builder.cpp.
References _as_pages, _height, _page, _page_affine, _width, Geom::GenericRect< C >::bottom(), Geom::GenericRect< C >::left(), page, Geom::GenericRect< C >::right(), Inkscape::XML::Node::setAttribute(), setDocumentSize(), Inkscape::CSSOStringStream::str(), and Geom::GenericRect< C >::top().
Referenced by PdfParser::PdfParser().
void Inkscape::Extension::Internal::SvgBuilder::setMetadata | ( | char const * | name, |
const std::string & | content | ||
) |
Definition at line 245 of file svg-builder.cpp.
References _doc, name, rdf_find_entity(), rdf_set_work_entity(), and validateString().
Referenced by PdfParser::PdfParser().
|
inline |
Definition at line 115 of file svg-builder.h.
References _as_pages.
bool Inkscape::Extension::Internal::SvgBuilder::shouldMergePath | ( | bool | is_fill, |
const std::string & | path | ||
) |
Returns the CSSAttr of the previously added path if it's exactly the same path AND is missing the fill or stroke that is now being painted.
Definition at line 636 of file svg-builder.cpp.
References _container, Inkscape::XML::Node::attribute(), Inkscape::XML::Node::lastChild(), sp_repr_css_attr(), and sp_repr_css_property().
Referenced by addShadedFill(), and mergePath().
void Inkscape::Extension::Internal::SvgBuilder::startGroup | ( | GfxState * | state, |
double * | bbox, | ||
GfxColorSpace * | blending_color_space, | ||
bool | isolated, | ||
bool | knockout, | ||
bool | for_softmask | ||
) |
Starts building a new transparency group.
Definition at line 2409 of file svg-builder.cpp.
References _createMask(), _mask_groups, and _pushContainer().
Referenced by PdfParser::doShowText().
void Inkscape::Extension::Internal::SvgBuilder::updateFont | ( | GfxState * | state, |
std::shared_ptr< CairoFont > | cairo_font, | ||
bool | flip | ||
) |
Updates _css_font according to the font set in parameter state.
Definition at line 1305 of file svg-builder.cpp.
References _cairo_font, _css_font, _css_font_size, _font_specification, _font_strategies, _invalidated_strategy, _invalidated_style, AS_SHAPES, AS_SUB, AS_TEXT, DELETE_TEXT, sp_repr_css_attr_new(), sp_repr_css_attr_unref(), sp_repr_css_set_property(), and updateTextMatrix().
Referenced by PdfParser::doUpdateFont().
void Inkscape::Extension::Internal::SvgBuilder::updateStyle | ( | GfxState * | state | ) |
Sets _invalidated_style to true to indicate that styles have to be updated Used for text output when glyphs are buffered till a font change.
Definition at line 1296 of file svg-builder.cpp.
References _in_text_object, and _invalidated_style.
Referenced by PdfParser::opSetDash(), PdfParser::opSetFillCMYKColor(), PdfParser::opSetFillColor(), PdfParser::opSetFillColorN(), PdfParser::opSetFillColorSpace(), PdfParser::opSetFillGray(), PdfParser::opSetFillRGBColor(), PdfParser::opSetLineCap(), PdfParser::opSetLineJoin(), PdfParser::opSetLineWidth(), PdfParser::opSetMiterLimit(), PdfParser::opSetStrokeCMYKColor(), PdfParser::opSetStrokeColor(), PdfParser::opSetStrokeColorN(), PdfParser::opSetStrokeColorSpace(), PdfParser::opSetStrokeGray(), PdfParser::opSetStrokeRGBColor(), and PdfParser::opSetTextRender().
void Inkscape::Extension::Internal::SvgBuilder::updateTextMatrix | ( | GfxState * | state, |
bool | flip | ||
) |
Flushes the buffered characters.
Definition at line 1411 of file svg-builder.cpp.
References _flushText(), _text_matrix, and ctmToAffine().
Referenced by PdfParser::opSetHorizScaling(), PdfParser::opSetTextMatrix(), and updateFont().
void Inkscape::Extension::Internal::SvgBuilder::updateTextPosition | ( | double | tx, |
double | ty | ||
) |
Updates current text position.
Definition at line 1404 of file svg-builder.cpp.
References _text_position.
Referenced by PdfParser::opBeginText(), PdfParser::opMoveSetShowText(), PdfParser::opMoveShowText(), PdfParser::opSetTextMatrix(), PdfParser::opTextMove(), PdfParser::opTextMoveSet(), and PdfParser::opTextNextLine().
void Inkscape::Extension::Internal::SvgBuilder::updateTextShift | ( | GfxState * | state, |
double | shift | ||
) |
Shifts the current text position by the given amount (specified in text space)
Definition at line 1392 of file svg-builder.cpp.
References _text_position, and shift().
Referenced by PdfParser::opShowSpaceText().
|
private |
Definition at line 216 of file svg-builder.h.
Referenced by _flushText(), _flushTextPath(), _renderText(), and addChar().
|
private |
Definition at line 217 of file svg-builder.h.
Referenced by addChar(), and beginString().
|
private |
Definition at line 277 of file svg-builder.h.
Referenced by pushPage(), setDocumentSize(), setMargins(), and setPageMode().
|
private |
Definition at line 260 of file svg-builder.h.
Referenced by addChar(), and updateFont().
|
private |
Definition at line 227 of file svg-builder.h.
Referenced by restoreState(), and setClip().
|
private |
Definition at line 290 of file svg-builder.h.
Referenced by _getClip(), _init(), _popContainer(), _pushContainer(), _setClipPath(), _shouldClip(), addClippedFill(), popGroup(), restoreState(), saveState(), setClip(), and ~SvgBuilder().
|
private |
Definition at line 291 of file svg-builder.h.
Referenced by _getClip(), _setClipPath(), and endTextObject().
|
private |
Definition at line 292 of file svg-builder.h.
Referenced by _flushText(), and endTextObject().
|
private |
Definition at line 273 of file svg-builder.h.
Referenced by _addToContainer(), _init(), _popContainer(), _popGroup(), _pushContainer(), _pushGroup(), addShadedFill(), beginLayer(), beginMarkedContent(), cropPage(), finishGroup(), mergePath(), pushPage(), setAsLayer(), setGroupOpacity(), shouldMergePath(), SvgBuilder(), and SvgBuilder().
|
private |
Definition at line 249 of file svg-builder.h.
Referenced by _init(), addChar(), and updateFont().
|
private |
Definition at line 248 of file svg-builder.h.
Referenced by addChar(), and updateFont().
|
private |
Definition at line 268 of file svg-builder.h.
Referenced by _createClip(), _createGradient(), _createMask(), _createTilingPattern(), _flushText(), _getColorProfile(), _getGradientNode(), _shouldClip(), beginLayer(), beginMarkedContent(), popGroup(), pushPage(), setMetadata(), SvgBuilder(), and SvgBuilder().
|
private |
Definition at line 269 of file svg-builder.h.
Referenced by _createImage(), SvgBuilder(), and SvgBuilder().
|
private |
Definition at line 257 of file svg-builder.h.
Referenced by _createImage(), and setEmbedImages().
|
private |
Definition at line 250 of file svg-builder.h.
Referenced by addChar(), and updateFont().
|
private |
Definition at line 247 of file svg-builder.h.
Referenced by setFontStrategies(), and updateFont().
|
private |
Definition at line 265 of file svg-builder.h.
|
private |
Definition at line 254 of file svg-builder.h.
Referenced by _flushText(), _flushTextPath(), _flushTextText(), addChar(), and beginString().
|
private |
Definition at line 275 of file svg-builder.h.
Referenced by _createPattern(), _init(), _renderText(), setDocumentSize(), and setMargins().
|
private |
Definition at line 287 of file svg-builder.h.
Referenced by addColorProfile(), and convertGfxColor().
|
private |
Definition at line 288 of file svg-builder.h.
Referenced by _getColorProfile().
|
private |
Definition at line 262 of file svg-builder.h.
Referenced by _init(), beforeStateChange(), beginTextObject(), endTextObject(), and updateStyle().
|
private |
Definition at line 264 of file svg-builder.h.
Referenced by beginString(), and updateFont().
|
private |
Definition at line 263 of file svg-builder.h.
Referenced by _init(), addChar(), beginTextObject(), updateFont(), and updateStyle().
|
private |
Definition at line 267 of file svg-builder.h.
Referenced by _createMask(), SvgBuilder(), and SvgBuilder().
|
private |
Definition at line 226 of file svg-builder.h.
Referenced by restoreState(), and startGroup().
|
private |
Definition at line 225 of file svg-builder.h.
Referenced by _init(), _popContainer(), _pushContainer(), beginLayer(), beginMarkedContent(), and endLayer().
|
private |
Definition at line 285 of file svg-builder.h.
Referenced by addOptionalGroup(), beginMarkedContent(), and pushPage().
|
private |
Definition at line 278 of file svg-builder.h.
Referenced by pushPage(), setDocumentSize(), and setMargins().
|
private |
Definition at line 283 of file svg-builder.h.
Referenced by _flushText(), _getClip(), _setTransform(), addShadedFill(), cropPage(), pushPage(), and setMargins().
|
private |
Definition at line 280 of file svg-builder.h.
Referenced by pushPage(), and setDocumentSize().
|
private |
Definition at line 279 of file svg-builder.h.
Referenced by pushPage(), and setDocumentSize().
|
private |
Definition at line 282 of file svg-builder.h.
Referenced by pushPage().
|
private |
Definition at line 281 of file svg-builder.h.
Referenced by pushPage().
|
private |
Definition at line 295 of file svg-builder.h.
Referenced by _createClip().
|
private |
Definition at line 272 of file svg-builder.h.
Referenced by _popContainer(), _popGroup(), beginLayer(), cropPage(), pushPage(), setDocumentSize(), SvgBuilder(), and SvgBuilder().
|
private |
Definition at line 252 of file svg-builder.h.
Referenced by _flushText(), and updateTextMatrix().
|
private |
Definition at line 253 of file svg-builder.h.
Referenced by addChar(), updateTextPosition(), and updateTextShift().
|
private |
Definition at line 251 of file svg-builder.h.
|
private |
Definition at line 274 of file svg-builder.h.
Referenced by _init(), _renderText(), pushPage(), setDocumentSize(), and setMargins().
|
private |
Definition at line 271 of file svg-builder.h.
Referenced by _addStopToGradient(), _addToContainer(), _createClip(), _createGradient(), _createImage(), _createMask(), _createTilingPattern(), _flushTextText(), _getColorProfile(), _pushContainer(), pushPage(), SvgBuilder(), and SvgBuilder().
|
private |
Definition at line 270 of file svg-builder.h.
Referenced by _createTilingPattern(), SvgBuilder(), and SvgBuilder().