|
1 | 1 | # Adobe Variable Font Prototype |
2 | 2 |
|
3 | | -OpenType-CFF2 variable font made from [UFO] sources derived from [Source Serif Pro], |
4 | | -designed by [Frank Grießhammer]. |
| 3 | +Variable font in OpenType-CFF2 and TrueType formats, made from [UFO] sources derived from |
| 4 | +[Source Serif Pro], designed by [Frank Grießhammer]. |
5 | 5 |
|
6 | | -This font is intended to serve as a test and demonstration for environments and workflows |
7 | | -that support the Compact Font Format flavor of the [OpenType variable fonts]. |
| 6 | +The font files are intended to serve as test cases for environments and workflows that aim |
| 7 | +to support [OpenType variable fonts]. |
8 | 8 |
|
9 | | -The font is functional but it's not considered *shippable* — see [Current limitations]. |
10 | | -We plan to update it as the tools improve. |
| 9 | +The fonts are functional but are not considered *shippable* — see [Current limitations]. |
| 10 | +We plan to update them as the tools improve. |
11 | 11 |
|
12 | 12 | [UFO]: http://unifiedfontobject.org/ |
13 | 13 | [Source Serif Pro]: https://github.com/adobe-fonts/source-serif-pro |
@@ -47,60 +47,66 @@ listed below. |
47 | 47 | [Adobe Latin 2]: https://github.com/adobe-type-tools/adobe-latin-charsets#adobe-latin-2-adobe-western-2 |
48 | 48 |
|
49 | 49 |
|
50 | | -## Downloading the font |
| 50 | +## Downloading the font files |
51 | 51 |
|
52 | 52 | * [Latest release](../../releases/latest) |
53 | 53 | * [All releases](../../releases) |
54 | 54 |
|
55 | 55 |
|
56 | | -## Building the font from source |
| 56 | +## Building the fonts from source |
57 | 57 |
|
58 | 58 | ### Requirements |
59 | 59 |
|
60 | | -To build **AdobeVFPrototype.otf** from source, you need to have installed a custom build |
61 | | -(2.5.65463 or later) of the [Adobe Font Development Kit for OpenType] which can be |
62 | | -downloaded from <http://www.adobe.com/devnet/opentype/afdko/AFDKO-Variable-Font-Support.html> |
| 60 | +To build the **OpenType-CFF2 version** (AdobeVFPrototype.otf), you need to have installed a |
| 61 | +custom build (2.5.65463 or later) of the [Adobe Font Development Kit for OpenType] which can |
| 62 | +be downloaded from <http://www.adobe.com/devnet/opentype/afdko/AFDKO-Variable-Font-Support.html> |
63 | 63 |
|
64 | | -[Adobe Font Development Kit for OpenType]: http://www.adobe.com/devnet/opentype/afdko.html |
| 64 | +To build the **TrueType version** (AdobeVFPrototype.ttf), you need to have installed a |
| 65 | +customized fork of [fontmake] which is available at <https://github.com/adobe-type-tools/fontmake> |
65 | 66 |
|
| 67 | +[Adobe Font Development Kit for OpenType]: http://www.adobe.com/devnet/opentype/afdko.html |
| 68 | +[fontmake]: https://github.com/googlei18n/fontmake |
66 | 69 |
|
67 | 70 | ### Build command |
68 | 71 |
|
69 | 72 | macOS and Linux: |
70 | 73 |
|
71 | 74 | ```sh |
72 | | -$ sh buildFont.sh |
| 75 | +sh buildFont.sh |
73 | 76 | ``` |
74 | 77 |
|
75 | 78 | Windows: |
76 | 79 |
|
77 | 80 | ```sh |
78 | | -> cmd buildFont.sh |
| 81 | +cmd buildFont.sh |
79 | 82 | ``` |
80 | 83 |
|
81 | 84 | ### Build process |
82 | 85 |
|
83 | | -The **buildFont.sh** file calls two scripts, `buildMasterOTFs` and `buildCFF2VF`. |
| 86 | +The **buildFont.sh** file first runs `fontmake` to build the variable TrueType font. The |
| 87 | +`GSUB` table of this font is then patched with `ttx` to add a *[feature variations table]* |
| 88 | +— this patching is what enables the transitional glyphs to work. |
| 89 | + |
| 90 | +Next, the OpenType-CFF2 font is built with the scripts `buildMasterOTFs` and `buildCFF2VF`. |
84 | 91 | The first script generates OpenType-CFF fonts from each of the UFO masters. And the |
85 | | -second takes the set of OTF fonts built in the previous step, and combines them to produce |
86 | | -an OpenType-CFF2 variable font. More details about the process are provided at |
| 92 | +second takes the set of OTFs built in the previous step, and combines them to produce |
| 93 | +the CFF2 variable font. More details about the process are provided at |
87 | 94 | <http://www.adobe.com/devnet/opentype/afdko/AFDKO-Variable-Font-Support.html> |
88 | 95 |
|
89 | | -The build script finally runs TTX to make some changes to the `name` and `GSUB` tables. |
90 | | -In the `name` table, the placeholder word *Custom* is changed to *Contrast*. |
91 | | -And in the `GSUB` table, a *[feature variations table]* is added. |
| 96 | +Finally, `sfntedit` is used for replacing the `name`, `GPOS` and `GSUB` tables in the |
| 97 | +OT-CFF2 font by the ones from the TT font. And the tool is also use for copying the |
| 98 | +OTF's `DSIG` table into the TTF. |
92 | 99 |
|
93 | 100 | [feature variations table]: https://www.microsoft.com/typography/otspec/chapter2.htm#featvartable |
94 | 101 |
|
95 | 102 |
|
96 | 103 | ## Current limitations |
97 | 104 |
|
98 | | -* Adobe Variable Font Prototype cannot be displayed by macOS or Windows because their font |
| 105 | +* The OpenType-CFF2 font cannot be displayed by macOS or Windows because their font |
99 | 106 | rasterizers do not yet support the newer `CFF2` table. (As of this moment, the only tool |
100 | 107 | that can render OT-CFF2 fonts is [FontView]). |
101 | | -* The font's glyphs will not be hinted because the AFDKO's `autohint` tool cannot yet |
102 | | -produce hinting data that is compatible across a set of master fonts. |
103 | | -* The font does not contain the required `MVAR` and `STAT` tables. |
104 | | -* The font's `CFF2` table lacks subroutinization. |
| 108 | +* The font's `CFF2` table is not subroutinized. |
| 109 | +* Neither of the fonts is hinted. |
| 110 | +* Neither of the fonts contains the required `MVAR` and `STAT` tables. |
105 | 111 |
|
106 | 112 | [FontView]: https://github.com/googlei18n/fontview |
0 commit comments