|
NovaSVG 0.10.0
A header-only SVG library
|
#include <svgelement.h>


Public Member Functions | |
| SVGClipPathElement (Document *document) | |
| const SVGEnumeration< Units > & | clipPathUnits () const |
| Rect | clipBoundingBox (const SVGElement *element) const |
| void | applyClipMask (SVGRenderState &state) const |
| void | applyClipPath (SVGRenderState &state) const |
| bool | requiresMasking () const |
Public Member Functions inherited from novasvg::SVGGraphicsElement | |
| SVGGraphicsElement (Document *document, ElementID id) | |
| bool | isGraphicsElement () const final |
| const SVGTransform & | transform () const |
| Transform | localTransform () const override |
| SVGPaintServer | getPaintServer (const Paint &paint, float opacity) const |
| StrokeData | getStrokeData (const SVGLayoutState &state) const |
Public Member Functions inherited from novasvg::SVGElement | |
| SVGElement (Document *document, ElementID id) | |
| virtual | ~SVGElement ()=default |
| bool | hasAttribute (std::string_view name) const |
| const std::string & | getAttribute (std::string_view name) const |
| bool | setAttribute (std::string_view name, const std::string &value) |
| const Attribute * | findAttribute (PropertyID id) const |
| bool | hasAttribute (PropertyID id) const |
| const std::string & | getAttribute (PropertyID id) const |
| bool | setAttribute (int specificity, PropertyID id, const std::string &value) |
| void | setAttributes (const AttributeList &attributes) |
| bool | setAttribute (const Attribute &attribute) |
| virtual void | parseAttribute (PropertyID id, const std::string &value) |
| SVGElement * | previousElement () const |
| SVGElement * | nextElement () const |
| SVGNode * | addChild (std::unique_ptr< SVGNode > child) |
| SVGNode * | firstChild () const |
| SVGNode * | lastChild () const |
| ElementID | id () const |
| const AttributeList & | attributes () const |
| const SVGPropertyList & | properties () const |
| const SVGNodeList & | children () const |
| virtual Rect | fillBoundingBox () const |
| virtual Rect | strokeBoundingBox () const |
| virtual Rect | paintBoundingBox () const |
| SVGMarkerElement * | getMarker (std::string_view id) const |
| SVGClipPathElement * | getClipper (std::string_view id) const |
| SVGMaskElement * | getMasker (std::string_view id) const |
| SVGFilterElement * | getFilterElement (std::string_view id) const |
| SVGPaintElement * | getPainter (std::string_view id) const |
| SVGElement * | elementFromPoint (float x, float y) |
| template<typename T > | |
| void | transverse (T callback) |
| void | addProperty (SVGProperty &value) |
| SVGProperty * | getProperty (PropertyID id) const |
| Size | currentViewportSize () const |
| float | font_size () const |
| void | cloneChildren (SVGElement *parentElement) const |
| std::unique_ptr< SVGNode > | clone (bool deep) const final |
| virtual void | build () |
| virtual void | layoutElement (const SVGLayoutState &state) |
| void | layoutChildren (SVGLayoutState &state) |
| virtual void | layout (SVGLayoutState &state) |
| void | renderChildren (SVGRenderState &state) const |
| virtual void | render (SVGRenderState &state) const |
| virtual std::shared_ptr< Canvas > | applyFilterPrimitive (SVGFilterContext &context) const |
| bool | isDisplayNone () const |
| bool | isOverflowHidden () const |
| bool | isVisibilityHidden () const |
| bool | isHiddenElement () const |
| bool | isPointableElement () const |
| const SVGClipPathElement * | clipper () const |
| const SVGMaskElement * | masker () const |
| const SVGFilterElement * | filterElement () const |
| float | opacity () const |
| MixBlendMode | mixBlendMode () const |
| bool | isElement () const final |
Public Member Functions inherited from novasvg::SVGNode | |
| SVGNode (Document *document) | |
| virtual | ~SVGNode ()=default |
| virtual bool | isTextNode () const |
| virtual bool | isPaintElement () const |
| virtual bool | isGeometryElement () const |
| virtual bool | isTextPositioningElement () const |
| Document * | document () const |
| SVGRootElement * | rootElement () const |
| SVGElement * | parentElement () const |
| void | setParentElement (SVGElement *parent) |
| bool | isRootElement () const |
Additional Inherited Members | |
Static Public Member Functions inherited from novasvg::SVGElement | |
| static std::unique_ptr< SVGElement > | create (Document *document, ElementID id) |
Definition at line 1303 of file svgelement.h.
| NOVASVG_INLINE novasvg::SVGClipPathElement::SVGClipPathElement | ( | Document * | document | ) |
Definition at line 7284 of file svgelement.h.
References novasvg::SVGElement::addProperty().
| NOVASVG_INLINE void novasvg::SVGClipPathElement::applyClipMask | ( | SVGRenderState & | state | ) | const |
Definition at line 7305 of file svgelement.h.
References applyClipMask(), novasvg::SVGElement::clipper(), novasvg::Clipping, novasvg::SVGGraphicsElement::localTransform(), novasvg::ObjectBoundingBox, novasvg::SVGElement::renderChildren(), and novasvg::SVGEnumeration< Enum >::value().
Referenced by applyClipMask(), novasvg::SVGMaskElement::applyMask(), and novasvg::SVGRenderState::endGroup().
| NOVASVG_INLINE void novasvg::SVGClipPathElement::applyClipPath | ( | SVGRenderState & | state | ) | const |
Definition at line 7333 of file svgelement.h.
References novasvg::SVGElement::children(), novasvg::Rect::Empty, novasvg::Transform::Identity, novasvg::SVGGraphicsElement::localTransform(), novasvg::Transform::multiply(), novasvg::NonZero, novasvg::ObjectBoundingBox, novasvg::toSVGElement(), novasvg::toSVGGeometryElement(), novasvg::Use, and novasvg::SVGEnumeration< Enum >::value().
Referenced by novasvg::SVGRenderState::beginGroup().
| NOVASVG_INLINE Rect novasvg::SVGClipPathElement::clipBoundingBox | ( | const SVGElement * | element | ) | const |
Definition at line 7291 of file svgelement.h.
References clipBoundingBox(), novasvg::SVGElement::fillBoundingBox(), novasvg::Rect::h, novasvg::SVGGraphicsElement::localTransform(), novasvg::Transform::mapRect(), novasvg::ObjectBoundingBox, novasvg::SVGElement::paintBoundingBox(), novasvg::SVGEnumeration< Enum >::value(), novasvg::Rect::w, novasvg::Rect::x, and novasvg::Rect::y.
Referenced by clipBoundingBox(), and novasvg::SVGElement::paintBoundingBox().
|
inline |
Definition at line 1307 of file svgelement.h.
| NOVASVG_INLINE bool novasvg::SVGClipPathElement::requiresMasking | ( | ) | const |
Definition at line 7364 of file svgelement.h.
References novasvg::SVGElement::children(), novasvg::SVGElement::clipper(), novasvg::toSVGElement(), novasvg::toSVGGeometryElement(), and novasvg::Use.
Referenced by novasvg::SVGBlendInfo::requiresCompositing().