FontInfo(
FontFamily family,
FontSeries series,
- FontShape shape,
- FontSize size,
- ColorCode color,
- ColorCode background,
- FontState emph,
- FontState underbar,
- FontState strikeout,
- FontState uuline,
- FontState uwave,
- FontState noun,
- FontState number)
- : family_(family), series_(series), shape_(shape), size_(size),
- color_(color), background_(background), paint_color_(), emph_(emph),
- underbar_(underbar), strikeout_(strikeout), uuline_(uuline),
+ FontShape shape,
+ FontSize size,
+ ColorCode color,
+ ColorCode background,
+ FontState emph,
+ FontState underbar,
+ FontState strikeout,
+ FontState xout,
+ FontState uuline,
+ FontState uwave,
+ FontState noun,
+ FontState number)
+ : family_(family), series_(series), shape_(shape), size_(size),
+ style_(LM_ST_TEXT), color_(color), background_(background), emph_(emph),
+ underbar_(underbar), strikeout_(strikeout), xout_(xout), uuline_(uuline),
uwave_(uwave), noun_(noun), number_(number)
{}
void setShape(FontShape s) { shape_ = s; }
FontSize size() const { return size_; }
void setSize(FontSize s) { size_ = s; }
+ MathStyle style() const {return style_; }
+ void setStyle(MathStyle s) { style_ = s; }
FontState emph() const { return emph_; }
void setEmph(FontState e) { emph_ = e; }
FontState underbar() const { return underbar_; }
void setUnderbar(FontState u) { underbar_ = u; }
FontState strikeout() const { return strikeout_; }
void setStrikeout(FontState s) { strikeout_ = s; }
+ FontState xout() const { return xout_; }
+ void setXout(FontState s) { xout_ = s; }
FontState uuline() const { return uuline_; }
void setUuline(FontState s) { uuline_ = s; }
FontState uwave() const { return uwave_; }
/// Sets the color which is used during painting
void setPaintColor(Color c) { paint_color_ = c; }
+ /// Compute the font size, taking size and math style into account.
+ double realSize() const;
+
///
docstring asCSS() const;
}
/// Temporarily replace the color with \param color.
- Changer changeColor(ColorCode const color, bool cond = true);
+ Changer changeColor(ColorCode const color);
/// Temporarily replace the shape with \param shape.
- Changer changeShape(FontShape const shape, bool cond = true);
+ Changer changeShape(FontShape const shape);
+ /// Temporarily replace the style
+ Changer changeStyle(MathStyle style);
/// Temporarily replace the FontInfo with \param font, and optionally
/// \param realize the \param font against the current FontInfo.
- Changer change(FontInfo font, bool realize = false, bool cond = true);
+ Changer change(FontInfo font, bool realize = false);
private:
friend bool operator==(FontInfo const & lhs, FontInfo const & rhs);
///
FontSize size_;
///
+ MathStyle style_;
+ ///
ColorCode color_;
///
ColorCode background_;
///
FontState strikeout_;
///
+ FontState xout_;
+ ///
FontState uuline_;
///
FontState uwave_;
&& lhs.emph_ == rhs.emph_
&& lhs.underbar_ == rhs.underbar_
&& lhs.strikeout_ == rhs.strikeout_
+ && lhs.xout_ == rhs.xout_
&& lhs.uuline_ == rhs.uuline_
&& lhs.uwave_ == rhs.uwave_
&& lhs.noun_ == rhs.noun_