1 /****************************************************************************
   2  *
   3  * afcover.h
   4  *
   5  *   Auto-fitter coverages (specification only).
   6  *
   7  * Copyright (C) 2013-2019 by
   8  * David Turner, Robert Wilhelm, and Werner Lemberg.
   9  *
  10  * This file is part of the FreeType project, and may only be used,
  11  * modified, and distributed under the terms of the FreeType project
  12  * license, LICENSE.TXT.  By continuing to use, modify, or distribute
  13  * this file you indicate that you have read the license and
  14  * understand and accept it fully.
  15  *
  16  */
  17 
  18 
  19   /* This header file can be included multiple times. */
  20   /* Define `COVERAGE' as needed.                     */
  21 
  22 
  23   /* Add new coverages here.  The first and second arguments are the   */
  24   /* coverage name in lowercase and uppercase, respectively, followed  */
  25   /* by a description string.  The last four arguments are the four    */
  26   /* characters defining the corresponding OpenType feature.           */
  27 
  28 #if 0
  29   /* XXX: It's not possible to define blue zone characters in advance. */
  30   COVERAGE( alternative_fractions, ALTERNATIVE_FRACTIONS,
  31             "alternative fractions",
  32             'a', 'f', 'r', 'c' )
  33 #endif
  34 
  35   COVERAGE( petite_capitals_from_capitals, PETITE_CAPITALS_FROM_CAPITALS,
  36             "petite capitals from capitals",
  37             'c', '2', 'c', 'p' )
  38 
  39   COVERAGE( small_capitals_from_capitals, SMALL_CAPITALS_FROM_CAPITALS,
  40             "small capitals from capitals",
  41             'c', '2', 's', 'c' )
  42 
  43 #if 0
  44   /* XXX: Only digits are in this coverage, however, both normal style */
  45   /*      and oldstyle representation forms are possible.              */
  46   COVERAGE( denominators, DENOMINATORS,
  47             "denominators",
  48             'd', 'n', 'o', 'm' )
  49 #endif
  50 
  51 #if 0
  52   /* XXX: It's not possible to define blue zone characters in advance. */
  53   COVERAGE( fractions, FRACTIONS,
  54             "fractions",
  55             'f', 'r', 'a', 'c' )
  56 #endif
  57 
  58 #if 0
  59   /* XXX: Only digits are in this coverage, however, both normal style */
  60   /*      and oldstyle representation forms are possible.              */
  61   COVERAGE( numerators, NUMERATORS,
  62             "numerators",
  63             'n', 'u', 'm', 'r' )
  64 #endif
  65 
  66   COVERAGE( ordinals, ORDINALS,
  67             "ordinals",
  68             'o', 'r', 'd', 'n' )
  69 
  70   COVERAGE( petite_capitals, PETITE_CAPITALS,
  71             "petite capitals",
  72             'p', 'c', 'a', 'p' )
  73 
  74   COVERAGE( ruby, RUBY,
  75             "ruby",
  76             'r', 'u', 'b', 'y' )
  77 
  78   COVERAGE( scientific_inferiors, SCIENTIFIC_INFERIORS,
  79             "scientific inferiors",
  80             's', 'i', 'n', 'f' )
  81 
  82   COVERAGE( small_capitals, SMALL_CAPITALS,
  83             "small capitals",
  84             's', 'm', 'c', 'p' )
  85 
  86   COVERAGE( subscript, SUBSCRIPT,
  87             "subscript",
  88             's', 'u', 'b', 's' )
  89 
  90   COVERAGE( superscript, SUPERSCRIPT,
  91             "superscript",
  92             's', 'u', 'p', 's' )
  93 
  94   COVERAGE( titling, TITLING,
  95             "titling",
  96             't', 'i', 't', 'l' )
  97 
  98 #if 0
  99   /* to be always excluded */
 100   COVERAGE(nalt, 'n', 'a', 'l', 't'); /* Alternate Annotation Forms (?) */
 101   COVERAGE(ornm, 'o', 'r', 'n', 'm'); /* Ornaments (?) */
 102 #endif
 103 
 104 
 105 /* END */