diff options
-rw-r--r-- | data/fonts/fallback_fonts.xml | 47 | ||||
-rw-r--r-- | data/fonts/fonts.mk | 4 | ||||
-rw-r--r-- | data/fonts/system_fonts.xml | 68 | ||||
-rw-r--r-- | data/fonts/vendor_fonts.xml | 51 |
4 files changed, 169 insertions, 1 deletions
diff --git a/data/fonts/fallback_fonts.xml b/data/fonts/fallback_fonts.xml new file mode 100644 index 0000000..c0d9153 --- /dev/null +++ b/data/fonts/fallback_fonts.xml @@ -0,0 +1,47 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Fallback Fonts + + This file specifies the fonts, and the priority order, that will be searched for any + glyphs not handled by the default fonts specified in /system/etc/system_fonts.xml. + Each entry consists of a family tag and a list of files (file names) which support that + family. The fonts for each family are listed in the order of the styles that they + handle (the order is: regular, bold, italic, and bold-italic). The order in which the + families are listed in this file represents the order in which these fallback fonts + will be searched for glyphs that are not supported by the default system fonts (which are + found in /system/etc/system_fonts.xml). + + Note that there is not nameset for fallback fonts, unlike the fonts specified in + system_fonts.xml. The ability to support specific names in fallback fonts may be supported + in the future. For now, the lack of files entries here is an indicator to the system that + these are fallback fonts, instead of default named system fonts. + + There is another optional file in /vendor/etc/fallback_fonts.xml. That file can be used to + provide references to other font families that should be used in addition to the default + fallback fonts. That file can also specify the order in which the fallback fonts should be + searched, to ensure that a vendor-provided font will be used before another fallback font + which happens to handle the same glyph. +--> +<familyset> + <family> + <fileset> + <file>DroidSansArabic.ttf</file> + </fileset> + </family> + <family> + <fileset> + <file>DroidSansHebrew-Regular.ttf</file> + <file>DroidSansHebrew-Bold.ttf</file> + </fileset> + </family> + <family> + <fileset> + <file>DroidSansThai.ttf</file> + </fileset> + </family> + <family> + <fileset> + <file>DroidSansFallback.ttf</file> + </fileset> + </family> +</familyset> diff --git a/data/fonts/fonts.mk b/data/fonts/fonts.mk index d222c0b..57a1bab 100644 --- a/data/fonts/fonts.mk +++ b/data/fonts/fonts.mk @@ -30,4 +30,6 @@ PRODUCT_COPY_FILES := \ frameworks/base/data/fonts/DroidSansFallback.ttf:system/fonts/DroidSansFallback.ttf \ frameworks/base/data/fonts/AndroidClock.ttf:system/fonts/AndroidClock.ttf \ frameworks/base/data/fonts/AndroidClock_Highlight.ttf:system/fonts/AndroidClock_Highlight.ttf \ - frameworks/base/data/fonts/AndroidClock_Solid.ttf:system/fonts/AndroidClock_Solid.ttf + frameworks/base/data/fonts/AndroidClock_Solid.ttf:system/fonts/AndroidClock_Solid.ttf \ + frameworks/base/data/fonts/system_fonts.xml:system/etc/system_fonts.xml \ + frameworks/base/data/fonts/fallback_fonts.xml:system/etc/fallback_fonts.xml diff --git a/data/fonts/system_fonts.xml b/data/fonts/system_fonts.xml new file mode 100644 index 0000000..8d8d020 --- /dev/null +++ b/data/fonts/system_fonts.xml @@ -0,0 +1,68 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + System Fonts + + This file lists the font families that will be used by default for all supported glyphs. + Each entry consists of a family, various names that are supported by that family, and + up to four font files. The font files are listed in the order of the styles which they + support: regular, bold, italic and bold-italic. If less than four styles are listed, then + the styles with no associated font file will be supported by the other font files listed. + + The first family is also the default font, which handles font request that have not specified + specific font names. + + Any glyph that is not handled by the system fonts will cause a search of the fallback fonts. + The default fallback fonts are specified in the file /system/etc/fallback_fonts.xml, and there + is an optional file which may be supplied by vendors to specify other fallback fonts to use + in /vendor/etc/fallback_fonts.xml. +--> +<familyset> + + <family> + <nameset> + <name>sans-serif</name> + <name>arial</name> + <name>helvetica</name> + <name>tahoma</name> + <name>verdana</name> + </nameset> + <fileset> + <file>DroidSans.ttf</file> + <file>DroidSans-Bold.ttf</file> + </fileset> + </family> + + <family> + <nameset> + <name>serif</name> + <name>times</name> + <name>times new roman</name> + <name>palatino</name> + <name>georgia</name> + <name>baskerville</name> + <name>goudy</name> + <name>fantasy</name> + <name>cursive</name> + <name>ITC Stone Serif</name> + </nameset> + <fileset> + <file>DroidSerif-Regular.ttf</file> + <file>DroidSerif-Bold.ttf</file> + <file>DroidSerif-Italic.ttf</file> + <file>DroidSerif-BoldItalic.ttf</file> + </fileset> + </family> + + <family> + <nameset> + <name>monospace</name> + <name>courier</name> + <name>courier new</name> + <name>monaco</name> + </nameset> + <fileset> + <file>DroidSansMono.ttf</file> + </fileset> + </family> + +</familyset> diff --git a/data/fonts/vendor_fonts.xml b/data/fonts/vendor_fonts.xml new file mode 100644 index 0000000..fe51fd2 --- /dev/null +++ b/data/fonts/vendor_fonts.xml @@ -0,0 +1,51 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Vendor-provided fallback fonts + + This file can be edited to add references to fonts that are not installed or referenced in the + default system. The file should then be placed in /vendor/etc/fallback_fonts.xml. + + For example, vendors might want to build configurations for locales that are + better served by fonts which either handle glyphs not supported in the default fonts or which + handle these glyphs differently than the default fallback fonts. + Each entry in this list is a "family", which consists of a list of "files" + (the filenames for that family). The files objects are + provided in the order of the styles supported for that family: regular, bold, italic, and + bold-italic. Only providing one font means that all styles will be rendered with that font. + Providing two means that these two fonts will render regular and bold fonts (italics will + be mapped to these two fonts). + + There is also an optional "order" attribute on the Family tag. This specifies the index at + which that family of fonts should be inserted in the fallback font list, where the + default fallback fonts on the system (in /system/etc/fallback_fonts.xml) start at index 0. + If no 'order' attribute is supplied, that family will be inserted either at the end of the + current fallback list (if no order was supplied for any previous family in this file) or + after the previous family (if there was an order specified previously). Typically, vendors + may want to supply an order for the first family that puts this set of fonts at the appropriate + place in the overall fallback fonts. The order of this list determines which fallback font + will be used to support any glyphs that are not handled by the default system fonts. + + The sample configuration below is an example of how one might provide two families of fonts + that get inserted at the first and second (0 and 1) position in the overall fallback fonts. + + See /system/etc/system_fonts.xml and /system/etc/fallback_fonts.xml for more information + and to understand the order in which the default system fonts are loaded and structured for + lookup. +--> + +<!-- Sample fallback font additions to the default fallback list. These fonts will be added + to the top two positions of the fallback list, since the first has an order of 0. --> +<!-- +<familyset> + <family order="0"> + <fileset> + <file>MyFont.ttf</file> + </fileset> + </family> + <family> + <fileset> + <file>MyOtherFont.ttf</file> + </fileset> + </family> +</familyset> +-->
\ No newline at end of file |