5 #include <common/memory.h>
7 #include "string_metrics.h"
10 namespace caspar { namespace core { namespace text {
18 texture_font(const texture_font&);
19 const texture_font& operator=(const texture_font&);
22 texture_font(texture_atlas&, const text_info&, bool normalize_coordinates);
23 void load_glyphs(unicode_block block, const color<float>& col);
24 std::vector<float> create_vertex_stream(const std::wstring& str, int x, int y, int parent_width, int parent_height, string_metrics* metrics);
25 string_metrics measure_string(const std::wstring& str);
29 spl::shared_ptr<impl> impl_;
39 Spacing_Modifier_Letters,
40 Combining_Diacritical_Marks,
73 Unified_Canadian_Aboriginal_Syllabics,
82 Unified_Canadian_Aboriginal_Syllabics_Extended,
97 Phonetic_Extensions_Supplement,
98 Combining_Diacritical_Marks_Supplement,
99 Latin_Extended_Additional,
102 Superscripts_and_Subscripts,
104 Combining_Diacritical_Marks_for_Symbols,
108 Mathematical_Operators,
109 Miscellaneous_Technical,
111 Optical_Character_Recognition,
112 Enclosed_Alphanumerics,
116 Miscellaneous_Symbols,
118 Miscellaneous_Mathematical_Symbols_A,
119 Supplemental_Arrows_A,
121 Supplemental_Arrows_B,
122 Miscellaneous_Mathematical_Symbols_B,
123 Supplemental_Mathematical_Operators,
124 Miscellaneous_Symbols_and_Arrows,
132 Supplemental_Punctuation,
133 CJK_Radicals_Supplement,
135 Ideographic_Description_Characters,
136 CJK_Symbols_and_Punctuation,
140 Hangul_Compatibility_Jamo,
144 Katakana_Phonetic_Extensions,
145 Enclosed_CJK_Letters_and_Months,
147 CJK_Unified_Ideographs_Extension_A,
148 Yijing_Hexagram_Symbols,
149 CJK_Unified_Ideographs,
156 Modifier_Tone_Letters,
159 Common_Indic_Number_Forms,
165 Hangul_Jamo_Extended_A,
170 Meetei_Mayek_Extensions,
174 Hangul_Jamo_Extended_B,
176 High_Private_Use_Surrogates,
179 CJK_Compatibility_Ideographs,
180 Alphabetic_Presentation_Forms,
181 Arabic_Presentation_Forms_A,
184 Combining_Half_Marks,
185 CJK_Compatibility_Forms,
187 Arabic_Presentation_Forms_B,
188 Halfwidth_and_Fullwidth_Forms,
193 Ancient_Greek_Numbers,
209 Meroitic_Hieroglyphs,
214 Inscriptional_Parthian,
215 Inscriptional_Pahlavi,
217 Rumi_Numeral_Symbols,
225 Cuneiform_Numbers_and_Punctuation,
226 Egyptian_Hieroglyphs,
230 Byzantine_Musical_Symbols,
232 Ancient_Greek_Musical_Notation,
233 Tai_Xuan_Jing_Symbols,
234 Counting_Rod_Numerals,
235 Mathematical_Alphanumeric_Symbols,
236 Arabic_Mathematical_Alphabetic_Symbols,
240 Enclosed_Alphanumeric_Supplement,
241 Enclosed_Ideographic_Supplement,
242 Miscellaneous_Symbols_And_Pictographs,
244 Transport_And_Map_Symbols,
246 CJK_Unified_Ideographs_Extension_B,
247 CJK_Unified_Ideographs_Extension_C,
248 CJK_Unified_Ideographs_Extension_D,
249 CJK_Compatibility_Ideographs_Supplement,
251 Variation_Selectors_Supplement,
252 Supplementary_Private_Use_Area_A,
253 Supplementary_Private_Use_Area_B