LibreOffice Module sw (master) 1
Public Member Functions | Private Attributes | Static Private Attributes | Friends | List of all members
SwFntObj Class Referencefinal

#include <fntcache.hxx>

Inheritance diagram for SwFntObj:
[legend]
Collaboration diagram for SwFntObj:
[legend]

Public Member Functions

 SwFntObj (const SwSubFont &rFont, std::uintptr_t nFontCacheId, SwViewShell const *pSh)
 
virtual ~SwFntObj () override
 
vcl::FontGetScrFont ()
 
vcl::FontGetFont ()
 
const vcl::FontGetFont () const
 
sal_uInt16 GetGuessedLeading () const
 
sal_uInt16 GetExternalLeading () const
 
sal_uInt16 GetFontAscent (const SwViewShell *pSh, const OutputDevice &rOut)
 
sal_uInt16 GetFontHeight (const SwViewShell *pSh, const OutputDevice &rOut)
 
sal_uInt16 GetFontLeading (const SwViewShell *pSh, const OutputDevice &rOut)
 
sal_uInt16 GetFontHangingBaseline (const SwViewShell *pSh, const OutputDevice &rOut)
 
void GuessLeading (const SwViewShell &rSh, const FontMetric &rMet)
 
void SetDevFont (const SwViewShell *pSh, OutputDevice &rOut)
 
OutputDeviceGetPrt () const
 
sal_uInt16 GetZoom () const
 
sal_uInt16 GetPropWidth () const
 
bool IsSymbol () const
 
void DrawText (SwDrawTextInfo &rInf)
 
Size GetTextSize (SwDrawTextInfo &rInf)
 determine the TextSize (of the printer) More...
 
TextFrameIndex GetModelPositionForViewPoint (SwDrawTextInfo &rInf)
 
void CreateScrFont (const SwViewShell &rSh, const OutputDevice &rOut)
 
void CreatePrtFont (const OutputDevice &rOut)
 
- Public Member Functions inherited from SwCacheObj
 SwCacheObj (const void *pOwner)
 
virtual ~SwCacheObj ()
 
const void * GetOwner () const
 
bool IsOwner (const void *pNew) const
 
sal_uInt16 GetCachePos () const
 
bool IsLocked () const
 
void Lock ()
 
void Unlock ()
 

Private Attributes

vcl::Font m_aFont
 
vcl::Fontm_pScrFont
 
vcl::Fontm_pPrtFont
 
VclPtr< OutputDevicem_pPrinter
 
sal_uInt16 m_nGuessedLeading
 
sal_uInt16 m_nExtLeading
 
sal_uInt16 m_nScrAscent
 
sal_uInt16 m_nPrtAscent
 
sal_uInt16 m_nScrHeight
 
sal_uInt16 m_nPrtHeight
 
sal_uInt16 m_nPropWidth
 
sal_uInt16 m_nScrHangingBaseline
 
sal_uInt16 m_nPrtHangingBaseline
 
sal_uInt16 m_nZoom
 
bool m_bSymbol: 1
 
bool m_bPaintBlank: 1
 

Static Private Attributes

static tools::Long s_nPixWidth
 
static MapModes_pPixMap = nullptr
 

Friends

class SwFntAccess
 
void InitCore ()
 
void FinitCore ()
 

Additional Inherited Members

- Protected Attributes inherited from SwCacheObj
const void * m_pOwner
 

Detailed Description

Definition at line 60 of file fntcache.hxx.

Constructor & Destructor Documentation

◆ SwFntObj()

SwFntObj::SwFntObj ( const SwSubFont rFont,
std::uintptr_t  nFontCacheId,
SwViewShell const *  pSh 
)

◆ ~SwFntObj()

SwFntObj::~SwFntObj ( )
overridevirtual

Definition at line 111 of file fntcache.cxx.

References m_aFont, m_pPrtFont, and m_pScrFont.

Member Function Documentation

◆ CreatePrtFont()

void SwFntObj::CreatePrtFont ( const OutputDevice rOut)

◆ CreateScrFont()

void SwFntObj::CreateScrFont ( const SwViewShell rSh,
const OutputDevice rOut 
)

