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 void set_tracking(int tracking);
25 std::vector<float> create_vertex_stream(const std::wstring& str, int x, int y, int parent_width, int parent_height, string_metrics* metrics);
26 string_metrics measure_string(const std::wstring& str);
30 spl::shared_ptr<impl> impl_;
40 Spacing_Modifier_Letters,
41 Combining_Diacritical_Marks,
74 Unified_Canadian_Aboriginal_Syllabics,
83 Unified_Canadian_Aboriginal_Syllabics_Extended,
98 Phonetic_Extensions_Supplement,
99 Combining_Diacritical_Marks_Supplement,
100 Latin_Extended_Additional,
103 Superscripts_and_Subscripts,
105 Combining_Diacritical_Marks_for_Symbols,
109 Mathematical_Operators,
110 Miscellaneous_Technical,
112 Optical_Character_Recognition,
113 Enclosed_Alphanumerics,
117 Miscellaneous_Symbols,
119 Miscellaneous_Mathematical_Symbols_A,
120 Supplemental_Arrows_A,
122 Supplemental_Arrows_B,
123 Miscellaneous_Mathematical_Symbols_B,
124 Supplemental_Mathematical_Operators,
125 Miscellaneous_Symbols_and_Arrows,
133 Supplemental_Punctuation,
134 CJK_Radicals_Supplement,
136 Ideographic_Description_Characters,
137 CJK_Symbols_and_Punctuation,
141 Hangul_Compatibility_Jamo,
145 Katakana_Phonetic_Extensions,
146 Enclosed_CJK_Letters_and_Months,
148 CJK_Unified_Ideographs_Extension_A,
149 Yijing_Hexagram_Symbols,
150 CJK_Unified_Ideographs,
157 Modifier_Tone_Letters,
160 Common_Indic_Number_Forms,
166 Hangul_Jamo_Extended_A,
171 Meetei_Mayek_Extensions,
175 Hangul_Jamo_Extended_B,
177 High_Private_Use_Surrogates,
180 CJK_Compatibility_Ideographs,
181 Alphabetic_Presentation_Forms,
182 Arabic_Presentation_Forms_A,
185 Combining_Half_Marks,
186 CJK_Compatibility_Forms,
188 Arabic_Presentation_Forms_B,
189 Halfwidth_and_Fullwidth_Forms,
194 Ancient_Greek_Numbers,
210 Meroitic_Hieroglyphs,
215 Inscriptional_Parthian,
216 Inscriptional_Pahlavi,
218 Rumi_Numeral_Symbols,
226 Cuneiform_Numbers_and_Punctuation,
227 Egyptian_Hieroglyphs,
231 Byzantine_Musical_Symbols,
233 Ancient_Greek_Musical_Notation,
234 Tai_Xuan_Jing_Symbols,
235 Counting_Rod_Numerals,
236 Mathematical_Alphanumeric_Symbols,
237 Arabic_Mathematical_Alphabetic_Symbols,
241 Enclosed_Alphanumeric_Supplement,
242 Enclosed_Ideographic_Supplement,
243 Miscellaneous_Symbols_And_Pictographs,
245 Transport_And_Map_Symbols,
247 CJK_Unified_Ideographs_Extension_B,
248 CJK_Unified_Ideographs_Extension_C,
249 CJK_Unified_Ideographs_Extension_D,
250 CJK_Compatibility_Ideographs_Supplement,
252 Variation_Selectors_Supplement,
253 Supplementary_Private_Use_Area_A,
254 Supplementary_Private_Use_Area_B