Historically, there have been two methods of supporting vertical writing in CID-keyed OpenType/CFF fonts, in terms of specifying the ‘vert‘ (Vertical Alternates) GSUB feature. One method involved using a vertical CMap resource, which was supplied to the AFDKO makeotf tool as an argument to its no-longer-supported “-cv” command-line option, that was used to synthesize the ‘vert’ GSUB feature. The other method, which is the preferred one, involves defining a ‘vert’ GSUB feature in the “features” file that is supplied to the AFDKO makeotf tool. In this brief article, I will explain why the first method is no longer supported, but more importantly, why the second method is preferred.
To follow up on my June 2011 article about managing XUID arrays in CIDFont resources, which still conveys accurate information, it has come to our attention that the integer values for the second and subsequent XUID array elements should not exceed seven digits, meaning that 9999999 is the largest integer value that should be used. Integer values that exceed seven digits can result in some implementations treating the XUID arrays of different fonts within the same printing job the same, which affects font caching, and which can result in the wrong font being used to render some characters. This printing issue may happen even if the glyphs display correctly in the PDF file on screen.
Another solution is to simply omit the XUID array from the CIDFont resource header, which effectively disables font caching. For modern printers, font caching has little or no benefit.
Lastly, for those font developers who still include a UIDBase value in their CIDFont resource headers, it can be safely removed. In fact, I strongly recommend that it be removed.
While I won’t repeat here any of the exciting details in Typekit’s recent announcement for East Asia web font support (简体中文, 繁體中文, 日本語, 한국어) that employs dynamic kits, I’d like to seize this opportunity to demonstrate some of the default behavior that this new development exposes in various browsers.
Due to an inadvertent error on my part, the glyphs for the vertical-only kana were incorrect in Source Han Sans Version 1.002 (and, by extension, in Version 1.003 because there were no glyph changes). Many thanks to the person who identified and reported this issue, and I’d like to convey my sincere apologies to those who were affected by it.
[This article was written by Masataka HATTORI (服部正貴) and translated into English by yours truly.]
Source Han Code JP（日本語メニューネーム：源ノ角ゴシック Code JP）は、自分がほしくて個人的にはじめたオープンソースプロジェクトでした。Source Han Sans（源ノ角ゴシック）と Source Code Pro をフォールバックするエディタで使うと、漢字・仮名とくらべ英数字が小さくなってしまい全体的に読みにくいと感じていました。そんなとき、友人のプログラマーから、日本語も使えてコーディングにも適したフォントはないか？と相談されて、これは自分で作ってしまえと考えました。
オリジナルの Source Code Pro は、600 ユニット字幅を採用した欧文専用のモノスペースフォントで、まぎらわしいアルファベットや数字をディスプレイで判別しやすくするために、文字のデザインが工夫されています。それを、Source Han Sans JP（源ノ角ゴシック JP）の日本語と合わせてもフィットするようにサイズやウエイトを調整しました。文字幅は 660 ユニットあたりがちょうど良いと思いました。もともと読みやすさの観点から半角欧文はすこしコンデンスすぎると感じていたので、思い切って 2/3（667 ユニット）字幅を採用することにしました。一般的な半角（500 ユニット字幅）の等幅フォントにくらべ、全角文字との正確なインデントには向きませんが、読みやすさを確保しつつ、使い方次第で様々な表現ができると思いました。Source Han Code JP は、オリジナルの Source Han Sans JP と同じ７ウェイトのファミリーですが、ウェイトを切り替えても文字列の長さは変わりません。
結果的に、日本語を含むプログラミングやマークアップなどソースコードの表示や編集に使用できる Adobe Source シリーズの派生フォントとして、Adobe Fonts GitHub サイトから公開することになりました。
Read in English
Although it has been less than two months since the Source Han Sans Version 1.002 update was released, a Version 1.003 maintenance update was released on 2015-06-09 to address two particular issues. No glyphs nor Unicode mappings were added or modified.
Google’s corresponding Noto Sans CJK fonts, which continue to differ from Source Han Sans only by name, were also updated to Version 1.003 at the same time, and reflect the same changes.
The Source Han Sans Version 1.002 update was released on 2015-04-20, which involved turning a very large crank on something that has a very large number of moving parts. The updated region-specific subset OTFs are also available on Typekit via desktop sync.
Google’s corresponding Noto Sans CJK fonts, which differ from Source Han Sans only by name, were also updated to Version 1.002 at the same time, and reflect the same changes.
I started the process of migrating to GitHub the font-related open source projects that I maintain, and recently finished. In some cases, the projects were split between SourceForge and GitHub, with the installable font resources (and sources) on the former, and only the sources on the latter. Some projects were available only on SourceForge.
There are a couple of motivations for this migration. First, GitHub provides a great user experience for posting, tracking, and responding to “Issues” for a project. In fact, I made good use of the mobile app for Android while vacationing in Wisconsin late last July. Second, we prefer the control that GitHub offers in terms of updating projects. I use the GitHub command-line tools, along with the SourceTree app for OS X, when initiating or updating projects on GitHub.
For those familiar with typeface design, there is no doubt that the Latin and Latin-like glyphs—to include those for Greek and Cyrillic—in Source Han Sans are based on Source Sans Pro. One may also wonder about the half-width Latin glyphs in Source Han Sans and how they compare to those in Source Code Pro. The purpose of this short article is to make these relationships and differences clear, or at least clearer.
One of the reasons why Source Han Sans—and obviously the Google-branded Noto Sans CJK—can be considered the world’s first Pan-CJK typeface family is due to its support for Korean hangul. While it is common to support modern hangul in Korean fonts, supporting archaic hangul is relatively uncommon. One of the more challenging aspects of developing Source Han Sans was implementing support for archaic hangul, which also included handling 500 high-frequency archaic hangul syllables. This article will thus detail what went into supporting archaic hangul in Source Han Sans. I’d like to once again thank our talented friends at Sandoll Communication for designing the glyphs for these characters.
For the first time in my life, I visited three East Asian countries in a single trip: China, South Korea, and Japan. I have had trips that involved two countries—South Korea & Japan, China & South Korea—but never three. This particular one was also done in the span of only one week.
The purpose of this trip was to visit the three type foundries who were involved in the Source Han Sans/Noto Sans CJK project: Changzhou SinoType (常州华文) in Changzhou, China; Iwata (イワタ) in Tōkyō, Japan; and Sandoll Communication (산돌커뮤니케이션) in Seoul, South Korea. In addition to thanking each company in person, we also used the opportunity to discuss particulars of the project, in terms of what worked well and what didn’t, and I also demonstrated the processes that I used to take their raw glyph data and turn it into the final fonts. All three companies gave us a warm welcome, and were very gracious hosts. We had excellent lunches and dinners with all three companies, which allowed for greater social interaction.
Masataka HATTORI (服部正貴) from our Tōkyō office traveled with me to China and South Korea, and Jinho KANG from our Seoul office participated in the meeting with Sandoll Communication. In addition to Masataka, Taro YAMAMOTO (山本太郎) participated in the meeting with Iwata.
In the spirit of team-building and developing new skills, my manager, David Lemon, invited Chris Stinehour of Christopher Stinehour Design to give the Adobe Type Team a two-day workshop on letter cutting in stone. The workshop took place on Wednesday and Thursday of this week. The result of my efforts, which most definitely involved learning a new skill, is shown below:
Our most recent project, Source Han Sans, led me to much closer collaboration with our three-person typeface design and development team in our Tokyo office, which is managed by the Taro YAMAMOTO (山本太郎), with Ryoko NISHIZUKA (西塚涼子) as the primary typeface designer, and Masataka HATTORI (服部正貴) serving multiple roles, but mainly typeface design and production. The purpose of this article is to describe this team, with which I have worked for over 20 years on various projects, and its accomplishments from my perspective.
Unless you have been living in a cave or under a rock, you’ve no doubt heard of Source Han Sans or Noto Sans CJK through the initial announcements from Adobe or Google who jointly developed them, or elsewhere. These two Pan-CJK typeface families, which are joined at the hip because they differ only in name, were released to the world at large, as open source fonts, on the afternoon of July 15, 2014 in the US, which was the morning of July 16, 2014 in East Asia, their target audience. Click on the preview below to view a single-page PDF that shows all 65,535 glyphs from one of these fonts:
Over the next several months I plan to publish a series of articles on this blog that will detail various aspects of the development process that I employed for building these two typeface families. Although the subsequent articles will mention only Source Han Sans by name, they also pertain to its twin, Noto Sans CJK.
For readers of this blog who engage in social media, please consider following @CJKType on Twitter. Of course, one of the purposes of @CJKType will be to announce new CJK Type Blog articles, but it is also meant to engage the user and developer community with regard to CJK- and font-related issues, and will also announce or retweet other items of interest to these groups.
Unicode has become the de facto way in which to represent text in digital form, and for good reason: its character set covers the vast majority of the world’s scripts. Other benefits of Unicode include the following:
- That it is under active and continuous development, meaning that with each new version, more scripts are being supported, and additional characters for existing scripts are being standardized.
- That it is aligned and kept in sync with ISO/IEC 10646 (available at no charge), which is quite a feat.
With regard to font development, Unicode is considered the default encoding for OpenType, which refers to the ‘cmap‘ table. The most common ‘cmap’ subtables are Formats 4 (BMP-only UTF-16) and 12 (UTF-32). The latter is used only when mappings outside of the BMP (Basic Multilingual Plane), meaning from one or more of the 16 Supplementary Planes, are used.
[I’d like to preface this article by stating that it was written and contributed by our esteemed colleague, Taro YAMAMOTO (山本太郎), who manages our Japanese typeface design efforts in our Tokyo office. — KL]
NHK World’s TV program, Design Talks, to be broadcast from 1:30 to 2AM on Thursday, June 13th (UTC, London Time), will feature Japanese typography and typeface design. Various kinds of characters, such as Chinese ideographs, Japanese hiragana and katakana syllables, as well as Latin alphabet characters are used in Japanese typography, and it has a deep relationship with the tradition of Japanese calligraphy and handwriting, which were artistically made, and represent a culmination from the past. This program tries to shed light on the unique characteristics of Japanese typography by interviewing talented type designers of today, one of whom is Adobe’s own Ryoko NISHIZUKA (西塚涼子).
For more information about the TV Program: Design Talks (please refer to the links on that page to find out the program schedule and how to watch the program).
[For those in the US, you can check the schedule to find out when this program will be broadcasted. The easiest way to watch the program is by using the “NOW ON AIR” pod in the upper-right corner of the main page. For those in the PDT time zone, such as California, it will be broadcasted at 6:30PM and 10:30PM on Wednesday, June 12th, and at 2:30AM, 6:30AM, 10:30AM, and 2:30PM on Thursday, June 13th. — KL]
The prototypical Serif and Sans Serif typeface style distinction in Korean has traditionally used the names Myeongjo (명조체/明朝體 myeongjoche) and Gothic (고딕체/고딕體 godikche), respectively. But, in 1993, the Republic of Korea (South Korea) Ministry of Culture, in an attempt to standardize typographic terms, recommended the use of Batang (바탕 batang) and Dotum (돋움 dotum) as the proper names for these two typeface styles.
At the time the Ministry of Culture recommendation was made, which was a period when printing was the most common use of fonts, Batang was meant for body text, and Dotum was for display or emphasis purposes. Mobile devices have provided a new use for Dotum, because its lack of serifs provided superior readability on mobile devices with smaller screens that necessitated smaller point sizes, and the original rationale for these new names seems to no longer apply.
From what I can tell, Korean type foundries have not embraced the Batang and Dotum names, and have actually resisted their use. What probably didn’t help was the fact that Microsoft released TrueType fonts with these exact names, with no additional qualifiers: Batang and Dotum. In other words, it seems that Microsoft’s use of these names polluted their chance at more widespread use, because they were treated as typeface names, not typeface style names.
In closing this brief article, I am curious about what our blog readership thinks about this particular issue. I welcome any and all comments.
We recently released alternate versions of two Heisei (平成) fonts, specifically Heisei Mincho StdN W3 (平成明朝 StdN W3) and Heisei Kaku Gothic StdN W5 (平成角ゴシック StdN W5). As the “StdN” designator suggests, JIS2004 glyphs are the default for these two fonts (the Heisei “Std” fonts use JIS90 glyphs by default).
These two fonts also differ from the Heisei “Std” fonts in that they include significantly more glyphs. The Heisei fonts were developed by a consortium of companies, and Adobe is one of the member companies. Interestingly, JIS X 0213:2004 glyph data was developed only for Heisei Mincho W3 and Heisei Kaku Gothic W5, and JIS X 0212-1990 glyph data was developed only for the former font. So, one of my projects last year was to map as many of these glyphs as possible to Adobe-Japan1-6 CIDs.
As I wrote nearly a year ago, the Adobe-Identity-0 ROS is useful for building special-purpose fonts, especially CJK ones whose glyph coverage does not match one of our public ROSes. Our latest Adobe-Identity-0 ROS font is the open-source Adobe Blank, whose purposes and implementation details are described on our sister blog, Typblography.