◆ DrawText()

void SwFntObj::DrawText ( SwDrawTextInfo rInf)

Definition at line 769 of file fntcache.cxx.

References a, KernArray::adjust(), Point::AdjustX(), Point::AdjustY(), SwDrawTextInfo::ApplyAutoColor(), vcl::text::BiDiRtl, vcl::text::BiDiStrong, CH_BLANK, CH_BULLET, CJK, SwScriptInfo::CJKJustify(), COMPLETE_STRING, SwScriptInfo::Compress(), SwScriptInfo::CountCompChg(), SwScriptInfo::CountKashida(), CreateScrFont(), CTL, vcl::text::Default, OutputDevice::DrawStretchText(), OutputDevice::DrawText(), OutputDevice::DrawTextArray(), OutputDevice::DrawWaveLine(), SwFrame::FindPageFrame(), o3tl::strong_int< typename UNDERLYING_TYPE, typename PHANTOM_TYPE >::get(), VclPtr< class reference_type >::get(), SwFont::GetActual(), SwViewOption::getBrowseMode(), SwDrawTextInfo::GetBullet(), FontMetric::GetBulletOffset(), vcl::Font::GetColor(), OutputDevice::GetConnectMetaFile(), OutputDevice::GetDigitLanguage(), SwViewShell::GetDoc(), GetFont(), OutputDevice::GetFont(), SwDrawTextInfo::GetFont(), OutputDevice::GetFontMetric(), vcl::Font::GetFontSize(), SwDrawTextInfo::GetFrame(), SwDrawTextInfo::GetGrammarCheck(), SwDrawTextInfo::GetGreyWave(), GetGridItem(), SwTextGridItem::GetGridType(), GetGridWidth(), SwDrawTextInfo::GetIdx(), SwDrawTextInfo::GetKanaComp(), SwDrawTextInfo::GetKern(), SwFont::GetLanguage(), SalLayoutGlyphsCache::GetLayoutGlyphs(), OutputDevice::GetLayoutMode(), SwDrawTextInfo::GetLen(), OutputDevice::GetLineColor(), OutputDevice::GetMapMode(), MapMode::GetMapUnit(), SwDrawTextInfo::GetNumberOfBlanks(), SwDrawTextInfo::GetOut(), OutputDevice::GetOutDevType(), vcl::Font::GetOverline(), SwDrawTextInfo::GetPos(), SwDrawTextInfo::GetpOut(), SwViewShell::GetRefDev(), MapMode::GetScaleX(), SwDrawTextInfo::GetScriptInfo(), SwDrawTextInfo::GetShell(), SwDrawTextInfo::GetSmartTags(), SwDrawTextInfo::GetSpace(), vcl::Font::GetStrikeout(), SwDrawTextInfo::GetText(), GetTextArray(), GetTextSize(), vcl::Font::GetUnderline(), SwViewShell::GetViewOptions(), SwDrawTextInfo::GetWidth(), SwViewShell::GetWin(), SwDrawTextInfo::GetWrong(), GRID_LINES_CHARS, gWaveCol(), Size::Height(), i, SwScriptInfo::IsArabicText(), SwDrawTextInfo::IsIgnoreFrameRTL(), MsLangId::isKorean(), SwViewOption::IsPrtFormat(), SwFrame::IsRightToLeft(), vcl::Font::IsSameInstance(), MapMode::IsSimple(), SwTextGridItem::IsSnapToChars(), SwDrawTextInfo::IsSpaceStop(), SwFrame::IsVertical(), SwFrame::IsVertLRBT(), OutputDevice::IsVirtual(), vcl::Font::IsWordLineMode(), SwScriptInfo::KashidaJustify(), LANGUAGE_THAI, lcl_DrawLineForWrongListData(), lcl_IsFontAdjustNecessary(), lcl_IsFullstopCentered(), lcl_IsMonoSpaceFont(), LINESTYLE_NONE, OutputDevice::LogicToPixel(), m_aFont, m_bPaintBlank, m_bSymbol, m_pPrinter, m_pPrtFont, m_pScrFont, min(), nIndex, NON_PRINTING_CHARACTER_COLOR, OUTDEV_PRINTER, OUTDEV_WINDOW, OutputDevice::PixelToLogic(), OutputDevice::Pop(), OutputDevice::Push(), s_nPixWidth, s_pFntObjPixOut, s_pPixMap, SalLayoutGlyphsCache::self(), KernArray::set(), vcl::Font::SetColor(), OutputDevice::SetFont(), SwDrawTextInfo::SetLen(), OutputDevice::SetLineColor(), vcl::Font::SetOverline(), vcl::Font::SetStrikeout(), vcl::Font::SetUnderline(), Point::setX(), Point::setY(), KernArray::size(), SwDrawTextInfo::SnapToGrid(), sw::Justify::SnapToGrid(), sw::Justify::SnapToGridEdge(), sw::Justify::SpaceDistribution(), SPACING_PRECISION_FACTOR, STRIKEOUT_NONE, SwTextFrame::SwitchHorizontalToVertical(), SwTextFrame::SwitchLTRtoRTL(), SwScriptInfo::ThaiJustify(), UnMapDirection(), Size::Width(), WRONG_SHOW_MIN, Point::X(), and Point::Y().

