Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
DtStdAppFontNames(file formats)		       DtStdAppFontNames(file formats)

       DtStdAppFontNames -- XCDE Standard Application Font Names

       The XCDE	Standard Application Font Names	are a set of generic X Window
       System font names, usable by applications as their default
       fonts, for the most common categories of	type designs and styles.
       These names, for	at least six sizes of 13 typefaces,
       must be provided	on all XCDE
       systems,	and they should	be provided in any
       X server	product	on which XCDE applications are expected	to run.
       They are	typically mapped to existing fonts on the system
       using the font alias mechanism, although	this method is not required.

       XCDE  1.0 does not come with a common set of fonts on all vendors' sys-
       tems, and both XCDE itself and XCDE applications	must be	able to	run on
       X servers and X terminals from non-XCDE vendors if those	vendors	so de-
       sire.  Therefore, there are a standard set of  ``generic''  font	 names
       and  sizes  that	each XCDE vendor makes available on their XCDE systems
       and that	X server vendors may make available  on	 their	X servers  and
       terminals.   The	 names	map to existing	fonts on each vendor's system,
       which may vary from vendor to vendor.

       The XCDE	Standard Application Font Names	described here allow  applica-
       tions  to use a single set of default font specifications in their app-
       defaults	files, without concern for the system  or  X server  on	 which
       XCDE  is	running.  These	app-defaults application defaults are given as
       XLFD font name patterns that will match the standard XCDE font names on
       all  XCDE  systems.   This allows application developers	both to	reduce
       their concern with selecting their default fonts	from a varying set  of
       fonts  on  different XCDE systems and to	make use of the	system default

       Application fonts are the fonts used within  an	application,  where  a
       wide  variety of	text designs, styles, weights and point	sizes are use-
       ful.  These variations are used for emphasis, cross-references, section
       headers,	 and  so forth.	 There are thousands of	fonts available	in the
       market for use in applications, and different XCDE  systems  will  have
       different fonts.	 The standard names attempt to provide the minimum va-
       riety in	generic	designs, styles	and sizes that	an  application	 might
       want  to	use as defaults.  (The XCDE Standard Interface Font Names, de-
       scribed in DtStdInterfaceFontNames(5), provide a	similar	mechanism  for
       the elements of the XCDE	desktop	itself.)

       Common application font names prevent applications from needing differ-
       ent app-defaults	files on each XCDE system.  The	 Standard  Application
       Font  Names allow applications to use a single app-defaults file	across
       all XCDE	systems.  In addition, any X server or X terminal  vendor  may
       ensure  that  XCDE  applications	 can  run on their X server by mapping
       these standard application names	to fonts of the	corresponding style on
       their individual	X systems.

       Two  of the most	common design variations in fonts used to display text
       are the presence	or absence of serifs and the  choice  between  propor-
       tional  or  regularly spaced (mono-spaced) characters.  Combining these
       two design variations yields four ``generic'' font  designs,  or	 fami-

	  o  serif proportionally-spaced

	  o  sans serif	proportionally-spaced

	  o  serif mono-spaced

	  o  sans serif	mono-spaced

       Common examples of these	four designs are:

	  o  Times Roman

	  o  Helvetica

	  o  Courier

	  o  Lucida Sans Typewriter

       Each  of	 these	designs	typically come,	for text fonts,	in four	styles
       (combinations of	weight and slant):

	  o  plain

	  o  bold

	  o  italic

	  o  bold-italic

       The four	styles of each of the four design variations yield 16  generic
       font  variations.   These  16 generic fonts are among the most commonly
       used in general desktop computing.  For example,	taking the first three
       real  examples above (Times Roman, Helvetica, Courier), these 12	fonts,
       along with the Symbol font, constitute the so-called ``Adobe 13''  that
       is  a  de facto minimum set of fonts in the PostScript community	in the
       desktop computer	marketplace.

       In some cases, applications do not care about the exact font family  or
       name  to	 be  used, but do need to use a	mono-spaced font, a sans serif
       font or a serif font.  This XCDE	mechanism allows such applications  to
       be  freed from the need to be concerned about the exact font names that
       may or may not be present on a particular XCDE system.

   The Standard	Names for the Latin-1 Character	Set
       The 13 standard application font	names are provided on all XCDE systems
       only  for  the  ISO  8859  (Latin-1) character set.  These represent 12
       generic design and style	variations (serif and sans  serif  proportion-
       ally-spaced,  and  a  mono-spaced  font	that  is  either serif or sans
       serif), as well as a symbol font.  These	standard names are provided in
       addition	to the ``real''	names of the fonts that	the standard names are
       mapped to for a particular XCDE system.	An  additional	four  standard
       font names, to allow both serif and sans	serif designs in a mono-spaced
       font, may also be provided by a XCDE system.

   XLFD	Field Values for the Standard Application Font Names
       The standard names are available	using the X Window  System  XLFD  font
       naming scheme.  There are three aspects to the standard names:

	  o  The  underlying  font  on	each  system, or X server platform, to
	     which a standard name is mapped, typically	will be	 different  on
	     each system.

	  o  The standard name itself, a full XLFD name	mapped to the underly-
	     ing font, may be different	on each	system in  some	 of  the  XLFD
	     fields.   However,	most of	the fields are the same	from system to
	     system, allowing the patterns (described next) to be the same.

	  o  The font resource pattern containing the  *  wildcards,  used  in
	     app-defaults  files,  which  will match the full XLFD name	of the
	     standard name, is the same	across all systems, for	a given	use in
	     an	app-defaults file.

       Each  XCDE or X server vendor implementing this specification must pro-
       vide full XLFD names for	the standard names, mapped to system-dependent
       underlying  fonts,  so  that the	XLFD patterns used in XCDE application
       app-defaults files will always match one	of the full  XLFD  names  pro-

       The  Standard  Application Font Names are identified by the presence of
       the following XLFD field	name values:

	  o  FOUNDRY is	dt

	  o  FAMILY_NAME is application

	  o  WEIGHT_NAME is medium or bold

	  o  SLANT is r	or i

	  o  SETWIDTH is normal

	  o  ADD_STYLE is sans for sans	serif, serif for serif

	  o  SPACING is	p or m

	  o  CHARSET_REGISTRY is iso8859


       Although	sans and serif are not required	by the XLFD  font  convention,
       they are	always part of the standard XCDE font names.

   Point Sizes
       The  complete set of point sizes	available for each of the standard ap-
       plication font names is determined by the set of	fonts  included	 in  a
       system,	whether	bitmapped only or both bitmapped and scalable outline.
       The minimum set of sizes	required and available	on  all	 XCDE  systems
       corresponds  to	the standard sizes of bitmapped	fonts that make	up the
       default mapping for X11R5: 8, 10, 12, 14, 18 and	24.

       For example, the	entire set of six sizes	of the plain monospaced	 font,
       on any XCDE system, is represented by:


       These  patterns	will match the corresponding standard font name	on any
       XCDE system, even  though  the  PIXEL_SIZE  and	AVERAGE_WIDTH  numeric
       fields  may  be different on various systems, and the matched fonts may
       be either serif or sans serif, depending	on the implementation  of  the
       set  of standard	names.	The RESOLUTION fields in the XLFD names	of the
       underlying fonts, when those fonts are bitmapped	fonts, must match  the
       resolution  of  the  monitor  on	 which the fonts are displayed for the
       point sizes to be accurate.  To provide expected	 point	size  behavior
       for applications, systems should	ensure that the	RESOLUTION_X and RESO-
       LUTION_Y	fields of the underlying fonts vary no more than 20% from  the
       real  monitor  resolution  of  the  displays on which the fonts will be

       Applications requesting point sizes different from the six in the mini-
       mum  set	 may obtain either ``scaled bitmapped''	fonts of the requested
       design, or scaled outline versions of the requested design.   This  be-
       havior  requires	 that  the X server in question	support	the scaling of
       fonts and that the standard names are mapped to underlying  fonts  that
       can be scaled using this	support.

   Example XLFD	Patterns for the Standard Names
       Using  the  specified field values for these standard names, subsets of
       the standard names can be represented with various XLFD patterns.   The
       XLFD pattern


       logically matches the full set of XCDE Standard Application Font	Names.
       (Note that no specific X	server behavior	is implied).  The pattern


       matches the bold, proportionally-spaced XCDE fonts, both	serif and sans
       serif.  And the pattern


       matches the monospaced fonts (including both serif and sans serif).

       The full	set of XCDE Standard Application Font Names can	be represented
       with the	following patterns:


       Each of these 13	standard names comes in	at least six point sizes.

   Implementation of Font Names
       Each XCDE system	vendor and X server vendor provides mappings of	 their
       own  fonts  to  XLFD names meeting this standard, so that XCDE applica-
       tions will work on their	system.	 The actual XLFD names will vary  from
       system to system, just as the fonts they	are mapped to, since they con-
       tain some of the	same values as the XLFD	name of	the  underlying	 font.
       What  does  not vary is the behavior: the common	patterns in which only
       specified fields	are used will  match  each  system's  standard	names.
       This is guaranteed by the field specifications given earlier.

       The following requirements are placed on	each XCDE or X server vendor's
       implementation of the Standard Application Font Names:

	  o  The names must be fully specified XLFD names, without wild	cards.

	     and  CHARSET_ENCODING fields must contain valid values as defined
	     previously	and must match those in	the underlying font.

	  o  The ADD_STYLE_NAME	field must contain either the  serif  or  sans
	     designation, whichever matches the	underlying font.

   Default XCDE	Mappings for Latin-1 Locales
       The  default  mapping  of these standard	application font names for the
       ISO 8859	locales	is to the following  standard  X11R5  bitmapped	 fonts
       (the six	minimum	sizes are not shown explicitly in these	patterns):


       A  system  may  provide	a different mapping of these standard names as
       long as all 13 names map	to fonts of the	appropriate design  and	 style
       and  the	required six point sizes are available.	 The system documenta-
       tion must document the system-specific default mapping for the standard

   Font	Names in app-defaults Files
       An  application	can use	a single app-defaults file to specify font re-
       sources and use it across all XCDE systems.  Since most of the fields (
       CODING)	of  the	 standard names	are the	same across different systems,
       these values can	be used	in the resource	specification in  the  app-de-
       faults file.  However, other fields ( PIXEL_SIZE, RESOLUTION_X, RESOLU-
       TION_Y and AVERAGE_WIDTH) may vary across systems, and so must be wild-
       carded in the resource specification.  For example:

       appOne*headFont:	-dt-application-bold-r-normal-sans-*-140-*-*-p-*-iso8859-1
       appOne*linkFont:	-dt-application-bold-i-normal-sans-*-100-*-*-p-*-iso8859-1

       might be	used to	specify	some of	AppOne's default font resource needs.

   Other Character Sets	in the Common Locales
       The  standard  application font names defined above can be used for lo-
       cales other than	the ISO	8859 character set with	the  following	excep-
       tions  and  differences.	For the	following locales, CDE guarantees that
       systems provide fonts with the following	 XLFD  attribute  values,  and
       that they be accessible using these names.  For full information	on how
       vendors ship the	fonts, and make	such names usable with the appropriate
       font  base name lists required for correct CDE support for internation-
       alization, see the guidelines in	the CDE	Internationalization  Program-
       ming Guide document.

	  o  Locales  using ISO	8859-2,	-3, -4,	-5 (Cyrillic), -6 (Arabic), -7
	     (Greek), -8 (Hebrew):

		 SET_WIDTH,  ADD_STYLE and SPACING as are used in this defini-
		 tion for the ISO 8859 locale.

	  o  Japanese locales:

		 Two values for	the FAMILY_NAME	attribute (Gothic and  Mincho)
		 and  two  values  for	the  WEIGHT_NAME attribute (medium and
		 bold) as well as SLANT	(r), ADD_STYLE (*) and SPACING (m).

	  o  Chinese (Taiwan) locales:

		 Two values for	the FAMILY_NAME	attribute (Sung	and  Kai)  and
		 two values for	the WEIGHT_NAME	attribute (medium and bold) as
		 well as SLANT (r), ADD_STYLE (*) and SPACING (m).

	  o  Chinese (PRC) locales:

		 Two values for	the FAMILY_NAME	attribute (Song	and  Kai)  and
		 two values for	the WEIGHT_NAME	attribute (medium and bold) as
		 well as SLANT (r), ADD_STYLE (*) and SPACING (m).

	  o  Korean locales:

		 Two values for	the FAMILY_NAME	attribute (Totum and  Pathang)
		 and  two  values  for	the  WEIGHT_NAME attribute (medium and
		 bold) as well as SLANT	(r), ADD_STYLE (*)  and	 SPACING  (m).
		 Note that these names are unofficial, tentative romanizations
		 of the	two common font	families in use	in Korea; Totum	corre-
		 sponds	 to  fonts typically shipped as	Gothic,	Kodig or Dotum
		 and Pathang corresponds to fonts typically shipped as Myungjo
		 or Myeongjo. The official roman names for these fonts are un-
		 der review and	may be changed in the  future  by  the	Korean
		 government, and thus may change for CDE.

       In addition, to facilitate app-defaults files that work under a variety
       of locales, CDE systems must provide an additional set of Standard  Ap-
       plication  Font Names where the FAMILY_NAME is application.  These font
       names are identified by the presence of the following XLFD  field  val-

	  o  FOUNDRY is	dt

	  o  FAMILY_NAME is application

	  o  WEIGHT_NAME is medium or bold

	  o  SLANT is as appropriate (see above)

	  o  SET_WIDTH is normal

	  o  ADD_STYLE is *

	  o  SPACING is	as appropriate (see above)

	  o  CHARSET_REGISTRY is as appropriate

	  o  CHARSET_ENCODING is as appropriate

       This  set  of names is mapped to	an underlying font representing	one of
       the FAMILY_NAMES	as listed above.

       For example, the	XLFD names


       may both	be mapped to


       This scheme allows application writers to create	a XmFontList in	a  re-
       source file as follows, without regard for a particular locale:


       and be assured that the font will be reasonable.	Notice that specifying
       fonts this way not only disregards the  selection  of  the  Asian  FAM-
       ILY_NAME,  but  also  the Latin serif or	sans ADD_STYLE field. The font
       selected	will be	the default.

       dtstyle(1), dtterm(1), DtStdInterfaceFontNames(5)

       There is	no requirement on a XCDE system	to  implement  these  standard
       names  in a particular way.  Several mechanisms are possible: duplicate
       font files with altered naming attributes, X11R5	font aliases, or  ven-
       dor-specific mechanisms.	 The only requirement is that an XLFD pattern,
       written with attributes taken from the set  that	 define	 the  standard
       names,  can  be successfully used to open a font	with the Xlib function
       XLoadFont; and, specifically, the Xlib function XListFonts need NOT re-
       turn the	same XLFD names	for the	pattern	on different XCDE systems.

       XCDE  applications should, of course, be	written	to behave in a reason-
       able manner if these standard font names	are not	available on a partic-
       ular  X server.	This is	typically done in an X application by default-
       ing to the fixed	and variable fonts.

					       DtStdAppFontNames(file formats)


Want to link to this manual page? Use this URL:

home | help