DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

/usr/man/cat.5/DtStdInterfaceFontNames.5




DtStdInterfaceFontNames(5)FILE FORMATS DtStdInterfaceFontNames(5)

NAME
     DtStdInterfaceFontNames - TED Standard Interface Font Names

SYNOPSIS
     The TED Standard Interface	Font Names are a set of	generic	X
     Window System font	names, needed by the TED GUI itself, that
     are used for user interface elements such as button  labels,
     window titles and text fields.  These names, for seven sizes
     of	two typefaces, must exist on all TED  systems,	and  they
     should  be	 provided  in  any  X server product on	which TED
     applications are expected to run.	Seven sizes  of	 a  third
     typeface  are  recommended.   They	 are  typically	mapped to
     existing fonts on the system using	the font alias mechanism,
     although this method is not required.

DESCRIPTION
     CDE 1.0 does not come with	a common set of	fonts on all sys-
     tems,  and	 it must be able to run	on X servers and X termi-
     nals from	non-TED	 vendors  if  those  vendors  so  desire.
     Therefore,	 there	are  a	standard  set of ``generic'' font
     names and sizes that each	TED  vendor  makes  available  on
     their  TED	systems	and that X server vendors may make avail-
     able on their X servers and terminals.   The  names  map  to
     existing  fonts  on  each	vendor's system	and may	vary from
     vendor to vendor.

     The TED Standard Interface	Font Names described  here  allow
     clients  making  up the TED desktop, such as dtterm(1) and	a
     single set	of default fonts  in  their  app-defaults  files,
     without  concern  for the system or X server on which TED is
     running.	(The  TED  Standard   Application   Font   Names,
     described in DtStdAppFontNames(5),	provide	a similar mechan-
     ism for applications running on the TED desktop.)

  Background
     Interface fonts are designed by user interface  experts  for
     the narrow	purpose	of making the menus, labels and	fields of
     a graphical user interface	highly readable.  They	are  usu-
     ally  finely hand-tuned bitmapped fonts, intended for use on
     visual displays only and not on printers, and  many  of  the
     glyphs  have  been	 specially  modified  for  this	 purpose.
     Interface fonts can be contrasted	with  application  fonts,
     which  are	 the  fonts used within	an application running on
     the TED desktop.  Interface fonts come in a  restricted  set
     of	 styles	 and  are used for short strings of text, whereas
     application fonts usually come  in	 a  variety  of	 designs,
     styles  and  weights  and	are  used  for	emphasis,  cross-
     references, section headers, and so forth.

  Rationale
     Common font names are required to prevent TED  clients  such
     as	 dtterm(1)  from  needing different app-defaults files on

Unix System LaboratoLast change: 1 August 1995			1

