Author Archive: Dr. Ken Lunde

IICore 2020 🤔

Page 697 of the Unicode Version 11.0 Core Specification includes an IICore subsection that states the following about its 9,810 ideographs: This coverage is of particular use on devices such as cell phones or PDAs, which have relatively stringent resource limitations. Various iterations of L2/18-066 attempted to tweak the existing IICore set based on my recent five-part analysis. I was even given a UTC #156 Action Item to update L2/18-066 once again.

However, after realizing that the “resource limitations” from about 15 years ago, which was when the current IICore set was established, no longer apply to today’s devices, I opted to propose a completely new version of IICore that would be tagged with its year of vintage, 2020, which is also the year in which the earliest version of Unicode that includes it would be released. While I intend to reveal more details later, what I plan to propose will include a little over 20K ideographs, and will be discussed during UTC #157 and IRG #51 later this year.

Edited To Add: The proposal was posted to the UTC document register on 2018-09-04 as L2/18-279, and is also available in the IRG #51 document register as IRG N2334. If anyone has any formal feedback for the UTC to consider during UTC #157, please use Unicode’s Contact Form.

🐡

Adobe-Japan1-7 のサブセットフォント

English (英語) here

新元号に対応した Adobe-Japan1-7 サブセットフォント作成方法の提案とフィードバックのお願い

前回の記事で述べたように、日本で新しい元号が発表されると、まもなく Adobe-Japan1-6 文字コレクションの仕様が Adobe-Japan1-7 へ更新される。この記事では、フォントの更新に必要となる作業を説明、提案する。読者からのフィードバックを歓迎する。)

Adobe-Japan1-6 に含まれる 23,058 個のグリフを全てサポートしている日本語の OpenType フォントについては、Adobe-Japan1-7 に更新するのは比較的シンプルだ。二つのグリフとそれに関連するマッピングを追加、そして Adobe-Japan1-7 の識別子を使用してそのフォントに名前をつければ完成だ。だが、もちろん、すべてのフォントに新年号用合字を加えて、Adobe-Japan1-7 にアップデートする必要はない。この記事はアップデートしたいフォントがある場合に、フォント開発者に参照していただきたい。

まず、「OpenType Font Development」のサブセクションの「JIS2004-Savvy OpenType Fonts」にある表は以下のようにアップデートする必要があることは明らかだ。

Supplement Designator JIS2004-Savvy Designator /CIDFontName & Menu Name Examples
3 Std StdN KozMinStd-Regular, 小塚明朝 Std R & KozMinStdN-Regular, 小塚明朝 StdN R
4 Pro ProN KozMinPro-Regular, 小塚明朝 Pro R & KozMinProN-Regular, 小塚明朝 ProN R
5 Pr5 Pr5N KozMinPr5-Regular, 小塚明朝 Pr5 R & KozMinPr5N-Regular, 小塚明朝 Pr5N R
6 Pr6 Pr6N KozMinPr6-Regular, 小塚明朝 Pr6 R & KozMinPr6N-Regular, 小塚明朝 Pr6N R
7 Pr7 Pr7N KozMinPr7-Regular, 小塚明朝 Pr7 R & KozMinPr7N-Regular, 小塚明朝 Pr7N R

だが、下位の Supplement だけをサポートする JIS90 対応のフォント、あるいは、上位の Supplements から少数のグリフのみを取り入れて JIS2004 対応としているフォントについては、どのように対処すべきだろうか。以下に詳述する。

全ての日本語フォントが Adobe-Japan1-6 で指定された 23,058 個のグリフ全てを含んでいるわけではなく、多くのフォントが Adobe-Japan1-3 だけをサポートしている。その中には、JIS2004 対応とするために、上位 Supplements 4 ~ 6 の中から、144 個のグリフを追加したものもある。例えば、macOS にバンドルされた最新のヒラギノフォントは Adobe-Japan1-3 か Adobe-Japan1-5 をサポートし、JIS2004 に対応している。日本語書体のグリフをデザインするには膨大な時間と労力が必要だ。しかも、23,000 個以上のグリフが必要とされている場合でも、23,000 個のグリフ全てが頻繁に使われるわけではない。

そこで Adobe-Japan1-6 をフルにサポートしていないフォントをサポートするよう拡張するより、新元号の漢字から成る合字のグリフのみを追加したいという要求がまず生ずるだろう。そのために必要となる作業は以下のとおりだ。

JIS90 準拠の OpenType フォント

