LibreOffice Module editeng (master) 1
|
#include <svxfont.hxx>
Public Member Functions | |
SvxFont () | |
SvxFont (const vcl::Font &rFont) | |
SvxFont (const SvxFont &rFont) | |
short | GetEscapement () const |
void | SetEscapement (const short nNewEsc) |
void | SetNonAutoEscapement (short nNewEsc, const OutputDevice *pOutDev=nullptr) |
sal_uInt8 | GetPropr () const |
void | SetPropr (const sal_uInt8 nNewPropr) |
void | SetProprRel (const sal_uInt8 nNewPropr) |
SvxCaseMap | GetCaseMap () const |
void | SetCaseMap (const SvxCaseMap eNew) |
bool | IsCaseMap () const |
bool | IsCapital () const |
bool | IsEsc () const |
OUString | CalcCaseMap (const OUString &rTxt) const |
void | DoOnCapitals (SvxDoCapitals &rDo) const |
void | SetPhysFont (OutputDevice &rOut) const |
vcl::Font | ChgPhysFont (OutputDevice &rOut) const |
Size | GetCapitalSize (const OutputDevice *pOut, const OUString &rTxt, const sal_Int32 nIdx, const sal_Int32 nLen) const |
void | DrawCapital (OutputDevice *pOut, const Point &rPos, const OUString &rTxt, const sal_Int32 nIdx, const sal_Int32 nLen) const |
Size | GetPhysTxtSize (const OutputDevice *pOut, const OUString &rTxt, const sal_Int32 nIdx, const sal_Int32 nLen) const |
Size | GetPhysTxtSize (const OutputDevice *pOut) |
Size | GetTextSize (const OutputDevice &rOut, const OUString &rTxt, const sal_Int32 nIdx=0, const sal_Int32 nLen=SAL_MAX_INT32) const |
void | QuickDrawText (OutputDevice *pOut, const Point &rPos, const OUString &rTxt, const sal_Int32 nIdx=0, const sal_Int32 nLen=SAL_MAX_INT32, o3tl::span< const sal_Int32 > pDXArray={}, o3tl::span< const sal_Bool > pKashidaArray={}) const |
Size | QuickGetTextSize (const OutputDevice *pOut, const OUString &rTxt, const sal_Int32 nIdx, const sal_Int32 nLen, KernArray *pDXArray=nullptr) const |
void | DrawPrev (OutputDevice *pOut, Printer *pPrinter, const Point &rPos, const OUString &rTxt, const sal_Int32 nIdx=0, const sal_Int32 nLen=SAL_MAX_INT32) const |
SvxFont & | operator= (const SvxFont &rFont) |
SvxFont & | operator= (const Font &rFont) |
Public Member Functions inherited from vcl::Font | |
Font () | |
Font (const Font &) | |
Font (Font &&) noexcept | |
Font (const OUString &rFamilyName, const Size &) | |
Font (const OUString &rFamilyName, const OUString &rStyleName, const Size &) | |
Font (FontFamily eFamily, const Size &) | |
virtual | ~Font () |
const OUString & | GetFamilyName () const |
FontFamily | GetFamilyType () |
FontFamily | GetFamilyType () const |
const OUString & | GetStyleName () const |
FontWeight | GetWeight () |
FontWeight | GetWeight () const |
FontItalic | GetItalic () |
FontItalic | GetItalic () const |
FontPitch | GetPitch () |
FontPitch | GetPitch () const |
FontWidth | GetWidthType () |
FontWidth | GetWidthType () const |
TextAlign | GetAlignment () const |
rtl_TextEncoding | GetCharSet () const |
FontEmphasisMark | GetEmphasisMarkStyle () const |
void | SetFamilyName (const OUString &rFamilyName) |
void | SetStyleName (const OUString &rStyleName) |
void | SetFamily (FontFamily) |
void | SetPitch (FontPitch ePitch) |
void | SetItalic (FontItalic) |
void | SetWeight (FontWeight) |
void | SetWidthType (FontWidth) |
void | SetAlignment (TextAlign) |
void | SetCharSet (rtl_TextEncoding) |
int | GetQuality () const |
void | SetQuality (int) |
void | IncreaseQualityBy (int) |
void | DecreaseQualityBy (int) |
const Color & | GetColor () const |
const Color & | GetFillColor () const |
bool | IsTransparent () const |
void | SetColor (const Color &) |
void | SetFillColor (const Color &) |
void | SetTransparent (bool bTransparent) |
void | SetFontSize (const Size &) |
const Size & | GetFontSize () const |
void | SetFontHeight (tools::Long nHeight) |
tools::Long | GetFontHeight () const |
void | SetAverageFontWidth (tools::Long nWidth) |
tools::Long | GetAverageFontWidth () const |
tools::Long | GetOrCalculateAverageFontWidth () const |
void | SetLanguageTag (const LanguageTag &) |
const LanguageTag & | GetLanguageTag () const |
void | SetCJKContextLanguageTag (const LanguageTag &) |
const LanguageTag & | GetCJKContextLanguageTag () const |
void | SetLanguage (LanguageType) |
LanguageType | GetLanguage () const |
void | SetCJKContextLanguage (LanguageType) |
LanguageType | GetCJKContextLanguage () const |
void | SetOrientation (Degree10 nLineOrientation) |
Degree10 | GetOrientation () const |
void | SetVertical (bool bVertical) |
bool | IsVertical () const |
void | SetKerning (FontKerning nKerning) |
FontKerning | GetKerning () const |
bool | IsKerning () const |
void | SetFixKerning (const short nSpacing) |
short | GetFixKerning () const |
bool | IsFixKerning () const |
void | SetOutline (bool bOutline) |
bool | IsOutline () const |
void | SetShadow (bool bShadow) |
bool | IsShadow () const |
void | SetRelief (FontRelief) |
FontRelief | GetRelief () const |
void | SetUnderline (FontLineStyle) |
FontLineStyle | GetUnderline () const |
void | SetOverline (FontLineStyle) |
FontLineStyle | GetOverline () const |
void | SetStrikeout (FontStrikeout) |
FontStrikeout | GetStrikeout () const |
void | SetEmphasisMark (FontEmphasisMark) |
FontEmphasisMark | GetEmphasisMark () const |
void | SetWordLineMode (bool bWordLine) |
bool | IsWordLineMode () const |
void | Merge (const Font &rFont) |
void | GetFontAttributes (FontAttributes &rAttrs) const |
Font & | operator= (const Font &) |
Font & | operator= (Font &&) noexcept |
bool | operator== (const Font &) const |
bool | operator!= (const Font &rFont) const |
bool | IsSameInstance (const Font &) const |
bool | EqualIgnoreColor (const Font &) const |
size_t | GetHashValueIgnoreColor () const |
bool | IsUnderlineAbove () const |
Static Public Member Functions | |
static tools::Polygon | DrawArrow (OutputDevice &rOut, const tools::Rectangle &rRect, const Size &rSize, const Color &rCol, bool bLeftOrTop, bool bVertical) |
Static Public Member Functions inherited from vcl::Font | |
static Font | identifyFont (const void *pBuffer, sal_uInt32 nLen) |
Private Attributes | |
SvxCaseMap | eCaseMap |
short | nEsc |
sal_uInt8 | nPropr |
Additional Inherited Members | |
Public Types inherited from vcl::Font | |
typedef o3tl::cow_wrapper< ImplFont > | ImplType |
Definition at line 40 of file svxfont.hxx.
SvxFont::SvxFont | ( | ) |
Definition at line 43 of file svxfont.cxx.
References eCaseMap, LANGUAGE_SYSTEM, nEsc, NotMapped, nPropr, and vcl::Font::SetLanguage().
SvxFont::SvxFont | ( | const vcl::Font & | rFont | ) |
Definition at line 51 of file svxfont.cxx.
References eCaseMap, Font, LANGUAGE_SYSTEM, nEsc, NotMapped, nPropr, and vcl::Font::SetLanguage().
SvxFont::SvxFont | ( | const SvxFont & | rFont | ) |
Definition at line 60 of file svxfont.cxx.
References eCaseMap, Font, GetCaseMap(), GetEscapement(), vcl::Font::GetLanguage(), GetPropr(), nEsc, nPropr, and vcl::Font::SetLanguage().
OUString SvxFont::CalcCaseMap | ( | const OUString & | rTxt | ) | const |
Definition at line 166 of file svxfont.cxx.
References Capitalize, eCaseMap, vcl::Font::GetLanguage(), i, IsCaseMap(), LANGUAGE_DONTKNOW, LANGUAGE_SYSTEM, CharClass::lowercase(), Lowercase, SAL_WARN, SmallCaps, CharClass::uppercase(), and Uppercase.
Referenced by DoOnCapitals(), DrawPrev(), GetPhysTxtSize(), QuickDrawText(), and QuickGetTextSize().
vcl::Font SvxFont::ChgPhysFont | ( | OutputDevice & | rOut | ) | const |
Definition at line 401 of file svxfont.cxx.
References OutputDevice::GetFont(), and SetPhysFont().
Referenced by DrawPrev(), and GetTextSize().
void SvxFont::DoOnCapitals | ( | SvxDoCapitals & | rDo | ) | const |
Definition at line 267 of file svxfont.cxx.
References CalcCaseMap(), SvxDoCapitals::Do(), SvxDoCapitals::DoSpace(), CharClass::getCharacterType(), SvxDoCapitals::GetIdx(), vcl::Font::GetLanguage(), SvxDoCapitals::GetLen(), SvxDoCapitals::GetTxt(), LANGUAGE_DONTKNOW, LANGUAGE_SYSTEM, nPos, and SvxDoCapitals::SetSpace().
Referenced by DrawCapital(), and GetCapitalSize().
|
static |
Definition at line 99 of file svxfont.cxx.
References tools::Rectangle::Bottom(), COL_BLACK(), OutputDevice::DrawLine(), OutputDevice::DrawPolygon(), OutputDevice::GetFillColor(), OutputDevice::GetLineColor(), Size::Height(), tools::Polygon::Insert(), tools::Rectangle::Left(), tools::Rectangle::Right(), OutputDevice::SetFillColor(), OutputDevice::SetLineColor(), Point::setX(), Point::setY(), tools::Rectangle::Top(), and Size::Width().
void SvxFont::DrawCapital | ( | OutputDevice * | pOut, |
const Point & | rPos, | ||
const OUString & | rTxt, | ||
const sal_Int32 | nIdx, | ||
const sal_Int32 | nLen | ||
) | const |
Definition at line 855 of file svxfont.cxx.
References DoOnCapitals(), vcl::Font::GetFixKerning(), and pOut.
Referenced by DrawPrev(), and QuickDrawText().
void SvxFont::DrawPrev | ( | OutputDevice * | pOut, |
Printer * | pPrinter, | ||
const Point & | rPos, | ||
const OUString & | rTxt, | ||
const sal_Int32 | nIdx = 0 , |
||
const sal_Int32 | nLen = SAL_MAX_INT32 |
||
) | const |
Definition at line 611 of file svxfont.cxx.
References Point::AdjustY(), CalcCaseMap(), ChgPhysFont(), DFLT_ESC_AUTO_SUB, DFLT_ESC_AUTO_SUPER, DFLT_ESC_SUPER, DrawCapital(), vcl::Font::Font(), vcl::Font::GetFontSize(), GetPhysTxtSize(), Size::Height(), IsCapital(), IsCaseMap(), nEsc, nPropr, pOut, SAL_MAX_INT32, OutputDevice::SetFont(), and Size::Width().
Size SvxFont::GetCapitalSize | ( | const OutputDevice * | pOut, |
const OUString & | rTxt, | ||
const sal_Int32 | nIdx, | ||
const sal_Int32 | nLen | ||
) | const |
Definition at line 743 of file svxfont.cxx.
References DoOnCapitals(), vcl::Font::GetFixKerning(), Size::Height(), pOut, Size::setHeight(), and Size::setWidth().
Referenced by GetTextSize().
|
inline |
Definition at line 62 of file svxfont.hxx.
Referenced by EditEngine::SetFontInfoInItemSet(), and SvxFont().
|
inline |
Definition at line 52 of file svxfont.hxx.
Referenced by ImpEditEngine::Paint(), ImpEditEngine::RecalcFormatterFontMetrics(), ImpEditEngine::SeekCursor(), EditEngine::SetFontInfoInItemSet(), and SvxFont().
Size SvxFont::GetPhysTxtSize | ( | const OutputDevice * | pOut | ) |
Definition at line 462 of file svxfont.cxx.
References CalcCaseMap(), IsCaseMap(), vcl::Font::IsFixKerning(), pOut, Size::setHeight(), and Size::setWidth().
Size SvxFont::GetPhysTxtSize | ( | const OutputDevice * | pOut, |
const OUString & | rTxt, | ||
const sal_Int32 | nIdx, | ||
const sal_Int32 | nLen | ||
) | const |
Definition at line 408 of file svxfont.cxx.
References Size::AdjustWidth(), CalcCaseMap(), vcl::Font::GetFixKerning(), GetTextArray(), i, IsCaseMap(), vcl::Font::IsFixKerning(), pOut, Size::setHeight(), and Size::setWidth().
Referenced by ImpEditEngine::CreateAndInsertEmptyLine(), ImpEditEngine::CreateLines(), DrawPrev(), GetTextSize(), ImpEditEngine::Paint(), and QuickDrawText().
|
inline |
Definition at line 57 of file svxfont.hxx.
Referenced by ImpEditEngine::Paint(), ImpEditEngine::RecalcFormatterFontMetrics(), ImpEditEngine::SeekCursor(), EditEngine::SetFontInfoInItemSet(), and SvxFont().
Size SvxFont::GetTextSize | ( | const OutputDevice & | rOut, |
const OUString & | rTxt, | ||
const sal_Int32 | nIdx = 0 , |
||
const sal_Int32 | nLen = SAL_MAX_INT32 |
||
) | const |
Definition at line 530 of file svxfont.cxx.
References ChgPhysFont(), vcl::Font::Font(), GetCapitalSize(), GetPhysTxtSize(), IsCapital(), and SAL_MAX_INT32.
|
inline |
Definition at line 67 of file svxfont.hxx.
References SmallCaps.
Referenced by DrawPrev(), GetTextSize(), and QuickDrawText().
|
inline |
Definition at line 66 of file svxfont.hxx.
References NotMapped.
Referenced by CalcCaseMap(), DrawPrev(), GetPhysTxtSize(), QuickDrawText(), and QuickGetTextSize().
|
inline |
Definition at line 68 of file svxfont.hxx.
Referenced by QuickDrawText().
Definition at line 685 of file svxfont.cxx.
void SvxFont::QuickDrawText | ( | OutputDevice * | pOut, |
const Point & | rPos, | ||
const OUString & | rTxt, | ||
const sal_Int32 | nIdx = 0 , |
||
const sal_Int32 | nLen = SAL_MAX_INT32 , |
||
o3tl::span< const sal_Int32 > | pDXArray = {} , |
||
o3tl::span< const sal_Bool > | pKashidaArray = {} |
||
) | const |
Definition at line 556 of file svxfont.cxx.
References Point::AdjustX(), Point::AdjustY(), CalcCaseMap(), DBG_ASSERT, DrawCapital(), DrawTextArray(), o3tl::span< typename T >::empty(), vcl::Font::GetFontSize(), GetPhysTxtSize(), Size::Height(), IsCapital(), IsCaseMap(), IsEsc(), vcl::Font::IsFixKerning(), vcl::Font::IsVertical(), nEsc, pOut, and Size::Width().
Referenced by ImpEditEngine::Paint().
Size SvxFont::QuickGetTextSize | ( | const OutputDevice * | pOut, |
const OUString & | rTxt, | ||
const sal_Int32 | nIdx, | ||
const sal_Int32 | nLen, | ||
KernArray * | pDXArray = nullptr |
||
) | const |
Definition at line 477 of file svxfont.cxx.
References KernArray::adjust(), Size::AdjustWidth(), CalcCaseMap(), vcl::Font::GetFixKerning(), GetTextArray(), i, IsCaseMap(), vcl::Font::IsFixKerning(), pOut, KernArray::reserve(), KernArray::set(), Size::setHeight(), and Size::setWidth().
Referenced by ImpEditEngine::CalcLineWidth(), ImpEditEngine::CreateLines(), ImpEditEngine::Paint(), and ImpEditEngine::SplitTextPortion().
|
inline |
Definition at line 63 of file svxfont.hxx.
Referenced by CreateFont(), and EditCharAttribCaseMap::SetFont().
|
inline |
Definition at line 53 of file svxfont.hxx.
Referenced by ImpEditEngine::Paint(), and ImpEditEngine::SeekCursor().
void SvxFont::SetNonAutoEscapement | ( | short | nNewEsc, |
const OutputDevice * | pOutDev = nullptr |
||
) |
Definition at line 69 of file svxfont.cxx.
References abs(), DFLT_ESC_AUTO_SUPER, FontMetric::GetAscent(), FontMetric::GetDescent(), OutputDevice::GetFontMetric(), MAX_ESC_POS, nEsc, and nPropr.
Referenced by CreateFont(), and EditCharAttribEscapement::SetFont().
void SvxFont::SetPhysFont | ( | OutputDevice & | rOut | ) | const |
Definition at line 382 of file svxfont.cxx.
References vcl::Font::Font(), OutputDevice::GetFont(), Size::Height(), vcl::Font::IsSameInstance(), nPropr, OutputDevice::SetFont(), and Size::Width().
Referenced by ImpEditEngine::CalcLineWidth(), ChgPhysFont(), ImpEditEngine::CreateAndInsertEmptyLine(), ImpEditEngine::CreateLines(), AccessibleStringWrap::GetCharacterBounds(), ImpEditEngine::ImpBreakLine(), ImpEditEngine::Paint(), ImpEditEngine::RecalcFormatterFontMetrics(), ImpEditEngine::SeekCursor(), and ImpEditEngine::SplitTextPortion().
|
inline |
Definition at line 58 of file svxfont.hxx.
Referenced by CreateFont(), ImpEditEngine::Paint(), ImpEditEngine::RecalcFormatterFontMetrics(), ImpEditEngine::SeekCursor(), and EditCharAttribEscapement::SetFont().
|
inline |
Definition at line 59 of file svxfont.hxx.
|
private |
Definition at line 42 of file svxfont.hxx.
Referenced by CalcCaseMap(), operator=(), and SvxFont().
|
private |
Definition at line 43 of file svxfont.hxx.
Referenced by DrawPrev(), operator=(), QuickDrawText(), SetNonAutoEscapement(), and SvxFont().
|
private |
Definition at line 44 of file svxfont.hxx.
Referenced by DrawPrev(), operator=(), SetNonAutoEscapement(), SetPhysFont(), and SvxFont().