LibreOffice Module vcl (master) 1
Classes | Typedefs | Enumerations | Functions | Variables
vcl::font Namespace Reference

A PhysicalFontFaceCollection is created by a PhysicalFontCollection and becomes invalid when original PhysicalFontCollection is modified. More...

Classes

struct  ColorLayer
 
class  DirectFontSubstitution
 DirectFontSubstitution is for Tools->Options->FontReplacement and PsPrinter substitutions The class is just a simple port of the unmaintainable manual-linked-list based mechanism. More...
 
class  EmphasisMark
 
struct  Feature
 
class  FeatureCollector
 
class  FeatureDefinition
 
struct  FeatureParameter
 
class  FeatureParser
 
struct  FeatureSetting
 
struct  FontMatchStatus
 
class  FontSelectPattern
 
struct  FontSubstEntry
 
class  FontSubstitution
 
class  GlyphFallbackFontSubstitution
 Abstracts the concept of finding the best font to support an incomplete font. More...
 
class  OpenTypeFeatureDefinitionListPrivate
 
class  PhysicalFontCollection
 
class  PhysicalFontFace
 abstract base class for physical font faces More...
 
class  PhysicalFontFaceCollection
 
class  PhysicalFontFamily
 
class  PreMatchFontSubstitution
 Abstracts the concept of a configured font substitution before the availability of the originally selected font has been checked. More...
 
struct  RawFontData
 

Typedefs

typedef std::vector< ColorColorPalette
 

Enumerations

enum  NameID : hb_ot_name_id_t {
  NAME_ID_COPYRIGHT = 0 ,
  NAME_ID_FONT_FAMILY = 1 ,
  NAME_ID_FONT_SUBFAMILY = 2 ,
  NAME_ID_UNIQUE_ID = 3 ,
  NAME_ID_FULL_NAME = 4 ,
  NAME_ID_VERSION_STRING = 5 ,
  NAME_ID_POSTSCRIPT_NAME = 6 ,
  NAME_ID_TRADEMARK = 7 ,
  NAME_ID_MANUFACTURER = 8 ,
  NAME_ID_DESIGNER = 9 ,
  NAME_ID_DESCRIPTION = 10 ,
  NAME_ID_VENDOR_URL = 11 ,
  NAME_ID_DESIGNER_URL = 12 ,
  NAME_ID_LICENSE = 13 ,
  NAME_ID_LICENSE_URL = 14 ,
  NAME_ID_TYPOGRAPHIC_FAMILY = 16 ,
  NAME_ID_TYPOGRAPHIC_SUBFAMILY = 17 ,
  NAME_ID_MAC_FULL_NAME = 18 ,
  NAME_ID_SAMPLE_TEXT = 19 ,
  NAME_ID_CID_FINDFONT_NAME = 20 ,
  NAME_ID_WWS_FAMILY = 21 ,
  NAME_ID_WWS_SUBFAMILY = 22 ,
  NAME_ID_LIGHT_BACKGROUND = 23 ,
  NAME_ID_DARK_BACKGROUND = 24 ,
  NAME_ID_VARIATIONS_PS_PREFIX = 25
}
 
enum class  FontTypeFaces {
  NONE = 0x00 ,
  Scalable = 0x01 ,
  Symbol = 0x02 ,
  NoneSymbol = 0x04 ,
  Light = 0x08 ,
  Bold = 0x10 ,
  Normal = 0x20 ,
  NoneItalic = 0x40 ,
  Italic = 0x80
}
 
enum class  FeatureParameterType {
  BOOL ,
  ENUM
}
 
enum class  FeatureType {
  OpenType ,
  Graphite
}
 

Functions

void ImplFontSubstitute (OUString &rFontName)
 
OUString featureCodeAsString (uint32_t nFeature)
 
OUString trimFontNameFeatures (OUString const &rFontName)
 
OpenTypeFeatureDefinitionListPrivateOpenTypeFeatureDefinitionList ()
 
static bool FindMetricCompatibleFont (FontSelectPattern &rFontSelData)
 
static int FamilyNameMatchValue (FontSelectPattern const &rFSP, std::u16string_view sFontFamily)
 
static int StyleNameMatchValue (FontMatchStatus const &rStatus, std::u16string_view rStyle)
 
static int PitchMatchValue (FontSelectPattern const &rFSP, FontPitch ePitch)
 
static int PreferNormalFontWidthMatchValue (FontWidth eWidthType)
 
static int WeightMatchValue (FontSelectPattern const &rFSP, FontWeight eWeight)
 
static int ItalicMatchValue (FontSelectPattern const &rFSP, FontItalic eItalic)
 
static hb_blob_t * getTable (hb_face_t *, hb_tag_t nTag, void *pUserData)
 
static ImplFontAttrs lcl_IsCJKFont (std::u16string_view rFontName)
 
constexpr uint32_t featureCode (const char sFeature[4])
 

Variables

const std::vector< std::pair< OUString, OUString > > aMetricCompatibleMap
 
constexpr const char FeaturePrefix = ':'
 
constexpr const char FeatureSeparator = '&'
 

Detailed Description

A PhysicalFontFaceCollection is created by a PhysicalFontCollection and becomes invalid when original PhysicalFontCollection is modified.

Typedef Documentation

◆ ColorPalette

typedef std::vector<Color> vcl::font::ColorPalette

Definition at line 101 of file PhysicalFontFace.hxx.

Enumeration Type Documentation

◆ FeatureParameterType

Enumerator
BOOL 
ENUM 

