FONTAINE  1.0
FontFace.h
Go to the documentation of this file.
1 //
2 // The Fontaine Font Analysis Project
3 //
4 // Copyright (c) 2009 by Edward H. Trager
5 // All Rights Reserved
6 //
7 // Released under the GNU GPL version 2.0 or later.
8 //
9 
10 
11 #ifndef FONTFACE_INCLUDED
12 #define FONTFACE_INCLUDED
13 
14 #include <string>
15 #include <set>
16 #include <vector>
17 
18 #include <ft2build.h>
19 #include FT_FREETYPE_H
20 #include FT_SFNT_NAMES_H
21 
22 #include "Utf8String.h"
23 #include "FontLibrary.h"
24 #include "OrthographyResults.h"
25 #include "LicenseData.h"
26 
27 //
28 // Needed by the non-const fillReport() method:
29 //
30 #include "MLR.h"
31 
32 //
33 // This class contains information
34 // about a single font file:
35 //
36 class FontFace{
37 
38 public:
39 
40  //
41  // FontFaces are distinguished uniquely by
42  // using commonName + subFamily as the key:
43  //
44  struct compare{
45  bool operator()(const FontFace *f1,const FontFace *f2) const{
46  std::string t1, t2;
47  t1 = f1->_commonName;
48  t1 += f1->_subFamily ;
49  t2 = f2->_commonName;
50  t2 += f2->_subFamily ;
51  return t1 < t2;
52  }
53  };
54 
55  //
56  // The following enums generally follow the W3C CSS Standard (http://www.w3.org/TR/REC-CSS1):
57  //
59  enum STYLE { NORMAL, ITALIC, OBLIQUE };
61  //
63  //
64  // As the common labels "serif" and "sans" are primarily applicable in typography in the
65  // Western world, the following enum provides a generalization that is applicable across
66  // all scripts:
67  //
69 
70  enum NAMEID {
92  };
93 
94 private:
95 
96  FT_Face _face;
97 
98  std::string _fileName;
99  std::string _commonName; // The English or common Font Family name. e.g. "HanWangKaiMediumPoIn1"
100  std::string _nativeName; // The native Font Family name, e.g. "漢宗中楷體破音一"
101  std::string _subFamily; // As given in the English or common subFamily record.
102 
103  std::string _copyright;
104 
105  std::string _licenseURL; // 2009.07.16.ET addendum
106 
107  // 2011.04.18.ET addenda:
108  std::string _version;
109  std::string _vendor;
110  std::string _designer;
111  std::string _vendorURL;
112  std::string _designerURL;
113 
114  unsigned _glyphCount; // Number of glyphs
115 
121 
122  //
123  // Supported Orthographies
124  //
125  std::vector< const OrthographyResults * > _supportedOrthographies;
126 
127  //
128  // License:
129  //
131 
135 
136  std::set<UTF32> _unicodeValues;
137 
138  UTF8String _getPlatform3Encoding1String( unsigned length, const FT_Byte *string) const;
139  UTF8String _getPlatform1Encoding0String( unsigned length, const FT_Byte *string) const;
140  UTF8String _getStringFromTrueTypeFont(FT_SfntName &fontName) const;
141 
142  unsigned int _getUnicodeValues(void);
143 
144  //
145  // Reporting option state flags:
146  //
151 
152 public:
153 
154  //
155  // Constructor:
156  //
157  FontFace( FontLibrary &library, const std::string &fileName );
158 
159  //
160  // Destructor:
161  //
162  ~FontFace();
163 
164  //
165  // hasUnicodeValue()
166  //
167  bool hasUnicodeValue(UTF32) const;
168 
169  //
170  // getters for reports:
171  //
172  std::string getBasicReport(void) const;
173  std::string getOrthographyReport(void) const;
174 
175  //
176  // Reporting options:
177  //
178  void setReportOnMissing(bool x);
179  void setReportOnFragmentary(bool x);
180  void setReportOnPartial(bool x);
181  void setReportOnFull(bool x);
182 
183 private:
184 
185  bool _checkOrthography( const OrthographyData *pData );
186  void _checkOrthographies(void);
187 
188  bool _checkLicense( const std::string &test, const LicenseData *pData);
189  bool _checkAllKnownLicenses( const std::string &licenseString);
190  void _storeCopyrightSummary(const std::string &copyrightString);
191  void _checkLicenses(void);
192 
193 public:
194 
195  //
196  // getters:
197  //
198  const std::string & getFileName(void) const;
199  const std::string & getCommonName(void) const;
200  const std::string & getNativeName(void) const;
201  const std::string & getSubFamily(void) const;
202 
203  std::string getLicenseReport(void) const;
204  const std::string & getCopyright(void) const;
205 
206  unsigned getGlyphCount(void) const;
207  unsigned getCharacterCount(void) const;
208  FAMILY getFamily(void) const;
209  STYLE getStyle(void) const;
210  VARIANT getVariant(void) const;
211  WEIGHT getWeight(void) const;
212  STROKE getStroke(void) const;
213  bool hasVerticalMetrics(void) const;
214  bool isFixedWidth(void) const;
215  bool hasFixedSizes(void) const;
216 
217  //
218  // Pass in a report object, mlr,
219  // and fill in the report:
220  //
221  void fillReport(MLR *mlr);
222 
223 };
224 
225 #endif
OrthographyResults::FULL
@ FULL
Definition: OrthographyResults.h:30
Kana::pData
const OrthographyData * pData
Definition: Kana.h:58
Balinese::pData
const OrthographyData * pData
Definition: Balinese.h:55
Gothic::pData
const OrthographyData * pData
Definition: Gothic.h:53
Chakma::pData
const OrthographyData * pData
Definition: Chakma.h:59
MendeKikakui::pData
const OrthographyData * pData
Definition: MendeKikakui.h:59
FontFace::getNativeName
const std::string & getNativeName(void) const
Definition: FontFace.cpp:898
FontFace::getOrthographyReport
std::string getOrthographyReport(void) const
Definition: FontFace.cpp:649
FontFace::setReportOnFull
void setReportOnFull(bool x)
Definition: FontFace.cpp:873
LicenseData.h
Kokuji::pData
const OrthographyData * pData
Definition: Kokuji.h:156
Osmanya::pData
const OrthographyData * pData
Definition: Osmanya.h:84
FontFace::NID_DESCRIPTION
@ NID_DESCRIPTION
Definition: FontFace.h:81
Uighur::pData
const OrthographyData * pData
Definition: Uighur.h:62
Ogham::pData
const OrthographyData * pData
Definition: Ogham.h:54
Lao::pData
const OrthographyData * pData
Definition: Lao.h:84
FontFace::VARIANT
VARIANT
Definition: FontFace.h:60
Vai::pData
const OrthographyData * pData
Definition: Vai.h:355
MagentaOpenLicense::pData
const LicenseData * pData
Definition: Magenta.h:42
CC_BY_SA::pData
const LicenseData * pData
Definition: CC-BY-SA.h:50
FontFace::_hasFixedSizes
bool _hasFixedSizes
Definition: FontFace.h:134
TaiViet::pData
const OrthographyData * pData
Definition: TaiViet.h:55
LinearBIdeograms::pData
const OrthographyData * pData
Definition: LinearBIdeograms.h:53
FontFace::BOLD
@ BOLD
Definition: FontFace.h:62
Polynesian::pData
const OrthographyData * pData
Definition: Polynesian.h:76
FontFace::NID_URL_DESIGNER
@ NID_URL_DESIGNER
Definition: FontFace.h:83
Coptic::pData
const OrthographyData * pData
Definition: Coptic.h:67
FontFace::NID_FINDFONT_NM
@ NID_FINDFONT_NM
Definition: FontFace.h:91
FontFace.h
Astronomy::pData
const OrthographyData * pData
Definition: Astronomy.h:61
FontFace::NID_COPYRIGHT
@ NID_COPYRIGHT
Definition: FontFace.h:71
FontFace::NORMAL_WEIGHT
@ NORMAL_WEIGHT
Definition: FontFace.h:62
Batak::pData
const OrthographyData * pData
Definition: Batak.h:55
FontFace::W200
@ W200
Definition: FontFace.h:62
FontFace::_getPlatform1Encoding0String
UTF8String _getPlatform1Encoding0String(unsigned length, const FT_Byte *string) const
Definition: FontFace.cpp:243
LicenseData::name
const char * name
Definition: LicenseData.h:29
Bengali::pData
const OrthographyData * pData
Definition: Bengali.h:79
FontFace::STYLE
STYLE
Definition: FontFace.h:59
ChessSymbols::pData
const OrthographyData * pData
Definition: ChessSymbols.h:54
CC_BY::pData
const LicenseData * pData
Definition: CC-BY.h:46
Limbu::pData
const OrthographyData * pData
Definition: Limbu.h:60
MLR
Definition: MLR.h:49
LatinLigatures::pData
const OrthographyData * pData
Definition: LatinLigatures.h:59
TaiLe::pData
const OrthographyData * pData
Definition: TaiLe.h:46
FontFace::NID_VERSION
@ NID_VERSION
Definition: FontFace.h:76
Jamo::pData
const OrthographyData * pData
Definition: Jamo.h:57
Yi::pData
const OrthographyData * pData
Definition: Yi.h:54
FontFace::_getUnicodeValues
unsigned int _getUnicodeValues(void)
Definition: FontFace.cpp:314
Utf8String.h
FontFace::_reportFragmentary
bool _reportFragmentary
Definition: FontFace.h:148
CentralEuropean::pData
const OrthographyData * pData
Definition: CentralEuropean.h:135
Ahom::pData
const OrthographyData * pData
Definition: Ahom.h:61
FontFace::MONOSPACE
@ MONOSPACE
Definition: FontFace.h:58
FontFace::getSubFamily
const std::string & getSubFamily(void) const
Definition: FontFace.cpp:907
FontFace::getFileName
const std::string & getFileName(void) const
Definition: FontFace.cpp:880
FontFace::_supportedOrthographies
std::vector< const OrthographyResults * > _supportedOrthographies
Definition: FontFace.h:125
FontLibrary.h
UTF8String::unicodeSubStringOnWordBoundary
UTF8String unicodeSubStringOnWordBoundary(unsigned int stt, unsigned int howManyCharacters) const
Definition: Utf8String.cpp:143
Kazakh::pData
const OrthographyData * pData
Definition: Kazakh.h:65
FontFace::W100
@ W100
Definition: FontFace.h:62
UTF16
unsigned short UTF16
Definition: Utf8String.h:41
FontFace::ITALIC
@ ITALIC
Definition: FontFace.h:59
OlChiki::pData
const OrthographyData * pData
Definition: OlChiki.h:53
Dutch::pData
const OrthographyData * pData
Definition: Dutch.h:85
FontFace::_version
std::string _version
Definition: FontFace.h:108
FontFace::_stroke
STROKE _stroke
Definition: FontFace.h:120
Gurmukhi::pData
const OrthographyData * pData
Definition: Gurmukhi.h:130
ClaudianLetters::pData
const OrthographyData * pData
Definition: ClaudianLetters.h:58
FontFace::NID_FONT_SUBFAM
@ NID_FONT_SUBFAM
Definition: FontFace.h:73
Cham::pData
const OrthographyData * pData
Definition: Cham.h:59
Currencies::pData
const OrthographyData * pData
Definition: Currencies.h:74
FontFace::NORMAL_VARIANT
@ NORMAL_VARIANT
Definition: FontFace.h:60
FontFace::_isFixedWidth
bool _isFixedWidth
Definition: FontFace.h:133
PublicDomain::pData
const LicenseData * pData
Definition: PublicDomain.h:42
LicenseData::searchKeys
const char ** searchKeys
Definition: LicenseData.h:31
FontFace::_commonName
std::string _commonName
Definition: FontFace.h:99
Encoding.h
BasicGreek::pData
const OrthographyData * pData
Definition: BasicGreek.h:71
MathematicalNumerals::pData
const OrthographyData * pData
Definition: MathematicalNumerals.h:56
FontFace::NID_URL_LICENSE
@ NID_URL_LICENSE
Definition: FontFace.h:85
BasicCyrillic::pData
const OrthographyData * pData
Definition: BasicCyrillic.h:56
Kaithi::pData
const OrthographyData * pData
Definition: Kaithi.h:53
Pinyin::pData
const OrthographyData * pData
Definition: Pinyin.h:77
FontFace::NID_PREF_NAME
@ NID_PREF_NAME
Definition: FontFace.h:87
Runic::pData
const OrthographyData * pData
Definition: Runic.h:54
FontFace::_designerURL
std::string _designerURL
Definition: FontFace.h:112
MLR::endList
virtual void endList(const std::string &key)=0
FontFace::SANS
@ SANS
Definition: FontFace.h:58
TraditionalChinese::pData
const OrthographyData * pData
Definition: TraditionalChinese.h:3563
UTF32
unsigned long UTF32
Definition: Utf8String.h:40
FontFace::_copyright
std::string _copyright
Definition: FontFace.h:103
FontFace::setReportOnMissing
void setReportOnMissing(bool x)
Definition: FontFace.cpp:852
FontFace::_fileName
std::string _fileName
Definition: FontFace.h:98
Armenian::pData
const OrthographyData * pData
Definition: Armenian.h:59
Hangul::pData
const OrthographyData * pData
Definition: Hangul.h:54
UTF8String
Definition: Utf8String.h:55
FontFace::_reportMissing
bool _reportMissing
Definition: FontFace.h:147
GUSTLicense::pData
const LicenseData * pData
Definition: GUST.h:42
Emoticons::pData
const OrthographyData * pData
Definition: Emoticons.h:59
FontFace::_getPlatform3Encoding1String
UTF8String _getPlatform3Encoding1String(unsigned length, const FT_Byte *string) const
Definition: FontFace.cpp:220
FontFace::getFamily
FAMILY getFamily(void) const
Definition: FontFace.cpp:961
ArphicPublicLicense::pData
const LicenseData * pData
Definition: ArphicPublic.h:45
FontFace::STROKE
STROKE
Definition: FontFace.h:68
OrthographyResults::SUPPORTLEVEL
SUPPORTLEVEL
Definition: OrthographyResults.h:30
FontFace::CURSIVE
@ CURSIVE
Definition: FontFace.h:58
FontFace::getCopyright
const std::string & getCopyright(void) const
Definition: FontFace.cpp:934
FontFace::_vendor
std::string _vendor
Definition: FontFace.h:109
Urdu::pData
const OrthographyData * pData
Definition: Urdu.h:73
MathematicalOperators::pData
const OrthographyData * pData
Definition: MathematicalOperators.h:140
MPLUSLicense::pData
const LicenseData * pData
Definition: MPLUS.h:42
FontFace::NORMAL
@ NORMAL
Definition: FontFace.h:59
FontFace
Definition: FontFace.h:36
Malayalam::pData
const OrthographyData * pData
Definition: Malayalam.h:151
OrthographyData
Definition: OrthographyData.h:28
FontFace::NID_UNIQUE_ID
@ NID_UNIQUE_ID
Definition: FontFace.h:74
Jinmeiyo::pData
const OrthographyData * pData
Definition: Jinmeiyo.h:833
AleutCyrillic::pData
const OrthographyData * pData
Definition: AleutCyrillic.h:67
FontFace::W900
@ W900
Definition: FontFace.h:62
GPLWithFontException::pData
const LicenseData * pData
Definition: GPLWithFontException.h:42
HongKongSupplementaryCharacterSet::pData
const OrthographyData * pData
Definition: HKSCS.h:1749
Exception.h
ApacheLicense::pData
const LicenseData * pData
Definition: Apache.h:45
Sindhi::pData
const OrthographyData * pData
Definition: Sindhi.h:79
FontFace::NID_DESIGNER
@ NID_DESIGNER
Definition: FontFace.h:80
FontFace::getBasicReport
std::string getBasicReport(void) const
Definition: FontFace.cpp:291
Saurashtra::pData
const OrthographyData * pData
Definition: Saurashtra.h:55
FontFace::_variant
VARIANT _variant
Definition: FontFace.h:118
FontFace::getStroke
STROKE getStroke(void) const
Definition: FontFace.cpp:997
FontFace::setReportOnFragmentary
void setReportOnFragmentary(bool x)
Definition: FontFace.cpp:859
MLR.h
Thaana::pData
const OrthographyData * pData
Definition: Thaana.h:55
FontFace::UNMODULATED
@ UNMODULATED
Definition: FontFace.h:68
FontFace::_getStringFromTrueTypeFont
UTF8String _getStringFromTrueTypeFont(FT_SfntName &fontName) const
Definition: FontFace.cpp:261
FontFace::_hasVerticalMetrics
bool _hasVerticalMetrics
Definition: FontFace.h:132
FontFace::fillReport
void fillReport(MLR *mlr)
Definition: FontFace.cpp:1033
OpenFontLicense::pData
const LicenseData * pData
Definition: OFL.h:47
CC_ZERO::pData
const LicenseData * pData
Definition: CC-ZERO.h:50
KayahLi::pData
const OrthographyData * pData
Definition: KayahLi.h:53
Cherokee::pData
const OrthographyData * pData
Definition: Cherokee.h:54
FontFace::getWeight
WEIGHT getWeight(void) const
Definition: FontFace.cpp:988
Tamil::pData
const OrthographyData * pData
Definition: Tamil.h:117
BasicLatin::pData
const OrthographyData * pData
Definition: BasicLatin.h:62
FontFace::NID_TRADEMARK
@ NID_TRADEMARK
Definition: FontFace.h:78
Ethiopic::pData
const OrthographyData * pData
Definition: Ethiopic.h:74
FontFace::OBLIQUE
@ OBLIQUE
Definition: FontFace.h:59
FontLibrary
Definition: FontLibrary.h:17
UINT32
unsigned int UINT32
Definition: OrthographyData.h:19
SimplifiedChinese::pData
const OrthographyData * pData
Definition: SimplifiedChinese.h:3568
FontFace::_nativeName
std::string _nativeName
Definition: FontFace.h:100
Pashto::pData
const OrthographyData * pData
Definition: Pashto.h:67
FontFace::_weight
WEIGHT _weight
Definition: FontFace.h:119
OrthographyResults.h
OrthographyResults::PARTIAL
@ PARTIAL
Definition: OrthographyResults.h:30
FontFace::_reportFull
bool _reportFull
Definition: FontFace.h:150
FontFace::_checkAllKnownLicenses
bool _checkAllKnownLicenses(const std::string &licenseString)
Definition: FontFace.cpp:775
MLR::start
virtual void start(const std::string &key)=0
FontFace::_glyphCount
unsigned _glyphCount
Definition: FontFace.h:114
AleutLatin::pData
const OrthographyData * pData
Definition: AleutLatin.h:73
MeeteiMayak::pData
const OrthographyData * pData
Definition: MeeteiMayak.h:55
FontFace::_checkLicenses
void _checkLicenses(void)
Definition: FontFace.cpp:677
Devanagari::pData
const OrthographyData * pData
Definition: Devanagari.h:66
licenses.h
Nko::pData
const OrthographyData * pData
Definition: Nko.h:108
FontFace::_reportPartial
bool _reportPartial
Definition: FontFace.h:149
Baltic::pData
const OrthographyData * pData
Definition: Baltic.h:93
FontFace::MODULATED
@ MODULATED
Definition: FontFace.h:68
FontFace::compare::operator()
bool operator()(const FontFace *f1, const FontFace *f2) const
Definition: FontFace.h:45
SouthKoreanHanja::pData
const OrthographyData * pData
Definition: SouthKoreanHanja.h:1871
Kharoshthi::pData
const OrthographyData * pData
Definition: Kharoshthi.h:68
LicenseData
Definition: LicenseData.h:25
Exception
Definition: Exception.h:31
FontFace::getCommonName
const std::string & getCommonName(void) const
Definition: FontFace.cpp:889
FontFace::_designer
std::string _designer
Definition: FontFace.h:110
FontFace::getGlyphCount
unsigned getGlyphCount(void) const
Definition: FontFace.cpp:943
FontFace::getStyle
STYLE getStyle(void) const
Definition: FontFace.cpp:970
FontFace::FAMILY
FAMILY
Definition: FontFace.h:58
FontFace::isFixedWidth
bool isFixedWidth(void) const
Definition: FontFace.cpp:1015
AladdinFreePublicLicense::pData
const LicenseData * pData
Definition: Aladdin.h:42
Tibetan::pData
const OrthographyData * pData
Definition: Tibetan.h:67
FontFace::compare
Definition: FontFace.h:44
FontFace::hasVerticalMetrics
bool hasVerticalMetrics(void) const
Definition: FontFace.cpp:1006
Khmer::pData
const OrthographyData * pData
Definition: Khmer.h:56
Carian::pData
const OrthographyData * pData
Definition: Carian.h:47
orthographies.h
Oriya::pData
const OrthographyData * pData
Definition: Oriya.h:138
FontFace::NID_SAMPLETEXT
@ NID_SAMPLETEXT
Definition: FontFace.h:90
ArchaicGreekLetters::pData
const OrthographyData * pData
Definition: ArchaicGreekLetters.h:64
FontFace::~FontFace
~FontFace()
Definition: FontFace.cpp:211
Buginese::pData
const OrthographyData * pData
Definition: Buginese.h:55
FontFace::W600
@ W600
Definition: FontFace.h:62
Venda::pData
const OrthographyData * pData
Definition: Venda.h:52
Hanunoo::pData
const OrthographyData * pData
Definition: Hanunoo.h:67
FontFace::W700
@ W700
Definition: FontFace.h:62
LGPL::pData
const LicenseData * pData
Definition: LGPL.h:44
OrthographyResults::FRAGMENTARY
@ FRAGMENTARY
Definition: OrthographyResults.h:30
GPL::pData
const LicenseData * pData
Definition: GPL.h:45
FontFace::W800
@ W800
Definition: FontFace.h:62
Euro::pData
const OrthographyData * pData
Definition: Euro.h:53
FontFace::FontFace
FontFace(FontLibrary &library, const std::string &fileName)
Definition: FontFace.cpp:31
FontFace::NID_MAC_FULLNAME
@ NID_MAC_FULLNAME
Definition: FontFace.h:89
Syriac::pData
const OrthographyData * pData
Definition: Syriac.h:55
IPALicense::pData
const LicenseData * pData
Definition: licenses/IPA.h:45
Glagolitic::pData
const OrthographyData * pData
Definition: Glagolitic.h:58
OldSouthArabian::pData
const OrthographyData * pData
Definition: OldSouthArabian.h:53
IPA::pData
const OrthographyData * pData
Definition: orthographies/IPA.h:138
FontFace::NID_FONT_FAMILY
@ NID_FONT_FAMILY
Definition: FontFace.h:72
COPYRIGHT_SUMMARY_STRING_LENGTH
#define COPYRIGHT_SUMMARY_STRING_LENGTH
Definition: LicenseData.h:20
Javanese::pData
const OrthographyData * pData
Definition: Javanese.h:57
FontFace::NAMEID
NAMEID
Definition: FontFace.h:70
Encoding::macRomanToUTF32
static UTF32 macRomanToUTF32(unsigned char idx)
Definition: Encoding.cpp:159
LinearBSyllabary::pData
const OrthographyData * pData
Definition: LinearBSyllabary.h:63
FontFace::_licenseData
const LicenseData * _licenseData
Definition: FontFace.h:130
Miao::pData
const OrthographyData * pData
Definition: Miao.h:51
MeroiticCursive::pData
const OrthographyData * pData
Definition: MeroiticCursive.h:55
OrthographyResults
Definition: OrthographyResults.h:26
FontFace::setReportOnPartial
void setReportOnPartial(bool x)
Definition: FontFace.cpp:866
FontFace::_vendorURL
std::string _vendorURL
Definition: FontFace.h:111
FontFace::SEMIMODULATED
@ SEMIMODULATED
Definition: FontFace.h:68
FontFace::WEIGHT
WEIGHT
Definition: FontFace.h:62
FontFace::getCharacterCount
unsigned getCharacterCount(void) const
Definition: FontFace.cpp:952
PolytonicGreek::pData
const OrthographyData * pData
Definition: PolytonicGreek.h:83
FontFace::NID_POSTSCRIPT
@ NID_POSTSCRIPT
Definition: FontFace.h:77
MeroiticHieroglyphs::pData
const OrthographyData * pData
Definition: MeroiticHieroglyphs.h:53
Sundanese::pData
const OrthographyData * pData
Definition: Sundanese.h:55
FontFace::_subFamily
std::string _subFamily
Definition: FontFace.h:101
FontFace::SMALL_CAPS
@ SMALL_CAPS
Definition: FontFace.h:60
FontFace::NID_VENDOR
@ NID_VENDOR
Definition: FontFace.h:79
Joyo::pData
const OrthographyData * pData
Definition: Joyo.h:2003
Freeware::pData
const LicenseData * pData
Definition: Freeware.h:43
START_RANGE_PAIR
#define START_RANGE_PAIR
Definition: OrthographyData.h:22
Kannada::pData
const OrthographyData * pData
Definition: Kannada.h:77
FontFace::_checkLicense
bool _checkLicense(const std::string &test, const LicenseData *pData)
Definition: FontFace.cpp:837
FontFace::hasUnicodeValue
bool hasUnicodeValue(UTF32) const
Definition: FontFace.cpp:636
FontFace::SERIF
@ SERIF
Definition: FontFace.h:58
Arabic::pData
const OrthographyData * pData
Definition: Arabic.h:62
UtopiaLicense::pData
const LicenseData * pData
Definition: Utopia.h:42
FontFace::getLicenseReport
std::string getLicenseReport(void) const
Definition: FontFace.cpp:916
LicenseData::url
const char * url
Definition: LicenseData.h:30
FontFace::_checkOrthographies
void _checkOrthographies(void)
Definition: FontFace.cpp:419
FontFace::NID_LICENSE
@ NID_LICENSE
Definition: FontFace.h:84
Food::pData
const OrthographyData * pData
Definition: Food.h:54
TaiTham::pData
const OrthographyData * pData
Definition: TaiTham.h:62
FontFace::NID_RESERVED
@ NID_RESERVED
Definition: FontFace.h:86
Bamum::pData
const OrthographyData * pData
Definition: Bamum.h:53
FontFace::_storeCopyrightSummary
void _storeCopyrightSummary(const std::string &copyrightString)
Definition: FontFace.cpp:762
Rejang::pData
const OrthographyData * pData
Definition: Rejang.h:54
Telugu::pData
const OrthographyData * pData
Definition: Telugu.h:146
UnknownLicense::pData
const LicenseData * pData
Definition: UnknownLicense.h:42
FontFace::NID_PREF_SUBFAM
@ NID_PREF_SUBFAM
Definition: FontFace.h:88
Catalan::pData
const OrthographyData * pData
Definition: Catalan.h:76
ZhuYinFuHao::pData
const OrthographyData * pData
Definition: ZhuYinFuHao.h:54
FontFace::_unicodeValues
std::set< UTF32 > _unicodeValues
Definition: FontFace.h:136
FontFace::_style
STYLE _style
Definition: FontFace.h:117
FontFace::_checkOrthography
bool _checkOrthography(const OrthographyData *pData)
Definition: FontFace.cpp:334
FontFace::W500
@ W500
Definition: FontFace.h:62
Tifinagh::pData
const OrthographyData * pData
Definition: Tifinagh.h:99
WesternEuropean::pData
const OrthographyData * pData
Definition: WesternEuropean.h:65
IgboOnwu::pData
const OrthographyData * pData
Definition: IgboOnwu.h:84
MathematicalLatin::pData
const OrthographyData * pData
Definition: MathematicalLatin.h:113
FontFace::FANTASY
@ FANTASY
Definition: FontFace.h:58
Farsi::pData
const OrthographyData * pData
Definition: Farsi.h:60
EgyptianHieroglyphs::pData
const OrthographyData * pData
Definition: EgyptianHieroglyphs.h:53
VedicExtensions::pData
const OrthographyData * pData
Definition: VedicExtensions.h:53
Brahmi::pData
const OrthographyData * pData
Definition: Brahmi.h:59
FontFace::NID_URL_VENDOR
@ NID_URL_VENDOR
Definition: FontFace.h:82
CypriotSyllabary::pData
const OrthographyData * pData
Definition: CypriotSyllabary.h:60
CanadianSyllabics::pData
const OrthographyData * pData
Definition: CanadianSyllabics.h:58
FontFace::hasFixedSizes
bool hasFixedSizes(void) const
Definition: FontFace.cpp:1024
MLR::end
virtual void end(const std::string &key)=0
Gujarati::pData
const OrthographyData * pData
Definition: Gujarati.h:134
Georgian::pData
const OrthographyData * pData
Definition: Georgian.h:61
STIXLicense::pData
const LicenseData * pData
Definition: STIX.h:46
Lepcha::pData
const OrthographyData * pData
Definition: Lepcha.h:57
FontFace::W400
@ W400
Definition: FontFace.h:62
FontFace::_genericFamily
FAMILY _genericFamily
Definition: FontFace.h:116
MathematicalGreek::pData
const OrthographyData * pData
Definition: MathematicalGreek.h:64
Romanian::pData
const OrthographyData * pData
Definition: Romanian.h:62
FontFace::NID_FULL_NAME
@ NID_FULL_NAME
Definition: FontFace.h:75
Hebrew::pData
const OrthographyData * pData
Definition: Hebrew.h:54
FontFace::W300
@ W300
Definition: FontFace.h:62
NewTaiLue::pData
const OrthographyData * pData
Definition: NewTaiLue.h:50
PanAfricanLatin::pData
const OrthographyData * pData
Definition: PanAfricanLatin.h:364
MITLicense::pData
const LicenseData * pData
Definition: MIT.h:42
FontFace::getVariant
VARIANT getVariant(void) const
Definition: FontFace.cpp:979
MLR::startList
virtual void startList(const std::string &key)=0
Thai::pData
const OrthographyData * pData
Definition: Thai.h:56
SylotiNagri::pData
const OrthographyData * pData
Definition: SylotiNagri.h:53
Afrikaans::pData
const OrthographyData * pData
Definition: Afrikaans.h:91
XFree86License::pData
const LicenseData * pData
Definition: XFree86.h:42
Sinhala::pData
const OrthographyData * pData
Definition: Sinhala.h:131
Myanmar::pData
const OrthographyData * pData
Definition: Myanmar.h:64
Turkish::pData
const OrthographyData * pData
Definition: Turkish.h:70
PhagsPa::pData
const OrthographyData * pData
Definition: PhagsPa.h:44
Mongolian::pData
const OrthographyData * pData
Definition: Mongolian.h:57
FontLibrary::get
FT_Library get()
Definition: FontLibrary.cpp:41
FontFace::_licenseURL
std::string _licenseURL
Definition: FontFace.h:105
Vietnamese::pData
const OrthographyData * pData
Definition: Vietnamese.h:187
FontFace::_face
FT_Face _face
Definition: FontFace.h:96
MLR::addKeyValuePair
virtual void addKeyValuePair(const std::string &key, const std::string &value)=0
BitstreamVeraLicense::pData
const LicenseData * pData
Definition: BitstreamVera.h:44