JIS90 に準拠する OpenType フォントの開発は比較的容易だった。というのもこれらのフォントはすでに定義されていた Supplements の中から一つを選び、そこに定義されているグリフ含めればよかったからだ。一般的な多くのフォントが、Adobe-Japan1-3(グリフ数 9,453)、Adobe-Japan1-4(グリフ数 15,444)、Adobe-Japan1-5(グリフ数 20,317)のいずれかとなっている。

Adobe-Japan1-7 と新元号用の二つのグリフを検討する場合、Supplement 3(別名 StdN)フォントには CID+23058(横書き用)だけが必要だ。現在と以前の年号の縦書き用合字は、Supplement 4 で初めて加えられたので、Supplement 3 ではサポート範囲外と見なすことができる。Supplement 4 とそれ以上のフォントでは、CID+23058 と CID+23059(縦書き用)を単に追加するだけだ。フォント名中の識別子 Pro、Pr5、Pr6 はそのままにし、CFF テーブル中、Supplement の値は「7」とする。

JIS2004 準拠の OpenType フォント

Adobe-Japan1-6 の文字コレクションは「OpenType Font Development」のサブセクションの「JIS2004-Savvy OpenType Fonts」にある下記の表の通りだ。JIS2004 に準拠するために上位の Supplements からのどのグリフを下位の Supplement をサポートするフォントに追加すべきかがわかる。

Supplement Additional Glyphs Designator CIDs & CID Ranges
3 144 StdN 4—9354, 9779, 12101, 12870, 13320–13327, 13330, 13332–13333, 13335–13341, 13343, 13345–13355, 13358–13369, 13371, 13373–13382, 13385–13388, 13391–13400, 13402, 13460, 13495, 13538, 13624, 13650, 13673, 13731, 13803, 13860, 13893, 13915, 13949, 13964, 14013, 14066, 14074, 14111, 14116, 14196, 14272, 14290
5—16977, 17041, 18760, 19312, 19346, 20175, 20222, 20263–20296, 20301–20305, 20307, 20314
6—21072–21074
4 81 ProN 5—16413, 16444–16449, 16467–16468, 16889, 16905, 16977, 17014, 17041, 17168, 17205, 18759–18760, 19061, 19312, 19346, 20175, 20222, 20263–20296, 20299–20310, 20312–20315
6—21071–21074, 21558, 21933, 22010, 22920
5 10 Pr5N 6—21071–21074, 21371, 21558, 21722, 21933, 22010, 22920

以下の表では、Adobe-Japan1-7 とその二つの新しいグリフを考慮に入れた場合、下位 Supplements をサポートするフォントがどのように調整されるべきかを示す。

Supplement Additional Glyphs Designator CIDs & CID Ranges
3 145 StdN 4—9354, 9779, 12101, 12870, 13320–13327, 13330, 13332–13333, 13335–13341, 13343, 13345–13355, 13358–13369, 13371, 13373–13382, 13385–13388, 13391–13400, 13402, 13460, 13495, 13538, 13624, 13650, 13673, 13731, 13803, 13860, 13893, 13915, 13949, 13964, 14013, 14066, 14074, 14111, 14116, 14196, 14272, 14290
5—16977, 17041, 18760, 19312, 19346, 20175, 20222, 20263–20296, 20301–20305, 20307, 20314
6—21072–21074
7—23058
4 83 ProN 5—16413, 16444–16449, 16467–16468, 16889, 16905, 16977, 17014, 17041, 17168, 17205, 18759–18760, 19061, 19312, 19346, 20175, 20222, 20263–20296, 20299–20310, 20312–20315
6—21071–21074, 21558, 21933, 22010, 22920
7—23058–23059
5 12 Pr5N 6—21071–21074, 21371, 21558, 21722, 21933, 22010, 22920
7—23058–23059

容易に見て取れるように、Supplement 3 のサブセットは Supplement 7 からの CID+23058 のみを含む。JIS90 準拠のフォントの項で説明したように、CID+23059 が含まれなくていい理由は現在と以前の三つの元号 U+337B「㍻」、U+337C「㍼」、U+337D「㍽」及び U+337E「㍾」の縦書き用合字が Supplement 4 に含まれていて、Supplement 3(別名 StdN)には含まれていないからだ。これらの合字のCIDは、Supplement 4 において、12041 から 12044 となっている。なお、「StdN」グリフセット(Adobe-Japan1-3 と Supplements 4 から 6 までの 144 個のグリフ)は 10 年以上安定しており、元号の縦書き用合字への要望はいままでなかったことを付け加えておく。