Referenced by SwSubFont::DrawText_().

◆ GetExternalLeading()

sal_uInt16 SwFntObj::GetExternalLeading ( ) const
inline

Definition at line 97 of file fntcache.hxx.

References m_nExtLeading.

Referenced by GetTextSize().

◆ GetFont() [1/2]

vcl::Font & SwFntObj::GetFont ( )
inline

Definition at line 93 of file fntcache.hxx.

References m_aFont.

Referenced by DrawText().

◆ GetFont() [2/2]

const vcl::Font & SwFntObj::GetFont ( ) const
inline

Definition at line 94 of file fntcache.hxx.

References m_aFont.

◆ GetFontAscent()

sal_uInt16 SwFntObj::GetFontAscent ( const SwViewShell pSh,
const OutputDevice rOut 
)

◆ GetFontHangingBaseline()

sal_uInt16 SwFntObj::GetFontHangingBaseline ( const SwViewShell pSh,
const OutputDevice rOut 
)

◆ GetFontHeight()

sal_uInt16 SwFntObj::GetFontHeight ( const SwViewShell pSh,
const OutputDevice rOut 
)

◆ GetFontLeading()

sal_uInt16 SwFntObj::GetFontLeading ( const SwViewShell pSh,
const OutputDevice rOut 
)

◆ GetGuessedLeading()

sal_uInt16 SwFntObj::GetGuessedLeading ( ) const
inline

Definition at line 96 of file fntcache.hxx.

References m_nGuessedLeading.

Referenced by GetTextSize().

◆ GetModelPositionForViewPoint()

TextFrameIndex SwFntObj::GetModelPositionForViewPoint ( SwDrawTextInfo rInf)

Definition at line 1682 of file fntcache.cxx.

References CH_BLANK, CJK, SwScriptInfo::CJKJustify(), SwScriptInfo::Compress(), SwScriptInfo::CountCompChg(), SwScriptInfo::CountKashida(), CTL, SwScriptInfo::DirType(), SwFrame::FindPageFrame(), g_pBreakIt, SwFont::GetActual(), SwBreakIt::GetBreakIter(), SwDrawTextInfo::GetCharacterSpacing(), OutputDevice::GetDigitLanguage(), SwViewShell::GetDoc(), SwDrawTextInfo::GetFont(), vcl::Font::GetFontSize(), SwDrawTextInfo::GetFrame(), GetGridItem(), SwTextGridItem::GetGridType(), GetGridWidth(), SwDrawTextInfo::GetIdx(), SwDrawTextInfo::GetKanaComp(), SwDrawTextInfo::GetKern(), SwFont::GetLanguage(), OutputDevice::GetLayoutMode(), SwDrawTextInfo::GetLen(), SwBreakIt::GetLocale(), sw::Justify::GetModelPosition(), SwDrawTextInfo::GetNumberOfBlanks(), SwDrawTextInfo::GetOffset(), SwDrawTextInfo::GetOut(), SwDrawTextInfo::GetScriptInfo(), SwDrawTextInfo::GetShell(), SwDrawTextInfo::GetSpace(), SwDrawTextInfo::GetText(), GetTextArray(), GRID_LINES_CHARS, Size::Height(), SwScriptInfo::IsArabicText(), MsLangId::isKorean(), SwDrawTextInfo::IsPosMatchesBounds(), SwTextGridItem::IsSnapToChars(), SwDrawTextInfo::IsSpaceStop(), SwScriptInfo::KashidaJustify(), LANGUAGE_THAI, lcl_IsFullstopCentered(), lcl_IsMonoSpaceFont(), m_aFont, m_pPrinter, SwDrawTextInfo::SetCursorBidiLevel(), SwDrawTextInfo::SnapToGrid(), sw::Justify::SnapToGrid(), sw::Justify::SnapToGridEdge(), SPACING_PRECISION_FACTOR, and SwScriptInfo::ThaiJustify().

Referenced by SwSubFont::GetModelPositionForViewPoint_().

◆ GetPropWidth()

sal_uInt16 SwFntObj::GetPropWidth ( ) const
inline

Definition at line 109 of file fntcache.hxx.

References m_nPropWidth.

Referenced by SwFntAccess::SwFntAccess().

◆ GetPrt()

OutputDevice * SwFntObj::GetPrt ( ) const
inline

Definition at line 107 of file fntcache.hxx.

References m_pPrinter.

Referenced by SwSubFont::DoOnCapitals().

◆ GetScrFont()

vcl::Font * SwFntObj::GetScrFont ( )
inline

Definition at line 92 of file fntcache.hxx.

References m_pScrFont.

Referenced by GetTextSize(), and SetDevFont().

◆ GetTextSize()

Size SwFntObj::GetTextSize ( SwDrawTextInfo rInf)

determine the TextSize (of the printer)

Definition at line 1538 of file fntcache.cxx.

References Size::AdjustHeight(), Size::AdjustWidth(), CJK, COMPLETE_STRING, SwScriptInfo::Compress(), SwScriptInfo::CountCompChg(), CreateScrFont(), SwFrame::FindPageFrame(), o3tl::strong_int< typename UNDERLYING_TYPE, typename PHANTOM_TYPE >::get(), VclPtr< class reference_type >::get(), SwFont::GetActual(), OutputDevice::GetDigitLanguage(), SwViewShell::GetDoc(), GetExternalLeading(), OutputDevice::GetFont(), SwDrawTextInfo::GetFont(), GetFontLeading(), vcl::Font::GetFontSize(), SwDrawTextInfo::GetFrame(), GetGridItem(), SwTextGridItem::GetGridType(), GetGridWidth(), GetGuessedLeading(), SwDrawTextInfo::GetIdx(), SwDrawTextInfo::GetKanaComp(), SwDrawTextInfo::GetKern(), OutputDevice::GetLayoutMode(), SwDrawTextInfo::GetLen(), SwDrawTextInfo::GetMeasureLen(), SwDrawTextInfo::GetOut(), SwDrawTextInfo::GetpOut(), GetScrFont(), SwDrawTextInfo::GetScriptInfo(), SwDrawTextInfo::GetShell(), SwDrawTextInfo::GetText(), GetTextArray(), OutputDevice::GetTextHeight(), OutputDevice::GetTextWidth(), GRID_LINES_CHARS, Size::Height(), i, vcl::Font::IsSameInstance(), SwTextGridItem::IsSnapToChars(), lcl_IsFullstopCentered(), lcl_IsMonoSpaceFont(), m_aFont, m_pPrinter, m_pPrtFont, m_pScrFont, OutputDevice::SetFont(), Size::setHeight(), SwDrawTextInfo::SetKanaDiff(), Size::setWidth(), SwDrawTextInfo::SnapToGrid(), sw::Justify::SnapToGrid(), and sw::Justify::SnapToGridEdge().

Referenced by SwSubFont::DoOnCapitals(), DrawText(), and SwSubFont::GetTextSize_().

◆ GetZoom()

sal_uInt16 SwFntObj::GetZoom ( ) const
inline

