The font manifest generator creates a .font_manifest.json
file for use by the font server.
To see usage instructions, run
./out/default/host_x64/font_manifest_generator --help
*.font_catalog.json
Contains a human-written listing of font families, assets, and typefaces. See schema.
One .font_catalog.json
file exists for each CIPD font repo.
These files are expected to reside in the Fuchsia source tree.
*.font_pkgs.json
Contains a listing of font asset names (e.g. "Roboto-Bold.ttf"
, safe package name suffixes (e.g. "roboto-bold-ttf"
), and the relative path of the asset within the font directory.
One .font_pkgs.json
file exists for each CIPD font repo. It is generated by a recipe and checked out as a prebuilt, along with font files.
*.all_fonts.json
and *.local_fonts.json
Contains a listing of all font asset names and those that are local. all_fonts
must be a superset of local_fonts
. all_fonts
are made available as ephemeral packages, while local_fonts
are additionally bundled into the font server's /config/data
directory in the OTA image.
These file determines which font assets from the catalogs actually end up in the generated manifest.
These files are generated by the GN font_collection
template. There should be one pair per product target.
This is usually a directory in //prebuilt/third_party
, and it is where the CIPD checkout places all of the font asset files and the *.font_pkgs.json
files.
The manifest generator must read the font files to collect the set of code points for each typeface.
fx set
arguments include --with //bundles:tests
.fx build
fx run-host-tests font_manifest_generator_bin_test \ font_manifest_generator_integration_tests