Definition at line 29 of file Feature.hxx.

◆ FeatureType

enum class vcl::font::FeatureType
strong
Enumerator
OpenType 
Graphite 

Definition at line 35 of file Feature.hxx.

◆ FontTypeFaces

enum class vcl::font::FontTypeFaces
strong
Enumerator
NONE 
Scalable 
Symbol 
NoneSymbol 
Light 
Bold 
Normal 
NoneItalic 
Italic 

Definition at line 34 of file PhysicalFontFamily.hxx.

◆ NameID

enum vcl::font::NameID : hb_ot_name_id_t
Enumerator
NAME_ID_COPYRIGHT 
NAME_ID_FONT_FAMILY 
NAME_ID_FONT_SUBFAMILY 
NAME_ID_UNIQUE_ID 
NAME_ID_FULL_NAME 
NAME_ID_VERSION_STRING 
NAME_ID_POSTSCRIPT_NAME 
NAME_ID_TRADEMARK 
NAME_ID_MANUFACTURER 
NAME_ID_DESIGNER 
NAME_ID_DESCRIPTION 
NAME_ID_VENDOR_URL 
NAME_ID_DESIGNER_URL 
NAME_ID_LICENSE 
NAME_ID_LICENSE_URL 
NAME_ID_TYPOGRAPHIC_FAMILY 
NAME_ID_TYPOGRAPHIC_SUBFAMILY 
NAME_ID_MAC_FULL_NAME 
NAME_ID_SAMPLE_TEXT 
NAME_ID_CID_FINDFONT_NAME 
NAME_ID_WWS_FAMILY 
NAME_ID_WWS_SUBFAMILY 
NAME_ID_LIGHT_BACKGROUND 
NAME_ID_DARK_BACKGROUND 
NAME_ID_VARIATIONS_PS_PREFIX 

Definition at line 104 of file PhysicalFontFace.hxx.

Function Documentation

◆ FamilyNameMatchValue()

static int vcl::font::FamilyNameMatchValue ( FontSelectPattern const &  rFSP,
std::u16string_view  sFontFamily 
)
static

◆ featureCode()

constexpr uint32_t vcl::font::featureCode ( const char  sFeature[4])
constexpr

Definition at line 21 of file Feature.hxx.

Referenced by vcl::font::OpenTypeFeatureDefinitionListPrivate::init().

◆ featureCodeAsString()

VCL_DLLPUBLIC OUString vcl::font::featureCodeAsString ( uint32_t  nFeature)

Definition at line 19 of file Feature.cxx.

Referenced by vcl::font::FeatureDefinition::getDescription().

◆ FindMetricCompatibleFont()

static bool vcl::font::FindMetricCompatibleFont ( FontSelectPattern rFontSelData)
static

◆ getTable()

static hb_blob_t * vcl::font::getTable ( hb_face_t *  ,
hb_tag_t  nTag,
void *  pUserData 
)
static

Definition at line 227 of file PhysicalFontFace.cxx.

Referenced by vcl::font::PhysicalFontFace::GetHbFace().

◆ ImplFontSubstitute()

void vcl::font::ImplFontSubstitute ( OUString &  rFontName)

◆ ItalicMatchValue()

static int vcl::font::ItalicMatchValue ( FontSelectPattern const &  rFSP,
FontItalic  eItalic 
)
static

◆ lcl_IsCJKFont()

static ImplFontAttrs vcl::font::lcl_IsCJKFont ( std::u16string_view  rFontName)
static

◆ OpenTypeFeatureDefinitionList()

VCL_DLLPUBLIC OpenTypeFeatureDefinitionListPrivate & vcl::font::OpenTypeFeatureDefinitionList ( )

◆ PitchMatchValue()

static int vcl::font::PitchMatchValue ( FontSelectPattern const &  rFSP,
FontPitch  ePitch 
)
static

◆ PreferNormalFontWidthMatchValue()

static int vcl::font::PreferNormalFontWidthMatchValue ( FontWidth  eWidthType)
static

◆ StyleNameMatchValue()

static int vcl::font::StyleNameMatchValue ( FontMatchStatus const &  rStatus,
std::u16string_view  rStyle 
)
static

◆ trimFontNameFeatures()

VCL_DLLPUBLIC OUString vcl::font::trimFontNameFeatures ( OUString const &  rFontName)

Definition at line 17 of file FeatureParser.cxx.

References FeaturePrefix.

◆ WeightMatchValue()

static int vcl::font::WeightMatchValue ( FontSelectPattern const &  rFSP,
FontWeight  eWeight 
)
static

Variable Documentation

◆ aMetricCompatibleMap

const std::vector<std::pair<OUString, OUString> > vcl::font::aMetricCompatibleMap
Initial value:
=
{
{ "Times New Roman", "Liberation Serif" },
{ "Arial", "Liberation Sans" },
{ "Arial Narrow", "Liberation Sans Narrow" },
{ "Courier New", "Liberation Mono" },
{ "Cambria", "Caladea" },
{ "Calibri", "Carlito" },
}

Definition at line 933 of file PhysicalFontCollection.cxx.

Referenced by FindMetricCompatibleFont().

◆ FeaturePrefix

constexpr const char vcl::font::FeaturePrefix = ':'
constexpr

◆ FeatureSeparator

constexpr const char vcl::font::FeatureSeparator = '&'
constexpr

Definition at line 24 of file FeatureParser.hxx.

Referenced by vcl::font::FeatureParser::FeatureParser().