DtStdInterfaceFontNames(5)FILE FORMATS DtStdInterfaceFontNames(5)

     each system.  In addition,	any X server or	X terminal vendor
     may ensure	that the TED desktop can run on	their X	server by
     mapping these standard names to fonts of  the  corresponding
     style on their individual X systems.

     Interface fonts are needed	because	 of  user  interface  and
     cognitive	research  that	has  examined  the readability of
     various fonts on the display screens in use today and  found
     that  many	 fine  adjustments  (for  example, for centering,
     baseline, height and alignment) must be made  to  characters
     in	a font to make them clear, distinguishable and consistent
     when used for the interface objects of a GUI.  And	by  using
     hand-tuned	 interface fonts for the GUI objects, the desktop
     can achieve a very	clean, crisp visual appearance.

     Interface fonts are broken	into 2	categories:   system  and
     user.  Cognitive research has shown that this distinction is
     important for the usability and readability of GUIs.  System
     fonts  are	those used when	the system is presenting informa-
     tion to the user (for example, in buttons).  User fonts  are
     those  used for text that a user enters into the system (for
     example, for a text field or terminal emulator).

  XLFD Field Values for	the Standard Interface Font Names
     These 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  plat-
	  form,	 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 underlying 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 pat-
	  terns	(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 TED or X server vendor implementing this  specification
     must  provide full	XLFD names for the standard names, mapped
     to	system-dependent underlying fonts, so that the XLFD  pat-
     terns used	in TED application app-defaults	files will always
     match one of the full XLFD	names provided.

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

Unix System LaboratoLast change: 1 August 1995			2

DtStdInterfaceFontNames(5)FILE FORMATS DtStdInterfaceFontNames(5)

	o FOUNDRY is dt

	o FAMILY_NAME is either	 interface  system  or	interface
	  user	(there is a single space between the two words in
	  each family name)

     In	addition, the other fields of the XLFD names defining the
     standard names are	constrained as follows:

	o WEIGHT_NAME is either	medium or bold

	o SLANT	is always r

	o SETWIDTH_NAME	is always normal

	o SPACING is p or m (it	must  be  m  for  interface  user
	  fonts,  and  should  be  p  for interface system fonts,
	  although m is	acceptable)

	o ADD_STYLE_NAME contains both a nominal  size	value  in
	  the  range  xxs  to  xxl (see	below),	as well	as either
	  sans for sans	 serif	fonts  or  serif  for  serif,  if
	  appropriate for the underlying font

	o The	 numeric    fields    (PIXEL_SIZE,    POINT_SIZE,
	  RESOLUTION_X,	 RESOLUTION_Y,	and  AVERAGE_WIDTH)  must
	  contain the same values as the underlying font.

	o CHARSET_REGISTRY and CHARSET_ENCODING	 are  not  speci-
	  fied;	the standard names may be implemented for any TED
	  locale.

     Although the sans and serif  values  in  the  ADD_STYLE_NAME
     field are not required by the XLFD	font convention, they are
     always part of the	TED Standard Font Names	when the underly-
     ing  fonts	 are  characterized as serif or	sans serif.  How-
     ever, this	document imposes no restriction	 on  whether  the
     interface	fonts  are  serif  or  sans  serif.  The relevant
     attribute must be coded in	the ADD_STYLE_NAME field.   Thus,
     for  example,  the	 standard names	for Japanese fonts, which
     are not characterized as being serif or  sans  serif,  would
     not include this designation in the ADD_STYLE_NAME	field.

  Restricted Set of Styles Available
     Unlike the	Standard Application Font Names, only  a  limited
     set  of  styles  is available in the Standard Interface Font
     Names.  The  styles  available  represent	the  minimum  set
     currently considered necessary for	the desktop GUI	needs:

	o a medium weight of an	interface system font, preferably
	  proportionally spaced	(but mono-spaced is acceptable if
	  appropriate for the locale)

Unix System LaboratoLast change: 1 August 1995			3

DtStdInterfaceFontNames(5)FILE FORMATS DtStdInterfaceFontNames(5)

	o a medium weight  of  an  interface  user  font,  always
	  mono-spaced

	o a bold weight	of an interface	user font,  always  mono-
	  spaced  (the	standard  font	names  for  this  generic
	  typeface are recommended if available	for the	 targeted
	  fonts	and locale, but	are not	required)

  Named	Set of Point Sizes Available
     In	addition, the set of seven point sizes for  each  of  the
     three  styles  that  are part of this document are	``named''
     point sizes,  using  string  values  in  the  ADD_STYLE_NAME
     field.   Thus,  XLFD  patterns  matching these names match	a
     size based	on the named size, not on a  numeric  size,  even
     though  the latter	does exist in the XLFD name.  These named
     sizes are used because the	exact size of an  interface  font
     is	 less important	than its nominal size, and implementation
     differences for the hand-tuned interface fonts do not  allow
     common  numeric  point  sizes  to be assured across systems.
     The seven nominal sizes are as follows:

	xxs   extra extra small

	xs    extra small

	s     small

	m     medium

	l     large

	xl    extra large

	xxl   extra extra large

     The goal of these named sizes is to provide enough	fonts  so
     that  both	 the variety of	display	monitor	sizes and resolu-
     tions that	TED will run on, and the range	of  user  prefer-
     ences  for	 comfortably reading button labels, window titles
     and so forth, can be accommodated in the  GUI.   Thus,  both
     the smallest size,	xxs, and the largest size, xxl,	are meant
     to	be reasonable sizes for	displaying and	viewing	 the  TED
     desktop  on  common  displays  and	X terminals; they are not
     meant to imply either hard-to-read	fine print  or	headline-
     sized display type.

     These  named  size	 values	  must	 occur	 first	 in   the
     ADD_STYLE_NAME  field, before any use of the values serif or
     sans (one of which	is always required  when  the  underlying
     font  can	be  so	characterized) and before any other addi-
     tional stylistic attribute	that might be appropriate.   This
     is	 important  when  specifying  wild-carded  patterns  in	a

Unix System LaboratoLast change: 1 August 1995			4

DtStdInterfaceFontNames(5)FILE FORMATS DtStdInterfaceFontNames(5)

     resource specification for	these fonts,  since  whether  the
     underlying	 font  these names are mapped to is serif or sans
     serif is not specified by TED, and	the match must	work  for
     all  XLFD	names  provided	 by  TED  system vendors or other
     X server vendors.

  Example XLFD Patterns	for the	Standard Names
     Using these values, the XLFD pattern

	  -dt-interface*-*

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

     The full set of 21	TED Standard  Interface	 Font  Names  can
     also be represented, in a more meaningful way, as follows:

	  -dt-interface	system-medium-r-normal-*-*-*-*-*-*-*-iso8859-1
	  -dt-interface	user-medium-r-normal-*-*-*-*-*-m-*-iso8859-1
	  -dt-interface	user-bold-r-normal-*-*-*-*-*-m-*-iso8859-1

     The full set of patterns, usable in app-defaults files,  for
     all seven sizes for the system font, for example, is:

	  -dt-interface	system-medium-r-normal-xxs*-*-*-*-*-*-*-iso8859-1
	  -dt-interface	system-medium-r-normal-xs*-*-*-*-*-*-*-iso8859-1
	  -dt-interface	system-medium-r-normal-s*-*-*-*-*-*-*-iso8859-1
	  -dt-interface	system-medium-r-normal-m*-*-*-*-*-*-*-iso8859-1
	  -dt-interface	system-medium-r-normal-l*-*-*-*-*-*-*-iso8859-1
	  -dt-interface	system-medium-r-normal-xl*-*-*-*-*-*-*-iso8859-1
	  -dt-interface	system-medium-r-normal-xxl*-*-*-*-*-*-*-iso8859-1

     These patterns could be used in a	resource  file	and  will
     match  the	 full  TED  Standard  Interface	Names for Latin-1
     locales on	all TED, or complying X	server,	systems.

     Note in these wild-carded XLFD names that the ADD_STYLE_NAME
     field  has	 a pattern, such as xxs*, and that the pattern is
     partly a string (xxs) and partly the pattern-matching  char-
     acter  *.	 The full XLFD name this pattern matches-the XLFD
     name implementing the  Standard  Interface	 name-will  often
     contain  sans  or	serif  in  the field, after the	xxs and	a
     space, and	so the * is essential to match that sans or serif
     string (and any additional	style attribute	string that might
     be	in the underlying name).   Note	 also  that  the  SPACING
     field  is	wild-carded  in	 the pattern for the system font,
     since either p or m may appear in the  standard  name  being
     matched.

  Implementation of Font Names
     Each TED system vendor and	X server vendor	provides mappings

Unix System LaboratoLast change: 1 August 1995			5

DtStdInterfaceFontNames(5)FILE FORMATS DtStdInterfaceFontNames(5)

     of	 its  own  fonts to XLFD names as described by this docu-
     ment.  The	actual XLFD names will vary from system	 to  sys-
     tem,  just	 as the	fonts they are mapped to, since	they con-
     tain some of the same values as the XLFD name of the  under-
     lying 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.

     There is no precise specification of how the named	sizes xxs
     to	 xxl are mapped	to sizes of underlying fonts in	each sys-
     tem or X server product, although each size must be equal to
     or	 larger	than the previous size.	 Nonetheless, some guide-
     lines are appropriate.

     Interface fonts have been developed because of human factors
     research on visual	clarity	of text	on displays, and this has
     been done in the context of the display technology	typically
     available	today,	mostly	in  the	 100  dots per inch (DPI)
     range.  That, and the use of standard point sizes	(10,  12,
     14,  18) in the graphics arts, have resulted in the develop-
     ment in the industry of hand-tuned	bitmapped fonts	for a set
     of	 ``pixel  heights''  that are likely to	be used	for these
     standard names.  However, making the TED desktop usable with
     a	range  of  point  sizes	effectively means, in addition to
     legibility	for the	user, that the various	TED  applications
     fit ``appropriately'' on the screen using those point sizes.
     This means, for example, that two	application  windows  can
     appear  side  by side on a	typical	display	or that	a certain
     number of buttons can appear across the screen.

     Thus, these guidelines  are  expressed  not  only	in  pixel
     sizes,  to	 reflect current usage,	but also in percentage of
     monitor height.  This allows them to remain  appropriate  as
     technological evolution improves display resolution and mon-
     itor size (for example, wall-mounted monitors).   The  ideal
     set  of sizes would form a	linear progression from	the smal-
     lest (xxs)	to  the	 largest  (xxl),  although  this  is  not
     achievable.  The basic guideline is that the xxs font should
     be, in pixels, no less  than  0.9%	 of  the  height  of  the
     display  resolution,  in  pixels;	the xxl	font should be no
     more than 2.6% of the height.

     As	an approximate example that does not represent any exist-
     ing  mapping of fonts to a	display, this table shows how the
     named sizes might map to real bitmapped  fonts  of	 a  given
     pixel  size, and how large	those sizes are	in percentage and
     point size	terms:

Unix System LaboratoLast change: 1 August 1995			6

DtStdInterfaceFontNames(5)FILE FORMATS DtStdInterfaceFontNames(5)

	_____________________________________________________
       |						    |
       | Sample	Range of Named Sizes on	a 1280x1024 Display |
       |____________________________________________________|
       | named|	  number  |    size as %   |  point size on |
       | size |	 of pixels|  of	1024 height|  100 DPI screen|
       |______|___________|________________|________________|
       | xxs  |	    10	  |	 0.98%	   |	    7.2	    |
       | xs   |	    12	  |	 1.12%	   |	    8.7	    |
       | s    |	    14	  |	 1.37%	   |	   10.1	    |
       | m    |	    17	  |	 1.66%	   |	   12.3	    |
       | l    |	    20	  |	 1.95%	   |	   14.6	    |
       | xl   |	    23	  |	 2.25%	   |	   16.6	    |
       | xxl  |	    26	  |	 2.54%	   |	   18.8	    |
       |______|___________|________________|________________|

     Thus, the following requirements are placed on  each  imple-
     mentation of the Standard Interface Font Names:

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

	o The	WEIGHT_NAME,   SLANT,	SETWIDTH_NAME,	 SPACING,
	  CHARSET_REGISTRY  and	CHARSET_ENCODING fields	must con-
	  tain valid values as defined previously and must  match
	  those	in the underlying font.

	o The ADD_STYLE_NAME field must	contain	both a named size
	  (for	example,  xxs)	and,  if  appropriate, either the
	  serif	or sans	designation, whichever matches the under-
	  lying	font; any additional words about the style of the
	  underlying font, if defined for  the	underlying  font,
	  must also be used.  The named	size must be first in the
	  field, and must be separated from any	following word in
	  the field with a blank.

	o The named sizes xxs through xxl must be mapped to fonts
	  that are progressively larger	than or	equal to the pre-
	  vious	one in the list.  Thus,	 several  standard  names
	  with	adjacent  sizes	 (for example, xxs and xs) may be
	  mapped to the	same font (for example,	if there  is  not
	  enough variety in sizes in the underlying fonts).

	o The implemented names	should attempt to meet the guide-
	  lines	discussed in the previous paragraph and	table.

     For example, system A is assumed to be using  the	following
     sans serif	font for the extra small system	font:

	  -bitstream-swiss-medium-r-normal--11-90-85-85-p-81-iso8859-1

Unix System LaboratoLast change: 1 August 1995			7

DtStdInterfaceFontNames(5)FILE FORMATS DtStdInterfaceFontNames(5)

     System B is using the following serif  font  for  the  extra
     small system font:

	  -vendorb-ersatz-medium-r-normal-Expert-8-80-75-75-m-72-iso8859-1

     Their respective standard	names  would  be  implemented  on
     their systems as:

     -dt-interface system-medium-r-normal-xssans-11-90-85-85-p-81-iso8859-1
     -dt-interface system-medium-r-normal-xsserif Expert-8-80-75-75-m-72-iso8859-1

     Defined this way, both names will match the single	XLFD pat-
     tern used in a common app-defaults	file:

	  -dt-interface	system-medium-r-normal-xs*-*-*-*-*-*-*-iso8859-1

  Default TED Mapping of the Standard Interface	Font Names
     There is no default mapping  of  these  interface	names  to
     X11R5 fonts; the mapping is implementation-specific.

USAGE
     A TED desktop client  developer  will  code  a  single  app-
     defaults file to specify font resources for their client and
     use  it  across  all  TED	systems.   Since   the	 FOUNDRY,
     FAMILY_NAME,  WEIGHT_NAME,	SLANT and SETWIDTH_NAME	fields of
     the standard names	are the	same  across  different	 systems,
     these  values  can	 be used in the	resource specification in
     the    app-defaults    file.     However,	  other	   fields
     (ADD_STYLE_NAME,	PIXEL_SIZE,   POINT_SIZE,   RESOLUTION_X,
     RESOLUTION_Y, SPACING and AVERAGE_WIDTH)  will  vary  across
     systems, and so must be wild-carded in the	resource specifi-
     cation (ADD_STYLE_NAME is partially  wild-carded).	  As  was
     shown in the previous example:

	  -dt-interface	system-medium-r-normal-xs*-*-*-*-*-*-*-iso8859-1

     is	an XLFD	pattern, used in a single resource specification,
     that  matches  a  single  standard	 name on different TED or
     X server  platforms.    (And   if	 the   last   2	  fields,
     CHARSET_REGISTRY  and  CHARSET_ENCODING,  were  wild-carded,
     then the pattern could work across	locales	as  well.)   Note
     that the named size (xs in	this example) is part of the pat-
     tern, but the serif/sans serif designation	is not;	 this  is
     required to obtain	the desired nominal size (whatever it may
     be	in the mapped font), while still matching either serif or
     sans serif	in the standard	name.

     Note that if a TED	desktop	application tries to open a  font
     using one of these	standard names,	and the	X server does not
     know about	these names, the application  will  usually  fall
     back  on  using the fixed and variable font aliases that are
     typically provided	in all X servers.  When	this happens, the

Unix System LaboratoLast change: 1 August 1995			8

DtStdInterfaceFontNames(5)FILE FORMATS DtStdInterfaceFontNames(5)

     TED desktop will be more difficult	to use,	visually, than if
     its expected font names were available.

SEE ALSO
     dtstyle(1), dtterm(1), DtStdAppFontNames(5)

NOTES
     There is no requirement on	a TED system or	X server vendor
     to	implement these	standard names in a particular way.
     Several mechanisms	are possible:  duplicate font files with
     altered naming attributes,	X11R5 font aliases, or vendor-
     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 return the same XLFD
     name for the pattern on different TED or X	server systems.

Unix System LaboratoLast change: 1 August 1995			9

See also DtStdInterfaceFontNames(5)

Man(1) output converted with man2html