Blame vendor_fonts.xml

Packit 4cd568
Packit 4cd568
Packit 4cd568
    Vendor-provided fallback fonts
Packit 4cd568
Packit 4cd568
    This file can be edited to add references to fonts that are not installed or referenced in the
Packit 4cd568
    default system. The file should then be placed in /vendor/etc/fallback_fonts.xml. Note
Packit 4cd568
    that in your makefile, this directory should be referenced as $(TARGET_COPY_OUT_VENDOR)/etc/:
Packit 4cd568
Packit 4cd568
        PRODUCT_COPY_FILES += \
Packit 4cd568
            frameworks/base/data/fonts/vendor_fonts.xml:$(TARGET_COPY_OUT_VENDOR)/etc/fallback_fonts.xml \
Packit 4cd568
            frameworks/base/data/fonts/vendor_fonts-ja.xml:$(TARGET_COPY_OUT_VENDOR)/etc/fallback_fonts-ja.xml
Packit 4cd568
Packit 4cd568
    For example, vendors might want to build configurations for locales that are
Packit 4cd568
    better served by fonts which either handle glyphs not supported in the default fonts or which
Packit 4cd568
    handle these glyphs differently than the default fallback fonts.
Packit 4cd568
    Each entry in this list is a "family", which consists of a list of "files"
Packit 4cd568
    (the filenames for that family). The files objects are
Packit 4cd568
    provided in the order of the styles supported for that family: regular, bold, italic, and
Packit 4cd568
    bold-italic. Only providing one font means that all styles will be rendered with that font.
Packit 4cd568
    Providing two means that these two fonts will render regular and bold fonts (italics will
Packit 4cd568
    be mapped to these two fonts).
Packit 4cd568
Packit 4cd568
    There is also an optional "order" attribute on the Family tag. This specifies the index at
Packit 4cd568
    which that family of fonts should be inserted in the fallback font list, where the
Packit 4cd568
    default fallback fonts on the system (in /system/etc/fallback_fonts.xml) start at index 0.
Packit 4cd568
    If no 'order' attribute is supplied, that family will be inserted either at the end of the
Packit 4cd568
    current fallback list (if no order was supplied for any previous family in this file) or
Packit 4cd568
    after the previous family (if there was an order specified previously). Typically, vendors
Packit 4cd568
    may want to supply an order for the first family that puts this set of fonts at the appropriate
Packit 4cd568
    place in the overall fallback fonts. The order of this list determines which fallback font
Packit 4cd568
    will be used to support any glyphs that are not handled by the default system fonts.
Packit 4cd568
Packit 4cd568
    Han languages (Chinese, Japanese, and Korean) share a common range of unicode characters;
Packit 4cd568
    their ordering in the fallback or vendor files gives priority to the first in the list.
Packit 4cd568
    Locale-specific ordering can be configured by adding language and region codes to the end
Packit 4cd568
    of the filename (e.g. /vendor/etc/fallback_fonts-ja.xml). When no region code is used,
Packit 4cd568
    as with this example, all regions are matched. Use separate files for each supported locale.
Packit 4cd568
    The standard fallback file (fallback_fonts.xml) is used when a locale does not have its own
Packit 4cd568
    file. All fallback files must contain the same complete set of fonts; only their ordering
Packit 4cd568
    can differ. For example, on a device supporting Japanese, but with English as the default,
Packit 4cd568
    /vendor/etc/fallback_fonts.xml might contain:
Packit 4cd568
Packit 4cd568
        <familyset>
Packit 4cd568
            <family>
Packit 4cd568
                <fileset>
Packit 4cd568
                    <file>DroidSansJapanese.ttf</file>
Packit 4cd568
                </fileset>
Packit 4cd568
            </family>
Packit 4cd568
        </familyset>
Packit 4cd568
Packit 4cd568
    placing the Japanese font at the end of the fallback sequence for English, with a corresponding
Packit 4cd568
    /system/vendor/etc/fallback_fonts-ja.xml, placing it at the front of the list.
Packit 4cd568
Packit 4cd568
        <familyset>
Packit 4cd568
            <family order="0">
Packit 4cd568
                <fileset>
Packit 4cd568
                    <file>DroidSansJapanese.ttf</file>
Packit 4cd568
                </fileset>
Packit 4cd568
            </family>
Packit 4cd568
        </familyset>
Packit 4cd568
Packit 4cd568
    The sample configuration below is an example of how one might provide two families of fonts
Packit 4cd568
    that get inserted at the first and second (0  and 1) position in the overall fallback fonts.
Packit 4cd568
Packit 4cd568
    See /system/etc/system_fonts.xml and /system/etc/fallback_fonts.xml for more information
Packit 4cd568
    and to understand the order in which the default system fonts are loaded and structured for
Packit 4cd568
    lookup.
Packit 4cd568
-->
Packit 4cd568
Packit 4cd568
Packit 4cd568
    to the top two positions of the fallback list, since the first has an order of 0. -->
Packit 4cd568
Packit 4cd568
<familyset>
Packit 4cd568
    <family order="0">
Packit 4cd568
        <fileset>
Packit 4cd568
            <file>MyFont.ttf</file>
Packit 4cd568
        </fileset>
Packit 4cd568
    </family>
Packit 4cd568
    <family>
Packit 4cd568
        <fileset>
Packit 4cd568
            <file>MyOtherFont.ttf</file>
Packit 4cd568
        </fileset>
Packit 4cd568
    </family>
Packit 4cd568
</familyset>
Packit 4cd568
-->