Definition at line 108 of file fntcache.hxx.

References m_nZoom.

Referenced by SwFntAccess::SwFntAccess().

◆ GuessLeading()

void SwFntObj::GuessLeading ( const SwViewShell rSh,
const FontMetric rMet 
)

◆ IsSymbol()

bool SwFntObj::IsSymbol ( ) const
inline

Definition at line 110 of file fntcache.hxx.

References m_bSymbol.

Referenced by SwSubFont::IsSymbol().

◆ SetDevFont()

void SwFntObj::SetDevFont ( const SwViewShell pSh,
OutputDevice rOut 
)

Friends And Related Function Documentation

◆ FinitCore

void FinitCore ( )
friend

Definition at line 684 of file init.cxx.

◆ InitCore

void InitCore ( )
friend

Definition at line 459 of file init.cxx.

◆ SwFntAccess

friend class SwFntAccess
friend

Definition at line 62 of file fntcache.hxx.

Member Data Documentation

◆ m_aFont

vcl::Font SwFntObj::m_aFont
private

◆ m_bPaintBlank

bool SwFntObj::m_bPaintBlank
private

Definition at line 81 of file fntcache.hxx.

Referenced by DrawText(), and SwFntObj().

◆ m_bSymbol

bool SwFntObj::m_bSymbol
private

Definition at line 80 of file fntcache.hxx.

Referenced by CreateScrFont(), DrawText(), GetFontLeading(), IsSymbol(), and SwFntObj().

◆ m_nExtLeading

sal_uInt16 SwFntObj::m_nExtLeading
private

◆ m_nGuessedLeading

sal_uInt16 SwFntObj::m_nGuessedLeading
private

◆ m_nPropWidth

sal_uInt16 SwFntObj::m_nPropWidth
private

Definition at line 76 of file fntcache.hxx.

Referenced by CreatePrtFont(), and GetPropWidth().

◆ m_nPrtAscent

sal_uInt16 SwFntObj::m_nPrtAscent
private

Definition at line 73 of file fntcache.hxx.

Referenced by GetFontAscent(), GuessLeading(), and SwFntAccess::SwFntAccess().

◆ m_nPrtHangingBaseline

sal_uInt16 SwFntObj::m_nPrtHangingBaseline
private

Definition at line 78 of file fntcache.hxx.

Referenced by GetFontAscent(), and GetFontHangingBaseline().

◆ m_nPrtHeight

sal_uInt16 SwFntObj::m_nPrtHeight
private

Definition at line 75 of file fntcache.hxx.

Referenced by GetFontHeight(), and SwFntAccess::SwFntAccess().

◆ m_nScrAscent

sal_uInt16 SwFntObj::m_nScrAscent
private

Definition at line 72 of file fntcache.hxx.

Referenced by CreateScrFont(), and GetFontAscent().

◆ m_nScrHangingBaseline

sal_uInt16 SwFntObj::m_nScrHangingBaseline
private

Definition at line 77 of file fntcache.hxx.

Referenced by CreateScrFont(), and GetFontHangingBaseline().

◆ m_nScrHeight

sal_uInt16 SwFntObj::m_nScrHeight
private

Definition at line 74 of file fntcache.hxx.

Referenced by CreateScrFont(), and GetFontHeight().

◆ m_nZoom

sal_uInt16 SwFntObj::m_nZoom
private

Definition at line 79 of file fntcache.hxx.

Referenced by GetZoom(), and SwFntObj().

◆ m_pPrinter

VclPtr<OutputDevice> SwFntObj::m_pPrinter
private

◆ m_pPrtFont

vcl::Font* SwFntObj::m_pPrtFont
private

◆ m_pScrFont

vcl::Font* SwFntObj::m_pScrFont
private

◆ s_nPixWidth

tools::Long SwFntObj::s_nPixWidth
staticprivate

Definition at line 83 of file fntcache.hxx.

Referenced by DrawText().

◆ s_pPixMap

MapMode * SwFntObj::s_pPixMap = nullptr
staticprivate

Definition at line 84 of file fntcache.hxx.

Referenced by DrawText().


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