LibreOffice Module drawinglayer (master) 1
|
TextDecoratedPortionPrimitive2D class. More...
#include <textdecoratedprimitive2d.hxx>
Public Member Functions | |
TextDecoratedPortionPrimitive2D (const basegfx::B2DHomMatrix &rNewTransform, const OUString &rText, sal_Int32 nTextPosition, sal_Int32 nTextLength, std::vector< double > &&rDXArray, std::vector< sal_Bool > &&rKashidaArray, const attribute::FontAttribute &rFontAttribute, const css::lang::Locale &rLocale, const basegfx::BColor &rFontColor, const Color &rFillColor, const basegfx::BColor &rOverlineColor, const basegfx::BColor &rTextlineColor, TextLine eFontOverline=TEXT_LINE_NONE, TextLine eFontUnderline=TEXT_LINE_NONE, bool bUnderlineAbove=false, TextStrikeout eTextStrikeout=TEXT_STRIKEOUT_NONE, bool bWordLineMode=false, TextEmphasisMark eTextEmphasisMark=TEXT_FONT_EMPHASIS_MARK_NONE, bool bEmphasisMarkAbove=true, bool bEmphasisMarkBelow=false, TextRelief eTextRelief=TEXT_RELIEF_NONE, bool bShadow=false) | |
constructor More... | |
TextLine | getFontOverline () const |
data read access More... | |
TextLine | getFontUnderline () const |
TextStrikeout | getTextStrikeout () const |
TextEmphasisMark | getTextEmphasisMark () const |
TextRelief | getTextRelief () const |
const basegfx::BColor & | getOverlineColor () const |
const basegfx::BColor & | getTextlineColor () const |
bool | getUnderlineAbove () const |
bool | getWordLineMode () const |
bool | getEmphasisMarkAbove () const |
bool | getEmphasisMarkBelow () const |
bool | getShadow () const |
virtual bool | operator== (const BasePrimitive2D &rPrimitive) const override |
compare operator More... | |
virtual basegfx::B2DRange | getB2DRange (const geometry::ViewInformation2D &rViewInformation) const override |
get range More... | |
virtual sal_uInt32 | getPrimitive2DID () const override |
provide unique ID More... | |
Public Member Functions inherited from drawinglayer::primitive2d::TextSimplePortionPrimitive2D | |
TextSimplePortionPrimitive2D (basegfx::B2DHomMatrix aNewTransform, OUString aText, sal_Int32 nTextPosition, sal_Int32 nTextLength, std::vector< double > &&rDXArray, std::vector< sal_Bool > &&rKashidaArray, attribute::FontAttribute aFontAttribute, css::lang::Locale aLocale, const basegfx::BColor &rFontColor, bool bFilled=false, tools::Long nWidthToFill=0, const Color &rTextFillColor=COL_TRANSPARENT) | |
constructor More... | |
void | getTextOutlinesAndTransformation (basegfx::B2DPolyPolygonVector &rTarget, basegfx::B2DHomMatrix &rTransformation) const |
get text outlines as polygons and their according ObjectTransformation. More... | |
const basegfx::B2DHomMatrix & | getTextTransform () const |
data read access More... | |
const OUString & | getText () const |
sal_Int32 | getTextPosition () const |
sal_Int32 | getTextLength () const |
const ::std::vector< double > & | getDXArray () const |
const ::std::vector< sal_Bool > & | getKashidaArray () const |
const attribute::FontAttribute & | getFontAttribute () const |
const css::lang::Locale & | getLocale () const |
const basegfx::BColor & | getFontColor () const |
const Color & | getTextFillColor () const |
bool | isFilled () const |
tools::Long | getWidthToFill () const |
virtual bool | operator== (const BasePrimitive2D &rPrimitive) const override |
compare operator More... | |
virtual basegfx::B2DRange | getB2DRange (const geometry::ViewInformation2D &rViewInformation) const override |
get range More... | |
virtual sal_uInt32 | getPrimitive2DID () const override |
provide unique ID More... | |
Public Member Functions inherited from drawinglayer::primitive2d::BufferedDecompositionPrimitive2D | |
BufferedDecompositionPrimitive2D () | |
virtual void | get2DDecomposition (Primitive2DDecompositionVisitor &rVisitor, const geometry::ViewInformation2D &rViewInformation) const override |
The getDecomposition default implementation will on demand use create2DDecomposition() if maBuffered2DDecomposition is empty. More... | |
void | setTransparenceForShadow (sal_uInt16 nTransparenceForShadow) |
sal_uInt16 | getTransparenceForShadow () const |
Public Member Functions inherited from drawinglayer::primitive2d::BasePrimitive2D | |
BasePrimitive2D () | |
virtual | ~BasePrimitive2D () override |
virtual bool | operator== (const BasePrimitive2D &rPrimitive) const |
the ==operator is mainly needed to allow testing newly-created primitives against their last incarnation which buffers/holds the made decompositions. More... | |
bool | operator!= (const BasePrimitive2D &rPrimitive) const |
virtual basegfx::B2DRange | getB2DRange (const geometry::ViewInformation2D &rViewInformation) const |
The default implementation will use getDecomposition results to create the range. More... | |
virtual sal_uInt32 | getPrimitive2DID () const =0 |
provide unique ID for fast identifying of known primitive implementations in renderers. More... | |
virtual void | get2DDecomposition (Primitive2DDecompositionVisitor &rVisitor, const geometry::ViewInformation2D &rViewInformation) const |
The default implementation will return an empty sequence. More... | |
Primitive2DContainer | getDecomposition (const css::uno::Sequence< css::beans::PropertyValue > &rViewParameters) |
The getDecomposition implementation for UNO API will use getDecomposition from this implementation. More... | |
css::geometry::RealRectangle2D | getRange (const css::uno::Sequence< css::beans::PropertyValue > &rViewParameters) |
The getRange implementation for UNO API will use getRange from this implementation. More... | |
virtual sal_Int64 | estimateUsage () |
Public Member Functions inherited from salhelper::SimpleReferenceObject | |
SimpleReferenceObject () | |
void | acquire () |
void | release () |
Private Member Functions | |
void | impCreateGeometryContent (Primitive2DContainer &rTarget, basegfx::utils::B2DHomMatrixBufferedOnDemandDecompose const &rDecTrans, const OUString &rText, sal_Int32 nTextPosition, sal_Int32 nTextLength, const ::std::vector< double > &rDXArray, const ::std::vector< sal_Bool > &rKashidaArray, const attribute::FontAttribute &rFontAttribute) const |
helper methods More... | |
virtual void | create2DDecomposition (Primitive2DContainer &rContainer, const geometry::ViewInformation2D &rViewInformation) const override |
local decomposition. More... | |
Private Attributes | |
basegfx::BColor | maOverlineColor |
decoration definitions More... | |
basegfx::BColor | maTextlineColor |
TextLine | meFontOverline |
TextLine | meFontUnderline |
TextStrikeout | meTextStrikeout |
TextEmphasisMark | meTextEmphasisMark |
TextRelief | meTextRelief |
bool | mbUnderlineAbove: 1 |
bool | mbWordLineMode: 1 |
bool | mbEmphasisMarkAbove: 1 |
bool | mbEmphasisMarkBelow: 1 |
bool | mbShadow: 1 |
Additional Inherited Members | |
Static Public Member Functions inherited from salhelper::SimpleReferenceObject | |
static void * | operator new (std::size_t nSize) |
static void * | operator new (std::size_t nSize, std::nothrow_t const &rNothrow) |
static void | operator delete (void *pPtr) |
static void | operator delete (void *pPtr, std::nothrow_t const &rNothrow) |
virtual void | create2DDecomposition (Primitive2DContainer &rContainer, const geometry::ViewInformation2D &rViewInformation) const override |
local decomposition. More... | |
Protected Member Functions inherited from drawinglayer::primitive2d::BufferedDecompositionPrimitive2D | |
const Primitive2DContainer & | getBuffered2DDecomposition () const |
access methods to maBuffered2DDecomposition. More... | |
void | setBuffered2DDecomposition (Primitive2DContainer &&rNew) |
virtual void | create2DDecomposition (Primitive2DContainer &rContainer, const geometry::ViewInformation2D &rViewInformation) const =0 |
method which is to be used to implement the local decomposition of a 2D primitive. More... | |
Protected Member Functions inherited from salhelper::SimpleReferenceObject | |
virtual | ~SimpleReferenceObject () COVERITY_NOEXCEPT_FALSE |
Protected Attributes inherited from salhelper::SimpleReferenceObject | |
oslInterlockedCount | m_nCount |
TextDecoratedPortionPrimitive2D class.
This primitive expands the TextSimplePortionPrimitive2D by common decorations used in the office. It can be decomposed and will create a TextSimplePortionPrimitive2D and all the contained decorations (if used) as geometry.
Definition at line 40 of file textdecoratedprimitive2d.hxx.
drawinglayer::primitive2d::TextDecoratedPortionPrimitive2D::TextDecoratedPortionPrimitive2D | ( | const basegfx::B2DHomMatrix & | rNewTransform, |
const OUString & | rText, | ||
sal_Int32 | nTextPosition, | ||
sal_Int32 | nTextLength, | ||
std::vector< double > && | rDXArray, | ||
std::vector< sal_Bool > && | rKashidaArray, | ||
const attribute::FontAttribute & | rFontAttribute, | ||
const css::lang::Locale & | rLocale, | ||
const basegfx::BColor & | rFontColor, | ||
const Color & | rFillColor, | ||
const basegfx::BColor & | rOverlineColor, | ||
const basegfx::BColor & | rTextlineColor, | ||
TextLine | eFontOverline = TEXT_LINE_NONE , |
||
TextLine | eFontUnderline = TEXT_LINE_NONE , |
||
bool | bUnderlineAbove = false , |
||
TextStrikeout | eTextStrikeout = TEXT_STRIKEOUT_NONE , |
||
bool | bWordLineMode = false , |
||
TextEmphasisMark | eTextEmphasisMark = TEXT_FONT_EMPHASIS_MARK_NONE , |
||
bool | bEmphasisMarkAbove = true , |
||
bool | bEmphasisMarkBelow = false , |
||
TextRelief | eTextRelief = TEXT_RELIEF_NONE , |
||
bool | bShadow = false |
||
) |
constructor
rNewTransform | TextSimplePortionPrimitive2D parameters |
rOverlineColor | local parameters |
Definition at line 292 of file textdecoratedprimitive2d.cxx.
|
overrideprivatevirtual |
local decomposition.
Reimplemented from drawinglayer::primitive2d::TextSimplePortionPrimitive2D.
Definition at line 154 of file textdecoratedprimitive2d.cxx.
References drawinglayer::primitive2d::Primitive2DContainer::append(), bHasShadow, basegfx::utils::createTranslateB2DHomMatrix(), drawinglayer::primitive2d::TextBreakupHelper::extractResult(), drawinglayer::primitive2d::TextSimplePortionPrimitive2D::getDXArray(), drawinglayer::primitive2d::TextSimplePortionPrimitive2D::getFontAttribute(), drawinglayer::primitive2d::TextSimplePortionPrimitive2D::getFontColor(), drawinglayer::primitive2d::TextSimplePortionPrimitive2D::getKashidaArray(), basegfx::utils::B2DHomMatrixBufferedOnDemandDecompose::getRotate(), basegfx::utils::B2DHomMatrixBufferedOnDemandDecompose::getScale(), getShadow(), drawinglayer::primitive2d::TextSimplePortionPrimitive2D::getText(), drawinglayer::primitive2d::TextSimplePortionPrimitive2D::getTextLength(), drawinglayer::primitive2d::TextSimplePortionPrimitive2D::getTextPosition(), getTextRelief(), drawinglayer::primitive2d::TextSimplePortionPrimitive2D::getTextTransform(), basegfx::utils::B2DHomMatrixBufferedOnDemandDecompose::getTranslate(), getWordLineMode(), basegfx::Tuple2D< typename TYPE >::getY(), impCreateGeometryContent(), drawinglayer::primitive2d::Outline, drawinglayer::primitive2d::ReliefEmbossed, drawinglayer::primitive2d::ReliefEmbossedDefault, drawinglayer::primitive2d::ReliefEngraved, drawinglayer::primitive2d::ReliefEngravedDefault, drawinglayer::primitive2d::TEXT_RELIEF_ENGRAVED, drawinglayer::primitive2d::TEXT_RELIEF_NONE, and drawinglayer::primitive2d::Word.
|
overridevirtual |
get range
Reimplemented from drawinglayer::primitive2d::TextSimplePortionPrimitive2D.
Definition at line 360 of file textdecoratedprimitive2d.cxx.
References drawinglayer::primitive2d::BasePrimitive2D::getB2DRange(), drawinglayer::primitive2d::TextSimplePortionPrimitive2D::getB2DRange(), getFontOverline(), getFontUnderline(), getShadow(), getTextEmphasisMark(), getTextRelief(), getTextStrikeout(), drawinglayer::primitive2d::TEXT_FONT_EMPHASIS_MARK_NONE, drawinglayer::primitive2d::TEXT_LINE_NONE, drawinglayer::primitive2d::TEXT_RELIEF_NONE, and drawinglayer::primitive2d::TEXT_STRIKEOUT_NONE.
|
inline |
Definition at line 111 of file textdecoratedprimitive2d.hxx.
Referenced by drawinglayer::primitive2d::TextBreakupHelper::breakupPortion(), operator==(), and drawinglayer::processor2d::VclProcessor2D::RenderTextSimpleOrDecoratedPortionPrimitive2D().
|
inline |
Definition at line 112 of file textdecoratedprimitive2d.hxx.
Referenced by drawinglayer::primitive2d::TextBreakupHelper::breakupPortion(), operator==(), and drawinglayer::processor2d::VclProcessor2D::RenderTextSimpleOrDecoratedPortionPrimitive2D().
|
inline |
data read access
Definition at line 102 of file textdecoratedprimitive2d.hxx.
Referenced by drawinglayer::primitive2d::TextBreakupHelper::breakupPortion(), getB2DRange(), impCreateGeometryContent(), operator==(), and drawinglayer::processor2d::VclProcessor2D::RenderTextSimpleOrDecoratedPortionPrimitive2D().
|
inline |
|
inline |
|
overridevirtual |
provide unique ID
Reimplemented from drawinglayer::primitive2d::TextSimplePortionPrimitive2D.
Definition at line 384 of file textdecoratedprimitive2d.cxx.
References PRIMITIVE2D_ID_TEXTDECORATEDPORTIONPRIMITIVE2D.
|
inline |
|
inline |
Definition at line 105 of file textdecoratedprimitive2d.hxx.
Referenced by drawinglayer::primitive2d::TextBreakupHelper::breakupPortion(), getB2DRange(), operator==(), and drawinglayer::processor2d::VclProcessor2D::RenderTextSimpleOrDecoratedPortionPrimitive2D().
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 109 of file textdecoratedprimitive2d.hxx.
Referenced by drawinglayer::primitive2d::TextBreakupHelper::breakupPortion(), and operator==().
|
inline |
Definition at line 110 of file textdecoratedprimitive2d.hxx.
Referenced by drawinglayer::primitive2d::TextBreakupHelper::breakupPortion(), create2DDecomposition(), operator==(), and drawinglayer::processor2d::VclProcessor2D::RenderTextSimpleOrDecoratedPortionPrimitive2D().
|
private |
helper methods
Definition at line 32 of file textdecoratedprimitive2d.cxx.
References basegfx::fTools::equal(), basegfx::fTools::equalZero(), basegfx::utils::B2DHomMatrixBufferedOnDemandDecompose::getB2DHomMatrix(), drawinglayer::primitive2d::TextSimplePortionPrimitive2D::getFontAttribute(), drawinglayer::primitive2d::TextSimplePortionPrimitive2D::getFontColor(), getFontOverline(), getFontUnderline(), drawinglayer::primitive2d::TextSimplePortionPrimitive2D::getLocale(), getOverlineColor(), drawinglayer::primitive2d::TextLayouterDevice::getOverlineHeight(), drawinglayer::primitive2d::TextLayouterDevice::getOverlineOffset(), basegfx::utils::B2DHomMatrixBufferedOnDemandDecompose::getScale(), drawinglayer::primitive2d::TextLayouterDevice::getStrikeoutOffset(), getTextlineColor(), getTextStrikeout(), drawinglayer::primitive2d::TextLayouterDevice::getTextWidth(), drawinglayer::primitive2d::TextLayouterDevice::getUnderlineHeight(), drawinglayer::primitive2d::TextLayouterDevice::getUnderlineOffset(), basegfx::Tuple2D< typename TYPE >::getX(), basegfx::Tuple2D< typename TYPE >::getY(), rTarget, drawinglayer::primitive2d::TextLayouterDevice::setFontAttribute(), drawinglayer::primitive2d::TEXT_LINE_NONE, drawinglayer::primitive2d::TEXT_STRIKEOUT_NONE, drawinglayer::primitive2d::TEXT_STRIKEOUT_SLASH, drawinglayer::primitive2d::TEXT_STRIKEOUT_X, and drawinglayer::primitive2d::TextSimplePortionPrimitive2D::TextSimplePortionPrimitive2D().
Referenced by create2DDecomposition().
|
overridevirtual |
compare operator
Reimplemented from drawinglayer::primitive2d::TextSimplePortionPrimitive2D.
Definition at line 334 of file textdecoratedprimitive2d.cxx.
References getEmphasisMarkAbove(), getEmphasisMarkBelow(), getFontOverline(), getFontUnderline(), getOverlineColor(), getShadow(), getTextEmphasisMark(), getTextlineColor(), getTextRelief(), getTextStrikeout(), getUnderlineAbove(), and getWordLineMode().
|
private |
decoration definitions
Definition at line 44 of file textdecoratedprimitive2d.hxx.
|
private |
Definition at line 45 of file textdecoratedprimitive2d.hxx.
|
private |
Definition at line 54 of file textdecoratedprimitive2d.hxx.
|
private |
Definition at line 55 of file textdecoratedprimitive2d.hxx.
|
private |
Definition at line 56 of file textdecoratedprimitive2d.hxx.
|
private |
Definition at line 52 of file textdecoratedprimitive2d.hxx.
|
private |
Definition at line 53 of file textdecoratedprimitive2d.hxx.
|
private |
Definition at line 46 of file textdecoratedprimitive2d.hxx.
|
private |
Definition at line 47 of file textdecoratedprimitive2d.hxx.
|
private |
Definition at line 49 of file textdecoratedprimitive2d.hxx.
|
private |
Definition at line 50 of file textdecoratedprimitive2d.hxx.
|
private |
Definition at line 48 of file textdecoratedprimitive2d.hxx.