最後に、CFF テーブル中の Supplement の値は CID の末尾の値に合わせるべきであることを強調しておきたい。例えば、CID+23058 を含む Adobe-Japan1-3 フォントは「Std」フォントであっても「StdN」フォントであっても、「7」を Supplement 値に指定するべきである。

この記事に関してのフィードバックをお送りいただきたい。ここで提案した方法は理にかなっていると思うが、他のオプションを検討する時間もまだ十分にある。

🐡

Adobe-Japan1-7 Subset Fonts

日本語 (Japanese) はこちら

Per the previous article, the Adobe-Japan1-6 Character Collection specification will be updated to Adobe-Japan1-7 shortly after Japan’s new era name is announced. This article notes some of the changes that need to be considered as part of that update, and I am therefore soliciting feedback on the ideas that are presented below.

For OpenType Japanese fonts that already support Adobe-Japan1-6 in its entirety, meaning that all 23,058 glyphs are included, updating to Adobe-Japan1-7 is a relatively simply matter of adding two glyphs and its associated mappings, along with renaming the fonts to use an Adobe-Japan1-7 designator. Of course, not all fonts need to be updated to include the Adobe-Japan1-7 glyphs, and this article is meant to benefit Japanese font developers who plan to do so for some or all of their fonts.
Continue reading…

Preparing for May 1, 2019—2019年5月1日の準備

(After realizing that the retargeting of Adobe-Japan1-7 to include only two glyphs, and with a fairly predictable release date range, exhibited characteristics of a pregnancy, I became inspired to write the text for the Adobe-Japan1-6 is Expecting! article while flying from SJC to ORD on the morning of 2018-07-20. I also prepared the article’s images while in-flight. The passenger sitting next to me was justifiably giving me funny looks. My flight to MSN, which was the final destination to attend my 35th high school class reunion in greater-metropolitan Mount Horeb, was delayed three hours, and this gave me an opportunity to publish the article while still on the ground at ORD.)

What do we know about Japan’s new era name? First and foremost, its announcement is unlikely to occur before 2019-02-25, because doing so would divert attention away from the 30th anniversary of the enthronement, 2019-02-24, but it may occur as late as 2019-05-01, which is the date on which the new era begins. That’s effectively a two-month window of uncertainty.

Interestingly, the date 2019-05-01 takes place not only during UTC #159, which will be hosted by me at Adobe, but also during Japan’s Golden Week (ゴールデンウィーク), which may begin early to prepare for the imperial transition.
Continue reading…

Adobe-KR-9 캐릭터 콜렉션—첫 번째 공개 릴리스

English (영어) here

2017년 6월 23일 제가 서울에 위치한 산돌의 사무실을 방문했을 때, 마지막 업데이트로부터 근 20년이 다 되어가는 Adobe-Korea1-2 (링크를 클릭하면 PDF가 다운로드됨)를 대체할 만한 새로운 한국어 글리프 세트를 개발하는 것에 대한 논의가 시작되었습니다. 그리고 이는 새로운 Adobe-KR-9 캐릭터 컬렉션의 첫 번째 공개 릴리스로 완결되었습니다. 본 글리프 세트는 네 번의 초안을 거쳐 완성되었습니다. 첫 번째 초안은 2017년 10월 1일, 두 번째 초안은 2017년 12월 19일, 세 번째 초안은 2018년 1월 8일, 그리고 2018년 3월 2일의 네 번째 초안을 거쳐 2018년 5월 15일 베타 릴리스가 공개되었습니다. 여기에는 전체 데이터 파일 세트, 대표적인 글리프들의 완전한 세트, 오픈타입/CFF 폰트의 모든 기능이 포함된 두 가지 예제, 그리고 기타 보조 자료가 포함되어 있습니다.

본 글리프 세트에 대한 아이디어가 탄생한 이래로 1년이 조금 넘게 지난 오늘, 첫 번째 공개 릴리스를 발표하게 된 것을 기쁘게 생각합니다. 베타 릴리스와 첫 번째 공개 릴리스 사이에 변경된 사항이 궁금하신 분들은 스펙의 이전 버전 변경사항 섹션을 참조하십시오. 첫 번째 공개 릴리스에 해당하는 Adobe-KR-9 CMap 리소스는 이제 CMap 리소스 프로젝트에서 사용이 가능합니다. 이 프로젝트를 방문하는 동안, 최신 출시 버전에서 1,990페이지의 UTF-32.pdf 파일을 다운로드하여 책갈피를 확인하시기 바랍니다. 이 버전은 UTF-32 CMap 리소스를 위한 글리프 테이블을 제공합니다.

