/* Copyright (C) 2003, 2004 National Institute of Advanced Industrial Science and Technology (AIST) Registration Number H15PRO112 See the end for copying conditions. */ /***en @page mdbFontset Fontset @section fontset-description DESCRIPTION The m17n library loads a fontset definition from the m17n database by the tags \. The plist format of the data is as follows: @verbatim FONTSET ::= PER-SCRIPT * PER-CHARSET * FALLBACK * PER-SCRIPT ::= '(' SCRIPT PER-LANGUAGE + ')' PER-LANGUAGE ::= '(' LANGUAGE FONT-SPEC-ELEMENT + ')' PER-CHARSET ::= '(' CHARSET FONT-SPEC-ELEMENT + ')' FALLBACK ::= FONT-SPEC-ELEMENT FONT-SPEC-ELEMENT ::= '(' FONT-SPEC [ FLT-NAME ] ')' FONT-SPEC ::= '(' [ FOUNDRY FAMILY [ WEIGHT [ STYLE [ STRETCH [ ADSTYLE ]]]]] REGISTRY [ OTF-SPEC ] [ LANG-SPEC ] ')' @endverbatim @c SCRIPT is a symbol of script name (e.g. latin, han) or @c nil. @c LANGUAGE is a two-letter symbol of language name code defined by ISO 639 (e.g. ja, zh) or @c nil. @c FONT-SPEC is to specify properties of a font. @c FOUNDRY to @c REGISTRY are symbols corresponding to #Mfoundry to #Mregistry property of a font. See @ref m17nFont for the meaning of each property. @c OTF-SPEC is a symbol specifing the required OTF features. The symbol name has the following syntax. @verbatim OTF-SPEC-NAME ::= ':otf=' SCRIPT LANGSYS ? GSUB-FEATURES ? GPOS-FEATURES ? SCRIPT ::= SYMBOL LANGSYS ::= '/' SYMBOL GSUB-FEATURES ::= '=' FEATURE-LIST ? GPOS-FEATURES ::= '+' FEATURE-LIST ? FEATURE-LIST ::= '~' ? FEATURE ( ',' '~' ? FEATURE ',' ) @endverbatim Here, @c FEATURE is a four-letter Open Type feature. @c LANG-SPEC is a symbol specifying the required language support. The symbol name has the following syntax. @verbatim LANG-SPEC-NAME ::= ':lang=' LANG @endverbatim Here, @c LANG is a two or three-letter ISO-639 language code. @c FLT-NAME is a name of Font Layout Table (@ref mdbFLT). @section fontset-example EXAMPLE This is an example of @c PER_SCRIPT. @verbatim (han (ja ((jisx0208.1983-0))) (zh ((gb2312.1980-0))) (nil ((big5-0)))) @endverbatim It instructs the font selector to use a font of registry "jisx0208.1983-0" for a "han" character (i.e. a character whose #Mscript property is 'han') if the character has #Mlanguage text property "ja" in an M-text and the character is in the repertories of such fonts. Otherwise, try a font of registry "gb2312.1980-0" or "big5-0". If that "han" character does not have #Mlanguage text property, try all three fonts. See the function mdraw_text () for the detail of how a font is selected. */ /* Copyright (C) 2003, 2004 National Institute of Advanced Industrial Science and Technology (AIST) Registration Number H15PRO112 This file is part of the m17n database; a sub-part of the m17n library. The m17n library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. The m17n library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with the m17n library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */