gfx/skia/trunk/src/ports/SkFontConfigParser_android.h

branch
TOR_BUG_3246
changeset 7
129ffea94266
equal deleted inserted replaced
-1:000000000000 0:52fa3b307c4d
1 /*
2 * Copyright 2011 The Android Open Source Project
3 *
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
6 */
7
8 #ifndef SKFONTCONFIGPARSER_ANDROID_H_
9 #define SKFONTCONFIGPARSER_ANDROID_H_
10
11 #include "SkTypes.h"
12
13 #include "SkPaintOptionsAndroid.h"
14 #include "SkString.h"
15 #include "SkTDArray.h"
16
17 struct FontFileInfo {
18 FontFileInfo() : fFileName(NULL) {}
19
20 const char* fFileName;
21 SkPaintOptionsAndroid fPaintOptions;
22 };
23
24 /**
25 * The FontFamily data structure is created during parsing and handed back to
26 * Skia to fold into its representation of font families. fNames is the list of
27 * font names that alias to a font family. fontFileArray is the list of information
28 * about each file. Order is the priority order for the font. This is
29 * used internally to determine the order in which to place fallback fonts as
30 * they are read from the configuration files.
31 */
32 struct FontFamily {
33 FontFamily() : fIsFallbackFont(false), order(-1) {}
34
35 SkTDArray<const char*> fNames;
36 SkTDArray<FontFileInfo*> fFontFiles;
37 bool fIsFallbackFont;
38 int order; // only used internally by SkFontConfigParser
39 };
40
41 namespace SkFontConfigParser {
42
43 /**
44 * Parses all system font configuration files and returns the results in an
45 * array of FontFamily structures.
46 */
47 void GetFontFamilies(SkTDArray<FontFamily*> &fontFamilies);
48
49 /**
50 * Parses all test font configuration files and returns the results in an
51 * array of FontFamily structures.
52 */
53 void GetTestFontFamilies(SkTDArray<FontFamily*> &fontFamilies,
54 const char* testMainConfigFile,
55 const char* testFallbackConfigFile);
56
57 SkString GetLocale();
58
59 } // SkFontConfigParser namespace
60
61 #endif /* SKFONTCONFIGPARSER_ANDROID_H_ */

mercurial