🐡

The Adobe-KR-9 Character Collection—First Public Release

한국어는 (Korean) 여기

What began on 2017-06-23 when I visited Sandoll‘s office in Seoul, which included discussions about developing a new Korean glyph set to replace Adobe-Korea1-2 (if you click the link, the PDF will download) that was last updated nearly 20 years ago, has culminated in the First Public Release of the new Adobe-KR-9 Character Collection. This glyph set went through four drafts—First Draft on 2017-10-01, Second Draft on 2017-12-19, Third Draft on 2018-01-18, and Fourth Draft on 2018-03-02—followed by a Beta Release on 2018-05-15 that included a complete set of data files, a complete set of representative glyphs, two fully-functional example OpenType/CFF fonts, and other collateral materials.

After a little over a year since the idea for this glyph set was born, I am pleased to announce that the First Public Release was issued today. For those who are curious about what changed between the Beta Release and the First Public Release, please reference the Changes Since Earlier Versions section of the specification. The Adobe-KR-9 CMap resources that correspond to the First Public Release are now available in the CMap Resources project. While visiting that project, be sure to download the bookmarked 1,990-page UTF-32.pdf file from the latest release that provides glyph tables for all UTF-32 CMap resources.

🐡

“Tally Marks” OpenType-SVG Font

As a follow up to my Ideographic Tally Marks article from over two years ago, the characters for two tally mark systems—ideographic (called 正の字 sei-no ji in Japanese, and 正字 zhèng zì in Chinese) and Western-style—are among the 684 new characters in Unicode Version 11.0 that was released exactly a week ago, and these seven new characters can be found in the existing Counting Rod Numerals block from U+1D372 through U+1D378.
Continue reading…

Unicode Version 11.0

Unicode Version 11.0 was released today, and—as usual—new CJK Unified Ideographs were added, albeit a very modest number. I used this opportunity to update my trusty single-page PDF that keeps track of the CJK Unified Ideographs and CJK Compatibility Ideographs in Unicode, and which provides additional details, such as version information, the number of remaining code points in each block, and so on.

Interestingly, Extension G (aka IRG Working Set 2015) is unlikely to be included in Unicode Version 12.0 (2019), given its accelerated schedule, so we’re looking at Version 13.0 (2020) for the official opening of Plane 3 (aka TIP or Tertiary Ideographic Plane).

Or, are you more interested in the new emoji that were added? 🤔

🐡

The Adobe-KR-9 Character Collection—Beta Release

I am pleased to announce that the Adobe-KR-9 character collection, which went through four drafts, is now available as a Beta release that includes all of the expected collateral pieces, to include two fully-functional OpenType fonts with all of its glyphs. The Adobe-KR-9 project includes the specification proper, along with most of the collateral pieces. The two OpenType fonts are available for convenient download on the latest release page.

The CMap resources are also available in the CMap Resources project, and an updated UTF-32.pdf file that includes a Unicode-based glyph synopsis for the Adobe-KR-9 character collection is available on the latest release page.
Continue reading…

Contextual Spacing GPOS Features: ‘cspc’ & ‘vcsp’

Japanese line layout is very complex, and the first attempt to standardize its rules and principles was in the JIS X 4051 standard, which was first issued in 1993 with the title 日本語文書の行組版方法 (Line Composition Rules for Japanese Documents in English). There was a revision issued in 1995, and the latest version was issued in 2004 with the slightly different title 日本語文書の組版方法 (Formatting rules for Japanese documents). Another important document is the W3C Working Group Note JLREQ (Requirements for Japanese Text Layout), which provides much of what is described in JIS X 4051, but covers additional areas, and is tailored toward web technologies. Although still considered working drafts, W3C is also preparing similar documents for Chinese and Korean as CLREQ (Requirements for Chinese Text Layout) and KLREQ (Requirements for Hangul Text Layout and Typography), respectively.

This article is not about these standards per se, which are intended for apps and environments that implement sophisticated line layout. Rather, this article is about harsher “plain text” or comparable environments that generally do not need such treatment, yet still benefit from a modest amount of context-based spacing adjustment, particularly to get rid of unwanted space between full-width brackets and other punctuation whose glyphs generally fill half of the em-box. App menus, app dialogs, and simple text editors are examples of where such adjustments can improve text layout in these modest ways.
Continue reading…