首页 10[1].1.1.76.1518

10[1].1.1.76.1518

举报
开通vip

10[1].1.1.76.1518 Experience with OpenType Font Production Sivan Toledo∗and Zvika Rosenberg† 22nd January 2003 1 Introduction This article describes the production of a large number of Hebrew OpenType fonts. More specif- ically, we describe the production of OpenType fonts...

10[1].1.1.76.1518
Experience with OpenType Font Production Sivan Toledo∗and Zvika Rosenberg† 22nd January 2003 1 Introduction This article describes the production of a large number of Hebrew OpenType fonts. More specif- ically, we describe the production of OpenType fonts with TrueType glyph descriptions and with advanced typographic layout features. The project was conducted by MasterFont Studio Rosenberg, a large Hebrew digital font foundry in Tel-Aviv, with assistance from Sivan Toledo from the School of Computer Science in Tel-Aviv University. Hebrew is a right-to-left script that is used in one of two ways: with or without diacritics. Most Hebrew texts are printed almost without any dia- critics, but childern’s books, poetry, and bibles are printed with diacritics. Even texts that are printed without diacritics use them occasionally to disam- biguate pronounciation and meaning. The diacrit- ics in children’s books and poetry are vowels and consonant modifies, which are called nikud in He- brew (meaning “to add points”). Bibles also use a third kind, cantillation marks, which are not treated in this article (but see [4, 5] for a thorough treat- ment). Hebrew diacritics are quite hard to support in fonts, since there are 15 of them and 27 letters, with up to 3 diacritics per letter. Even though not all the combinations are grammatically possible, there are too many combinations to support them conventiently using precomposed glyphs. In ad- dition, diacritics must be positioned relative to the base letter visually, rather than mathematically. For example, the below-baseline diacritics must be set below the visual axis of the letter [14], not below its mathematical center. This means that ligatures, pair kerning, and simple mathematical centering alone are insufficient for correct placement of dia- critics. In addition to diacritics, Hebrew fonts can also benefit from pair kerning, although until re- cently, pair kerning was not particularly common ∗School of Computer Science, Tel-Aviv University, Tel-Aviv 69978, Israel. Email: stoledo@tau.ac.il. †MasterFont Studio Rosenberg, 159 Yigal Alon Street, Tel- Aviv 67443, Israel. Web address: www.masterfont.co.il. in Hebrew fonts. For further information about the Hebrew script, see [1, 13, 14]. The initial objective of the project was to convert older fonts into the new OpenType format. This was motivated by the concurrent development of Adobe InDesign 2.0 ME (middle eastern), the first high-end page-layout program to support Hebrew OpenType features. Microsoft’s Office XP also sup- ports these features, so InDesign was not the only motivator. But it quickly became evident that the same tools that would be necessary to convert the old fonts to the new format could also be used to streamline the entire font production process at MasterFont. Therefore, the project had two objec- tives: to convert the old fonts to the new format, and to streamline the production process. The rest of the paper is organized as follows. The next section provides background on font formats. Section 3 describes how diacritic positioning in- formation is represented in MasterFont’s old fonts. Section 4 describes the objectives of the project, and Section 5 describes the software tools that we used to achieve these objectives. The overall pro- duction process is described in Section 6, and our conclusions from this development and production experience is described in Section 7. 2 Fonts Formats This section describes the OpenType font format and other relevant font formats. Unfortunately, the term OpenType is somewhat vague, so this section also establishes a more precise nomeclature. Type 1, TrueType, and Early Extensions The first widely-accepted device-indepenent font format was the PostScript Type 1 format [9]. Adobe started selling retail Type 1 fonts in 1986, and pub- lished the specification in the late 1980’s, after Bit- stream figured out how to produce Type 1 fonts (prior to that the specification was proprietary and 1 only Adobe could produce Type 1 fonts). Type 1 fonts consist of two or three main parts: scal- able hinted glyph descriptions, metric information, which include glyph dimensions, advance widths, and pair kerning, and possibly bitmaps for screen previewing. Today most systems can rasterize the scalable glyph descriptions so the bitmaps are usu- ally no longer necessary; Adobe distributes freely the Adobe Type Manager which is a Type 1 raster- izer for older Windows and Macintosh computers without a built-in rasterizer. Type 1 fonts are rela- tively easy to design and produce, and today there are tens of thousands of commercial Type 1 fonts. The next widely-accepted device-indepenent font format was the TrueType format [6, 2], which was invented by Apple in the late 1980’s, as part of a collaboration between Apple and Microsoft, and became the native scalable font format for both Ap- ple Macintosh computers and Windows computers. In a TrueType font, all the data associated with the font, such as glyph descriptions, metric informa- tion, administrative informaion (font name, for ex- ample), and possibly bitmaps, are placed in a single file, which is organized as a collection of tables. For example, one table contains glyph description, another character-to-glyph mappings, yet another table contains kerning pairs, and so on. The kinds of data in a TrueType font are almost identical to the kinds of data in a Type 1 font, but they are organized differently and sometimes represented differently. Most importantly, glyph descriptions and hints for low-resolution rasteriza- tion are represented differently. In a Type 1 font, glyphs are represented using cubic-spline outlines with declarative hints. In a TrueType font, glyphs are represented using quadratic-spline outlines and a low-level programmable hinting language. Type 1 outlines are easier to design and hint, and most designers use cubic splines when designing fonts. Well-hinted TrueType fonts are hard to produce, but they can achieve pixel-perfect rasterization at low resolutions, something that Type 1 fonts can- not achieve. Virtually all font editors can convert one type to the other. the conversion of TrueType outlines to Type 1 outlines is lossless, but the other direction only produces an approximation. How- ever, the approximation of a Type 1 outline by a TrueType outline can be made arbitrarily accurate and font editors produce approximations that are visually indistinguishable from the original. Hint- ing information is usually also converted, but not as well. Both Adobe and Apple introduced enhance- ments to these font formats during the 1990s, but none became widely used. Adobe introduced the Multiple Master font technology [10, 11], which al- lows users to interpolate between fonts in a family. This enhancement transforms the font family from a discrete set to a continuous spectrum. For ex- ample, there aren’t just medium and bold fonts, for example, but a continuous weight axis. Apple intro- duced GX fonts [6] (now called AAT fonts), which are TrueType fonts with additional tables that al- low continuous interpolation, like Multiple Master fonts, and which enable high-end typographic fea- tures. In particualr, GX fonts can support multiple glyphs for a single character, such as swash, small caps, or old-style figures, they can reorder glyphs, and so on. Neither format became widely accepted by font vendors, probably because the fonts were too hard to produce. No major font foundry be- sides Adobe produced Multiple Master fonts, and only a few GX fonts were produced by Bitstream and Linotype. OpenType OpenType is a new font format [3] that Microsoft and Adobe specified collaboratively. The format was first used, under the name TrueType Open, in the Arabic version of Windows 95, which was intro- duced in 1996. Adobe later joined the specification effort and the name was changed to OpenType. OpenType adds three capabilities to the True- Type format: advanced layout features, support for Type 1 glyph descriptions, and digital signatures. The advanced layout features are supported by five new tables: , that define glyph properties and glyph sets, , which defines glyph substitution rules, , which speficies positioning informa- tion, , which provides justification information, and , which provides baseline-adjustment in- formation. These features were designed to support layout of text in complex scripts such as Arabic, He- brew, Indic, and east Asian scripts (Hebrew is by no means the most complex), and to support high-end typographic features such swash letters and deco- rative ligatures, old-syle and proportional figures, and small capitals. The support for Type 1 glyph descriptions is de- signed to allow lossless conversion of Type 1 fonts to a TrueType-like table-based file format. Such fonts use two new tables,  and , to store a losslessly-compressed Type 1 font. Technically, the format of the  table corresponds to that of PostScript Type 2 fonts [12], also known as the compact font format, but the essense of the for- mat is a lossless representation of Type 1 glyph 2 descriptions (outlines and hints). The need to sup- port two kinds of glyph descriptions and hints con- stained the design of the layout-related tables, in the sense that positioning information in the  ta- ble could not be hinted using the normal TrueType or hinting language; a different hinting mechanism is used, which supports both Type 1 and TrueType glyphs. The support for digitally signing fonts, which uses the  table, is meant to allow users and font- using software to verify the authenticity of fonts. For example, future operating systems might re- quire that certain system fonts are digitally signed by the operating-system’s vendor, thereby prevent- ing modified versions of these fonts from being used instead. For independent font vendors, there is currently little benefit in digitally signing fonts, since users currently do not have means to verify these signatures, and since fonts rarely pose secu- rity or stability problems to systems. OpenType fonts with TrueType outlines can be used by any TrueType-capable software, since ex- cept for extra tables (which are allowed by the True- Type spefication), the fonts are also valid TrueType fonts. Software such as rasterizers, layout engines, and printer drivers can simply ignore the extra ta- bles. OpenType fonts with Type 1 outlines require special support in rasterizers and printer drivers, support beyond that required to support Type 1 and TrueType fonts. In principle any TrueType-capable layout engine can use any OpenType font, since the metric and layout information are compatible (an exception is pair-kerning information, which can appear in either the ‘kern’ table or the os table or both in a font with TrueType glyphs, but only in the  table in a font with Type 1 glyphs). To emphasize the fact that OpenType fonts with True- Type glyphs can be used by any TrueType-capable software, whereas special support is required for fonts with Type 1 fonts, files containing the first kind use the ttf or ttc extension, whereas files containing the second kind use the otf extension. So what is an OpenType font? According to the Microsoft/Adobe specification, any font that con- forms to the specification, including both TrueType and Type 1 glyphs, with or without advanced lay- out tables and digital signatures. This is somewhat confusing, especially since the file icons in Win- dows do not correspond to the glyph descriptions (Windows 2000 and XP use the ‘O’ icon for otf files and for ttf or ttc files if the fonts have a  table, and the ‘TT’ icon for all other ttf files). We will use the acronyms  for OpenType fonts with Type 1 glyphs, - for fonts with TrueType glyphs and with advanced layout tables, and  for fonts with TrueType glyphs but no advanced layout tables. Microsoft’s main interests in the OpenType for- mat lies in supporting complex scripts in Windows, with initial emphasis on Arabic and later on Indic scripts, and in tighter operating-system/font inte- gration using digital signatures. Adobe’s main in- terests in the format lies in exploiting TrueType’s advantages, mainly the support for non-latin char- acter encodings and the convenient single-file for- mat, and in providing its fonts and applications easier access to so-called expert glyphs, such as old-style figures and small capitals [8]. Windows and Macintosh Font Files Differences in the way font files are stored on dif- ferent platforms cause a few additional difficulties during font production. On Windows and Unix/Linux systems, a True- Type or OpenType font is stored in a single file. A Type 1 font is represented by up to four files: a pfb or pfa file that stores the glyph descriptions and a character-to-glyph encoding, an afm and/or a pfm files that store metric information, as well as the encoding, but no glyphs, and an inf file that stores administrative infomation about the font. On Win- dows system, only the pfb and pfm files are used. On Macintosh systems, there are multiple ways to store fonts. The Macintosh operating system supports two byte streams per file. One is called the data fork and the other the resource fork, which was meant to store application resources such as localized strings, icons, and so on. The format of the resource fork allows multiple resources to be stored in a single file. Before MacOS X (that is, before version 10), fonts were always stored in the resource fork of files whose data fork was empty. Fonts and font families are represented by several kinds of resources, such as the  resource that describes an entire family (regular, bold, italic, etc.), the  for storing TrueType fonts, the  and  for storing bitmap fonts, and so on. The fonts of a family are usually stored in a single file called a suitecase, whose resource fork contains multiple resources. The Macintosh also associates a file type (separate from the extension) and a creator code with each file. Font files need to have a specific type to be recognized as such by the Macintosh’s operating system. Storing fonts in multiple resources within a single file, and storing the font data in the resource fork rather than the data fork creates problems when 3 fonts are moved between platforms. To address this issue, Apple introduced new ways to store fonts in MacOS X. First, suitecases can now be placed in the data fork, using a format called adfontfile (after its extension). This format is essentially a traditional Mac font file, but in the data rather than the resouce fork. Second, MacOS X also allows Windows-style packaging of TrueType and  files in a single file in which the font data is stored in the data fork with no header or trailer. 3 Diacritic-Positioning Infor- mation in Older Fonts Masterfont’s existing fonts used three mechanisms for positioning diacritics. These mechanisms were developed over a long period of time—each addi- tional mechanism was designed to correct deficien- cies in previous ones. The first mechanism uses a number of precom- posed glyphs. These are used for dagesh, a dot that appears inside letters, and which must be carefully positioned to prevent overstriking the letter itself. Such combinations are also used for shin/sin dots, for diacritics attached to a final letter (only two combinations are used in modern Hebrew), and a few other cases. There are Unicode code points for these glyphs, as well as code points in the MacHe- brew 8-bit encoding, and they are used by both Macintosh and Windows systems. On the Macintosh, precomposed glyphs are also used to place diacritics on particularly difficult let- ter: resh, dalet, and qof. The first two are wide letters that have a single vertical stem at the right, under which below-baseline diacritics should be placed. Incorrect placement under these letters looks awful. The qof is the only non-final letter with a descender, so special attention is required to prevent the below-baseline diacritics from colliding with the descender. These glyphs do not have Uni- code code points, but they are used in all the Mac’s Hebrew fonts, including the fonts bundled by Ap- ple with the operating system. These glyphs appear to have been added by Apple quite early on. They do fix the most serious placement cases, but they do not fix all the placement problems. Further- more, this glyph set appears to have been designed by somebody without much expertise in Hebrew, since some of the precomposed glyphs can never appear in a text (e.g., dalet with a hataf-patah). Since the precomposed glyphs are insufficient for correctly positioning all the combinations, Master- Font developed a few years ago a positioning aid for the Macintosh. This software, called Mapik-Ve- Day, is a Macintosh system extension that selects a diacritic glyph according to the base letter. Fonts designed to work with this software have three sets of diacritics: one for narrow letters, one for wide letters, and one for medium-width letter. The dia- critics in all sets usually have the same shapes, and all have zero advanced widths, but each set has dif- ferent sidebearings. The three qamats glyphs, for example, all have the same shape and zero width, and all print to the right of the insertion point (so they appear below the preceding letter in a right- to-left text run), but the amount of right shifting is different. The software essentially divides the let- ters into three categories, each of which has its own set of diacritics. These two mechanisms, the precomposed glyphs and the three sets of diacritics of different widths, essentially mimic hot-led diacritics. These two mechanisms allow fairly good control over positioning, provided the font is designed for this system in mind. In particular, special attention must be given to the left sidebearings of base letters, to ensure that the diacritics from the appropriate category are well placed under them. To allow more precise control over diacritic po- sitioning, MasterFont began to use explicit posi- tioning information in the fonts. These are stored in the kerning table of the font, even though they are not real kerning pairs, since the insersion point should not move after the positioning adjustment. For example, a kerning pair alef-qamats with value 35 means that the qamats glyph must be shifted relative to the alef glyph by 35 font units. The in- sertion point remains exactly after (to the left of) the alef, as if no adjustment took place. This in- formation is not used by the Macintosh operating system, but a some Adobe applications can use it. MasterFont currently has 86 fonts with this level of diacritic positioing, which is essentially the set of fonts designed for book work. In addition, there are many more display fonts with pair kerning in- formation but without elaborate diacritic support. 4 Objectives Now that the setting has been described, we can enumerate the objectives of this project in more detail. First and foremost, we wanted to convert the di- acritic positioning information in the existing fonts to OpenType advanced-layout tables. We wanted 4 to do this without specifying any additional po- sitioning information. This restriction was moti- vated by several reasons: • Efficiency; there was no point in doing ex- tra design work on fonts that already produce perfecly-positioned texts. For example, there is no point in specifying positioning informa- tion for a combination represented by a care- fully designed-precomposed glyph. • Correctness; by not specifying new position- ing information, the chances of introducing new positioning bugs are minizized. • Continued support for older applications; we wanted to be able to produce additional new fonts that would be able to work not only in OpenType applications, but also in older ap- plications. By building new fonts according to the old specification and automati
本文档为【10[1].1.1.76.1518】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_509440
暂无简介~
格式:pdf
大小:602KB
软件:PDF阅读器
页数:8
分类:互联网
上传时间:2010-10-22
浏览量:11