NovaSVG 0.10.0
A header-only SVG library
Loading...
Searching...
No Matches
novasvg::SVGTextPositioningElement Class Reference

#include <svgelement.h>

Inheritance diagram for novasvg::SVGTextPositioningElement:
Collaboration diagram for novasvg::SVGTextPositioningElement:

Public Member Functions

 SVGTextPositioningElement (Document *document, ElementID id)
 
bool isTextPositioningElement () const final
 
const LengthList & x () const
 
const LengthList & y () const
 
const LengthList & dx () const
 
const LengthList & dy () const
 
const NumberList & rotate () const
 
const SVGLength & textLength () const
 
LengthAdjust lengthAdjust () const
 
const Font & font () const
 
const SVGPaintServer & fill () const
 
const SVGPaintServer & stroke () const
 
bool isVerticalWritingMode () const
 
bool isUprightTextOrientation () const
 
float stroke_width () const
 
float letter_spacing () const
 
float word_spacing () const
 
float baseline_offset () const
 
AlignmentBaseline alignment_baseline () const
 
DominantBaseline dominant_baseline () const
 
TextAnchor text_anchor () const
 
WhiteSpace white_space () const
 
Direction direction () const
 
void layoutElement (const SVGLayoutState &state) override
 
- 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 ()
 
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
 
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)
 

Detailed Description

Definition at line 2097 of file svgelement.h.

Constructor & Destructor Documentation

◆ SVGTextPositioningElement()

NOVASVG_INLINE novasvg::SVGTextPositioningElement::SVGTextPositioningElement ( Document *  document,
ElementID  id 
)

Definition at line 4293 of file svgelement.h.

References novasvg::SVGElement::addProperty().

Member Function Documentation

◆ alignment_baseline()

AlignmentBaseline novasvg::SVGTextPositioningElement::alignment_baseline ( ) const
inline

Definition at line 2123 of file svgelement.h.

Referenced by novasvg::calculateBaselineOffset().

◆ baseline_offset()

float novasvg::SVGTextPositioningElement::baseline_offset ( ) const
inline

Definition at line 2122 of file svgelement.h.

Referenced by novasvg::calculateBaselineOffset().

◆ direction()

Direction novasvg::SVGTextPositioningElement::direction ( ) const
inline

◆ dominant_baseline()

DominantBaseline novasvg::SVGTextPositioningElement::dominant_baseline ( ) const
inline

Definition at line 2124 of file svgelement.h.

Referenced by novasvg::resolveDominantBaseline().

◆ dx()

const LengthList & novasvg::SVGTextPositioningElement::dx ( ) const
inline

Definition at line 2105 of file svgelement.h.

◆ dy()

const LengthList & novasvg::SVGTextPositioningElement::dy ( ) const
inline

Definition at line 2106 of file svgelement.h.

◆ fill()

const SVGPaintServer & novasvg::SVGTextPositioningElement::fill ( ) const
inline

Definition at line 2113 of file svgelement.h.

Referenced by novasvg::SVGTextElement::render().

◆ font()

const Font & novasvg::SVGTextPositioningElement::font ( ) const
inline

◆ isTextPositioningElement()

bool novasvg::SVGTextPositioningElement::isTextPositioningElement ( ) const
inlinefinalvirtual

Reimplemented from novasvg::SVGNode.

Definition at line 2101 of file svgelement.h.

◆ isUprightTextOrientation()

bool novasvg::SVGTextPositioningElement::isUprightTextOrientation ( ) const
inline

Definition at line 2117 of file svgelement.h.

◆ isVerticalWritingMode()

bool novasvg::SVGTextPositioningElement::isVerticalWritingMode ( ) const
inline

Definition at line 2116 of file svgelement.h.

Referenced by novasvg::handleTextChunk(), and novasvg::resolveDominantBaseline().

◆ layoutElement()

NOVASVG_INLINE void novasvg::SVGTextPositioningElement::layoutElement ( const SVGLayoutState &  state)
overridevirtual

◆ lengthAdjust()

LengthAdjust novasvg::SVGTextPositioningElement::lengthAdjust ( ) const
inline

Definition at line 2110 of file svgelement.h.

Referenced by novasvg::handleTextChunk().

◆ letter_spacing()

float novasvg::SVGTextPositioningElement::letter_spacing ( ) const
inline

Definition at line 2120 of file svgelement.h.

◆ rotate()

const NumberList & novasvg::SVGTextPositioningElement::rotate ( ) const
inline

Definition at line 2107 of file svgelement.h.

◆ stroke()

const SVGPaintServer & novasvg::SVGTextPositioningElement::stroke ( ) const
inline

Definition at line 2114 of file svgelement.h.

Referenced by novasvg::SVGTextElement::render().

◆ stroke_width()

float novasvg::SVGTextPositioningElement::stroke_width ( ) const
inline

Definition at line 2119 of file svgelement.h.

Referenced by novasvg::SVGTextElement::render().

◆ text_anchor()

TextAnchor novasvg::SVGTextPositioningElement::text_anchor ( ) const
inline

◆ textLength()

const SVGLength & novasvg::SVGTextPositioningElement::textLength ( ) const
inline

Definition at line 2109 of file svgelement.h.

Referenced by novasvg::handleTextChunk().

◆ white_space()

WhiteSpace novasvg::SVGTextPositioningElement::white_space ( ) const
inline

Definition at line 2126 of file svgelement.h.

◆ word_spacing()

float novasvg::SVGTextPositioningElement::word_spacing ( ) const
inline

Definition at line 2121 of file svgelement.h.

◆ x()

const LengthList & novasvg::SVGTextPositioningElement::x ( ) const
inline

Definition at line 2103 of file svgelement.h.

◆ y()

const LengthList & novasvg::SVGTextPositioningElement::y ( ) const
inline

Definition at line 2104 of file svgelement.h.


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