class FontMetricData; typedef tools::SvRef<FontMetricData> FontMetricDataRef;
class OutputDevice; namespace vcl::font
{ class FontSelectPattern;
} class LogicalFontInstance;
class VCL_DLLPUBLIC FontMetricData final : public FontAttributes, public SvRefBase
{ public:
SAL_DLLPRIVATE explicit FontMetricData( const vcl::font::FontSelectPattern& );
// font instance attributes from the font request
tools::Long GetWidth() const { return mnWidth; }
Degree10 GetOrientation() const { return mnOrientation; }
// font instance attributes from the font request
tools::Long mnHeight; // Font size
tools::Long mnWidth; // Reference Width
Degree10 mnOrientation; // Rotation in 1/10 degrees
// font metrics measured for the font instance
tools::Long mnAscent; // Ascent
tools::Long mnDescent; // Descent
tools::Long mnIntLeading; // Internal Leading
tools::Long mnExtLeading; // External Leading int mnSlant; // Slant (Italic/Oblique) double mnMinKashida; // Minimal width of kashida (Arabic)
tools::Long mnHangingBaseline; // Offset of hanging baseline to Romn baseline double mdEmSize; // Size of an 'em' double mdHorCJKAdvanceSize; // Size of an 'ic' in horizontal text double mdVertCJKAdvanceSize; // Size of an 'ic' in vertical text
// font attributes queried from the font instance bool mbFullstopCentered;
tools::Long mnBulletOffset; // Offset to position non-print character
// font metrics that are usually derived from the measurements
tools::Long mnUnderlineSize; // Lineheight of Underline
tools::Long mnUnderlineOffset; // Offset from Underline to Baseline
tools::Long mnBUnderlineSize; // Height of bold underline
tools::Long mnBUnderlineOffset; // Offset from bold underline to baseline
tools::Long mnDUnderlineSize; // Height of double underline
tools::Long mnDUnderlineOffset1; // Offset from double underline to baseline
tools::Long mnDUnderlineOffset2; // Offset from double underline to baseline
tools::Long mnWUnderlineSize; // Height of WaveLine underline
tools::Long mnWUnderlineOffset; // Offset from WaveLine underline to baseline, but centrered to WaveLine
tools::Long mnAboveUnderlineSize; // Height of single underline (for Vertical Right)
tools::Long mnAboveUnderlineOffset; // Offset from single underline to baseline (for Vertical Right)
tools::Long mnAboveBUnderlineSize; // Height of bold underline (for Vertical Right)
tools::Long mnAboveBUnderlineOffset; // Offset from bold underline to baseline (for Vertical Right)
tools::Long mnAboveDUnderlineSize; // Height of double underline (for Vertical Right)
tools::Long mnAboveDUnderlineOffset1; // Offset from double underline to baseline (for Vertical Right)
tools::Long mnAboveDUnderlineOffset2; // Offset from double underline to baseline (for Vertical Right)
tools::Long mnAboveWUnderlineSize; // Height of WaveLine-strike-out (for Vertical Right)
tools::Long mnAboveWUnderlineOffset; // Offset from WaveLine-strike-out to baseline, but centrered to the WaveLine (for Vertical Right)
tools::Long mnStrikeoutSize; // Height of single strike-out
tools::Long mnStrikeoutOffset; // Offset from single strike-out to baseline
tools::Long mnBStrikeoutSize; // Height of bold strike-out
tools::Long mnBStrikeoutOffset; // Offset of bold strike-out to baseline
tools::Long mnDStrikeoutSize; // Height of double strike-out
tools::Long mnDStrikeoutOffset1; // Offset of double strike-out to baseline
tools::Long mnDStrikeoutOffset2; // Offset of double strike-out to baseline
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.