67 void addTo(librevenge::RVNGPropertyList &propList, std::string
const &type)
const;
69 friend std::ostream &
operator<<(std::ostream &o,
Line const &line);
108 explicit Script(
float delta=0, librevenge::RVNGUnit deltaUnit=librevenge::RVNG_PERCENT,
int scale=100)
122 return Script(-33,librevenge::RVNG_PERCENT,58);
132 return Script(33,librevenge::RVNG_PERCENT,58);
140 std::string
str(
float fSize)
const;
204 explicit MWAWFont(
int newId=-1,
float sz=12, uint32_t f = 0)
505 void addTo(librevenge::RVNGPropertyList &propList, std::shared_ptr<MWAWFontConverter> fontConverter)
const;
507 void addToListLevel(librevenge::RVNGPropertyList &propList, std::shared_ptr<MWAWFontConverter> fontConverter)
const;
510 std::string
getDebugString(std::shared_ptr<MWAWFontConverter> &converter)
const;
526 int diff =
id() - oth.
id();
527 if (diff != 0)
return diff;
540 if (diff != 0)
return diff;
542 if (diff != 0)
return diff;
544 if (diff != 0)
return diff;
546 if (diff != 0)
return diff;
586 explicit MWAWFontManager(std::shared_ptr<MWAWFontConverter>
const &fontConverter);
597 std::shared_ptr<MWAWFontManagerInternal::State>
m_state;
a font manager which can be used to store fonts, ...
Definition: MWAWFont.hxx:583
int getId(MWAWFont const &font)
returns a span id which can be used to call the list
Definition: MWAWFont.cxx:435
MWAWFontManager & operator=(MWAWFontManager const &)=delete
~MWAWFontManager()
destructor
Definition: MWAWFont.cxx:426
std::shared_ptr< MWAWFontConverter > getFontConverter()
returns the font converter
Definition: MWAWFont.cxx:430
MWAWFontManager(MWAWFontManager const &)=delete
bool getFont(int id, MWAWFont &font) const
returns the font corresponding to an id
Definition: MWAWFont.cxx:446
std::shared_ptr< MWAWFontManagerInternal::State > m_state
the state
Definition: MWAWFont.hxx:597
Class to store font.
Definition: MWAWFont.hxx:44
MWAWVariable< Script > m_scriptPosition
the sub/super script definition
Definition: MWAWFont.hxx:563
void setWidthStreching(float scale=1.0)
sets the text width streching
Definition: MWAWFont.hxx:303
void setUnderlineColor(MWAWColor const &color)
sets the underline color
Definition: MWAWFont.hxx:489
void setFont(int newId)
sets the font id and resets size to the previous size for this font
Definition: MWAWFont.hxx:252
uint32_t flags() const
returns the font flags
Definition: MWAWFont.hxx:320
Line const & getStrikeOut() const
returns the strikeoutline
Definition: MWAWFont.hxx:417
void getBackgroundColor(MWAWColor &c) const
returns the font background color
Definition: MWAWFont.hxx:347
void insert(MWAWFont const &ft)
inserts the set value in the current font
Definition: MWAWFont.hxx:229
void setOverlineWordFlag(bool wordFlag=false)
sets the overline word flag
Definition: MWAWFont.hxx:401
FontBits
the different font bit
Definition: MWAWFont.hxx:190
@ shadowBit
Definition: MWAWFont.hxx:191
@ outlineBit
Definition: MWAWFont.hxx:191
@ boxedBit
Definition: MWAWFont.hxx:195
@ uppercaseBit
Definition: MWAWFont.hxx:192
@ smallCapsBit
Definition: MWAWFont.hxx:192
@ reverseVideoBit
Definition: MWAWFont.hxx:192
@ embossBit
Definition: MWAWFont.hxx:190
@ hiddenBit
Definition: MWAWFont.hxx:191
@ boldBit
Definition: MWAWFont.hxx:190
@ lowercaseBit
Definition: MWAWFont.hxx:193
@ reverseWritingBit
Definition: MWAWFont.hxx:197
@ initialcaseBit
Definition: MWAWFont.hxx:194
@ italicBit
Definition: MWAWFont.hxx:190
@ boxedRoundedBit
Definition: MWAWFont.hxx:196
@ blinkBit
Definition: MWAWFont.hxx:190
@ engraveBit
Definition: MWAWFont.hxx:190
void setStrikeOutStyle(Line::Style style=Line::None, bool doReset=true)
sets the strikeoutline style ( by default, we also reset the style)
Definition: MWAWFont.hxx:427
float size() const
returns the font size
Definition: MWAWFont.hxx:270
void setUnderline(Line const &line)
sets the underline
Definition: MWAWFont.hxx:461
MWAWVariable< MWAWColor > m_backgroundColor
font background color
Definition: MWAWFont.hxx:569
MWAWVariable< MWAWColor > m_color
font color
Definition: MWAWFont.hxx:568
Script const & script() const
returns the script position
Definition: MWAWFont.hxx:308
int id() const
returns the font id
Definition: MWAWFont.hxx:259
void setUnderlineWordFlag(bool wordFlag=false)
sets the underline word flag
Definition: MWAWFont.hxx:479
void addToListLevel(librevenge::RVNGPropertyList &propList, std::shared_ptr< MWAWFontConverter > fontConverter) const
add to the propList to a list level
Definition: MWAWFont.cxx:360
librevenge::RVNGUnit deltaLetterSpacingUnit() const
returns the condensed(negative)/extended(positive) unit
Definition: MWAWFont.hxx:287
void addTo(librevenge::RVNGPropertyList &propList, std::shared_ptr< MWAWFontConverter > fontConverter) const
add to the propList
Definition: MWAWFont.cxx:245
std::string getDebugString(std::shared_ptr< MWAWFontConverter > &converter) const
returns a string which can be used for debugging
Definition: MWAWFont.cxx:181
void setFlags(uint32_t fl)
sets the font attributes bold, ...
Definition: MWAWFont.hxx:325
void setBackgroundColor(MWAWColor color)
sets the font background color
Definition: MWAWFont.hxx:352
int cmp(MWAWFont const &oth) const
a comparison function
Definition: MWAWFont.hxx:524
bool operator==(MWAWFont const &f) const
operator==
Definition: MWAWFont.hxx:513
MWAWVariable< float > m_size
font size
Definition: MWAWFont.hxx:558
void setUnderlineStyle(Line::Style style=Line::None, bool doReset=true)
sets the underline style ( by default, we also reset the style)
Definition: MWAWFont.hxx:466
void setUnderlineType(Line::Type type=Line::Single)
sets the underline type
Definition: MWAWFont.hxx:474
MWAWFont(int newId=-1, float sz=12, uint32_t f=0)
constructor
Definition: MWAWFont.hxx:204
Line const & getUnderline() const
returns the underline
Definition: MWAWFont.hxx:456
void setStrikeOutWidth(float w)
sets the strikeoutline width
Definition: MWAWFont.hxx:445
MWAWVariable< bool > m_sizeIsRelative
true if the size is percent
Definition: MWAWFont.hxx:559
void setColor(MWAWColor color)
sets the font color
Definition: MWAWFont.hxx:341
MWAWVariable< librevenge::RVNGUnit > m_deltaSpacingUnit
the delta spacing unit
Definition: MWAWFont.hxx:561
void setStrikeOutColor(MWAWColor const &color)
sets the strikeoutline color
Definition: MWAWFont.hxx:450
MWAWVariable< int > m_id
font identificator
Definition: MWAWFont.hxx:557
MWAWVariable< float > m_widthStreching
the width streching in percent
Definition: MWAWFont.hxx:562
bool operator!=(MWAWFont const &f) const
operator!=
Definition: MWAWFont.hxx:518
void setStrikeOut(Line const &line)
sets the strikeoutline
Definition: MWAWFont.hxx:422
void setStrikeOutType(Line::Type type=Line::Single)
sets the strikeoutline type
Definition: MWAWFont.hxx:435
MWAWVariable< Line > m_overline
overline attributes
Definition: MWAWFont.hxx:565
MWAWVariable< Line > m_strikeoutline
overline attributes
Definition: MWAWFont.hxx:566
MWAWVariable< float > m_deltaSpacing
expand(> 0), condensed(< 0) depl
Definition: MWAWFont.hxx:560
void resetColor()
resets the font color to black and the background color to white
Definition: MWAWFont.hxx:357
void setLanguage(std::string const &lang)
set the language ( in the for en_US, en_GB, en, ...)
Definition: MWAWFont.hxx:500
void setOverlineType(Line::Type type=Line::Single)
sets the overline type
Definition: MWAWFont.hxx:396
void setDeltaLetterSpacing(float d, librevenge::RVNGUnit unit=librevenge::RVNG_POINT)
sets the letter spacing ( delta value in point )
Definition: MWAWFont.hxx:292
bool hasColor() const
returns true if the font color is not black
Definition: MWAWFont.hxx:331
void setSize(float sz, bool isRelative=false)
sets the font size
Definition: MWAWFont.hxx:275
float deltaLetterSpacing() const
returns the condensed(negative)/extended(positive) width
Definition: MWAWFont.hxx:282
void setOverlineColor(MWAWColor const &color)
sets the overline color
Definition: MWAWFont.hxx:411
MWAWVariable< std::string > m_language
the language if set
Definition: MWAWFont.hxx:570
void resetDecorationLines()
reset the decoration
Definition: MWAWFont.hxx:371
MWAWVariable< Line > m_underline
underline attributes
Definition: MWAWFont.hxx:567
bool isSet() const
returns true if the font id is initialized
Definition: MWAWFont.hxx:224
bool hasDecorationLines() const
return true if the font has decorations line (overline, strikeout, underline)
Definition: MWAWFont.hxx:364
float widthStreching() const
returns the text width streching
Definition: MWAWFont.hxx:298
void setOverlineWidth(float w)
sets the overline width
Definition: MWAWFont.hxx:406
std::string m_extra
extra data
Definition: MWAWFont.hxx:573
std::string const & language() const
returns the language
Definition: MWAWFont.hxx:495
void set(Script const &newscript)
sets the script position
Definition: MWAWFont.hxx:314
Line const & getOverline() const
returns the overline
Definition: MWAWFont.hxx:378
void getColor(MWAWColor &c) const
returns the font color
Definition: MWAWFont.hxx:336
void setId(int newId)
sets the font id
Definition: MWAWFont.hxx:264
void setUnderlineWidth(float w)
sets the underline width
Definition: MWAWFont.hxx:484
void setOverline(Line const &line)
sets the overline
Definition: MWAWFont.hxx:383
void setOverlineStyle(Line::Style style=Line::None, bool doReset=true)
sets the overline style ( by default, we also reset the style)
Definition: MWAWFont.hxx:388
void setStrikeOutWordFlag(bool wordFlag=false)
sets the strikeoutline word flag
Definition: MWAWFont.hxx:440
MWAWVariable< uint32_t > m_flags
font attributes
Definition: MWAWFont.hxx:564
namespace used to define structure for the font manager
Definition: MWAWFont.cxx:390
Definition: MWAWDocument.hxx:57
the class to store a color
Definition: libmwaw_internal.hxx:192
static MWAWColor black()
return the back color
Definition: libmwaw_internal.hxx:245
static MWAWColor white()
return the white color
Definition: libmwaw_internal.hxx:250
bool isBlack() const
return true if the color is black
Definition: libmwaw_internal.hxx:284
a small struct to define a line in MWAWFont
Definition: MWAWFont.hxx:47
Style
the line style
Definition: MWAWFont.hxx:49
@ None
Definition: MWAWFont.hxx:49
@ Dot
Definition: MWAWFont.hxx:49
@ Dash
Definition: MWAWFont.hxx:49
@ LargeDot
Definition: MWAWFont.hxx:49
@ Simple
Definition: MWAWFont.hxx:49
@ Wave
Definition: MWAWFont.hxx:49
bool isSet() const
return true if the line is not empty
Definition: MWAWFont.hxx:62
Type m_type
the type
Definition: MWAWFont.hxx:97
friend std::ostream & operator<<(std::ostream &o, Line const &line)
operator<<
Definition: MWAWFont.cxx:49
Line(Style style=None, Type type=Single, bool wordFlag=false, float w=1.0)
constructor
Definition: MWAWFont.hxx:53
float m_width
the width in point
Definition: MWAWFont.hxx:99
bool operator!=(Line const &oth) const
operator!=
Definition: MWAWFont.hxx:76
Type
the line style
Definition: MWAWFont.hxx:51
@ Single
Definition: MWAWFont.hxx:51
@ Double
Definition: MWAWFont.hxx:51
@ Triple
Definition: MWAWFont.hxx:51
MWAWVariable< MWAWColor > m_color
the color ( if not set, we use the font color )
Definition: MWAWFont.hxx:101
Style m_style
the style
Definition: MWAWFont.hxx:95
bool operator==(Line const &oth) const
operator==
Definition: MWAWFont.hxx:71
int cmp(Line const &oth) const
small comparison function
Definition: MWAWFont.hxx:81
bool m_word
word or not word line
Definition: MWAWFont.hxx:103
void addTo(librevenge::RVNGPropertyList &propList, std::string const &type) const
add a line to the propList knowing the type (line-through, underline, overline )
Definition: MWAWFont.cxx:96
a small struct to define the script position in MWAWFont
Definition: MWAWFont.hxx:106
bool operator==(Script const &oth) const
operator==
Definition: MWAWFont.hxx:143
Script(float delta=0, librevenge::RVNGUnit deltaUnit=librevenge::RVNG_PERCENT, int scale=100)
constructor
Definition: MWAWFont.hxx:108
librevenge::RVNGUnit m_deltaUnit
the ydelta unit ( point or percent )
Definition: MWAWFont.hxx:184
static Script sub100()
return a yposition which correspond to a basic subscript100
Definition: MWAWFont.hxx:125
bool isSet() const
return true if the position is not default
Definition: MWAWFont.hxx:115
bool operator<=(Script const &oth) const
operator<=
Definition: MWAWFont.hxx:158
int cmp(Script const &oth) const
small comparison function
Definition: MWAWFont.hxx:173
std::string str(float fSize) const
return a string which correspond to style:text-position
Definition: MWAWFont.cxx:148
bool operator>=(Script const &oth) const
operator>=
Definition: MWAWFont.hxx:168
int m_scale
the font scaling ( in percent )
Definition: MWAWFont.hxx:186
static Script super100()
return a yposition which correspond to a basic superscript100
Definition: MWAWFont.hxx:135
bool operator<(Script const &oth) const
operator<
Definition: MWAWFont.hxx:153
static Script sub()
return a yposition which correspond to a basic subscript
Definition: MWAWFont.hxx:120
float m_delta
the ydelta
Definition: MWAWFont.hxx:182
bool operator>(Script const &oth) const
operator>
Definition: MWAWFont.hxx:163
static Script super()
return a yposition which correspond to a basic superscript
Definition: MWAWFont.hxx:130
bool operator!=(Script const &oth) const
operator!=
Definition: MWAWFont.hxx:148
a generic variable template: value + flag to know if the variable is set
Definition: libmwaw_internal.hxx:577
void insert(MWAWVariable const &orig)
update the current value if orig is set
Definition: libmwaw_internal.hxx:600
bool isSet() const
return true if the variable is set
Definition: libmwaw_internal.hxx:635
T const & get() const
return the current value
Definition: libmwaw_internal.hxx:630