| /* libs/graphics/ports/FontHostConfiguration_android.h |
| ** |
| ** Copyright 2011, The Android Open Source Project |
| ** |
| ** Licensed under the Apache License, Version 2.0 (the "License"); |
| ** you may not use this file except in compliance with the License. |
| ** You may obtain a copy of the License at |
| ** |
| ** http://www.apache.org/licenses/LICENSE-2.0 |
| ** |
| ** Unless required by applicable law or agreed to in writing, software |
| ** distributed under the License is distributed on an "AS IS" BASIS, |
| ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| ** See the License for the specific language governing permissions and |
| ** limitations under the License. |
| */ |
| #ifndef FONTHOSTCONFIGURATION_ANDROID_H_ |
| #define FONTHOSTCONFIGURATION_ANDROID_H_ |
| |
| #include "SkTypes.h" |
| |
| #include "SkLanguage.h" |
| #include "SkPaint.h" |
| #include "SkTDArray.h" |
| |
| struct FontFileInfo { |
| FontFileInfo() : fFileName(NULL), fVariant(SkPaint::kDefault_Variant), |
| fLanguage() { |
| } |
| |
| const char* fFileName; |
| SkPaint::FontVariant fVariant; |
| SkLanguage fLanguage; |
| }; |
| |
| /** |
| * The FontFamily data structure is created during parsing and handed back to |
| * Skia to fold into its representation of font families. fNames is the list of |
| * font names that alias to a font family. fontFileArray is the list of information |
| * about each file. Order is the priority order for the font. This is |
| * used internally to determine the order in which to place fallback fonts as |
| * they are read from the configuration files. |
| */ |
| struct FontFamily { |
| SkTDArray<const char*> fNames; |
| SkTDArray<FontFileInfo*> fFontFileArray; |
| int order; |
| }; |
| |
| /** |
| * Parses all system font configuration files and returns the results in an |
| * array of FontFamily structures. |
| */ |
| void getFontFamilies(SkTDArray<FontFamily*> &fontFamilies); |
| |
| /** |
| * Parse only the core system font configuration file and return the results in |
| * an array of FontFamily structures. |
| */ |
| void getSystemFontFamilies(SkTDArray<FontFamily*> &fontFamilies); |
| |
| /** |
| * Parse the fallback and vendor system font configuration files and return the |
| * results in an array of FontFamily structures. |
| */ |
| void getFallbackFontFamilies(SkTDArray<FontFamily*> &fallbackFonts); |
| |
| #endif /* FONTHOSTCONFIGURATION_ANDROID_H_ */ |