Posts in Category "Open Source"

横組みと縦組みのどちらにも対応する可変字幅のバリアブルフォントによる実現方法

English (英語) here

(翻訳:Adobe Type チーム 山本太郎)

グリフの可変字幅を可能にしながら、縦組みでのグリフの回転が必要となる欧文や和文組版における縦中横(縦組み行の中に横組みの要素が入る)の組み方も取り扱えるモデルを、最近考案しました。

本記事の目的は、私が開発したオープンソースのフォントと、その動作モデルの記述に関心を寄せていただくことにあります。そのフォントに対応するアプリケーションソフトウェアとレイアウトエンジンを実装する開発者に活用していただくことを意図したものです。
Continue reading…

Horizontal & Vertical Compression/Expansion via Variable Fonts

日本語 (Japanese) はこちら

I recently came up with a Variable Font model to handle glyph compression and expansion in horizontal and vertical layout that includes support for characters whose glyphs rotate in vertical layout, such as the glyphs for Western characters, along with TCY (縦中横 tatechūyoko in Japanese, which literally means “horizontal in vertical”) support.

The purpose of this article is to call attention to the open source test font that I developed, along with a description of the model itself, which are intended to be used by developers to implement such support in apps and layout engines.
Continue reading…

Source Han Mono Version 1.001 Update

The new open source Source Han Mono (源ノ等幅 in Japanese, 본모노 in Korean, 思源等宽 in Simplified Chinese, 思源等寬 in Traditional Chinese—Taiwan, and 思源等寬 香港 in Traditional Chinese—Hong Kong SAR) typeface was released only four days ago, and this article provides details about its 70-font Super OTC (OpenType/CFF Collection). This article simply serves as an announcement for the Version 1.001 update that was released today. There are two main changes about which users should be aware:

  • The alignment zones and hinting parameters for the FDArray elements whose glyphs were derived from Source Code Pro were improved. Many thanks to Twitter user @KiYugadgeter for raising this issue here, and for confirming the fix here.
  • Our designer, Ryoko Nishizuka (西塚涼子), opted to improve the glyphs for the half-width katakana (半角片仮名) that were expanded to have 667-unit horizontal advances via anisotropic techniques. The image above shows glyphs from Source Han Sans, then from Source Han Mono Version 1.000, and then from Source Han Mono Version 1.001.

I also updated the 143-font Source Han Mega OTC and 216-font Ultra OTC in the Source Han & Noto CJK Mega/Ultra OTCs project earlier today.

Enjoy!

🐡

To UVS, Or Not To UVS

Several months ago I updated the Adobe-Japan1-UCS2 “ToUnicode” mapping file in the open source Mapping Resources for PDF project specifically to accommodate the two Adobe-Japan1-7 CIDs, CIDs 23058 and 23059.

However, that ToUnicode mapping file is long overdue for a rather extensive update for other reasons, and part of the delay was intentional on my part. The purpose of this article is to outline the reason for the delay, along with providing more concrete update plans.
Continue reading…

Source Han Mono Version 1.000 Technical Nuggets

As the readership of this blog should know, I updated the Source Han Sans and Noto Sans CJK fonts to Version 2.001 early last month, mainly to accommodate the glyphs for U+32FF ㋿ SQUARE ERA NAME REIWA, which is the two-ideograph square ligature form of Japan’s new era, Reiwa (令和), that began on 2019-05-01. I then seized the opportunity to update our corporate Adobe Clean Han typeface family, to bring it into alignment with Source Han Sans Version 2.001. The updated Adobe Clean Han fonts are now being served to this blog.

I then decided to embark on a somewhat ambitious project to develop a new open source typeface named Source Han Mono, which is best described as a Pan-CJK version of Source Han Code JP, first developed four years ago by my esteemed colleague in our Tōkyō office, Masataka Hattori (服部正貴). You can read the background here. This effectively closes Issue #2 in the Source Han Code JP project.

Source Han Mono is a derivative typeface design of Source Han Sans, designed by my colleague Ryoko Nishizuka (西塚涼子), and Source Code Pro, designed by my colleague Paul D. Hunt. Its localized names are 源ノ等幅 (Japanese), 본모노 (Korean), 思源等宽 (Simplified Chinese), 思源等寬 (Traditional Chinese—Taiwan), and 思源等寬 香港 (Traditional Chinese—Hong Kong SAR). (As an aside, the reason why the Traditional Chinese—Hong Kong SAR name, 思源等寬 香港, appears correctly is due to the updated Adobe Clean Han fonts. This benefitted the glyphs for U+7B49 and U+9999 .)

This article will detail some of the challenges that I faced, along with some of the decisions that I made, while developing this new Pan-CJK typeface family.
Continue reading…

Adobe Blank VF & Friends

I spent the last couple of weeks developing a Variable Font version of the infamous Adobe Blank, and the open source project, named Adobe Blank VF & Friends, was released yesterday evening. But, before I detail what makes the Variable Font versions special, besides being Variable Fonts, let’s briefly go over the history of Adobe Blank and Adobe Blank 2.

Adobe Blank

First released in 2013 as open source, Adobe Blank simply maps all 1,111,998 Unicode code points to non-spacing and non-marking glyphs. What made the project interesting for me was to find the right balance between the number of glyphs and the size of the 'cmap' table. When mapping over a million code points, this becomes a valid concern. After some experimentation, I found that 2,049 glyphs was the sweet spot that resulted in 'CFF ' and 'cmap' tables of a relatively small size.

Adobe Blank 2

Adobe Blank 2, which was first released in 2015, is a two-glyph version of Adobe Blank that includes a Format 13 (Many-to-one range mappings) 'cmap' subtable that maps all 1,111,998 Unicode code points to GID+1. At the time, there was no convenient way to create a Format 13 subtable, so I used ttx, and supplied the actual hex values of the compiled subtable. The current version of ttx can successfully compile a Format 13 subtable by explicitly specifying all 1,111,998 mappings.

That then brings us to the Variable Font versions…
Continue reading…

Contextual Spacing GPOS Features—Redux

On this date last year, I published the Contextual Spacing GPOS Features article, and this briefer article serves as an update.
Continue reading…

Source Han Sans Version 2.001

The earlier part of this year was spent preparing new and revised glyphs for the Source Han Sans and Google-branded Noto Sans CJK Version 2.001 update, which also involved changing several mappings. The fonts for the former Pan-CJK typeface family were released today, and as usual, the all-inclusive—and highly-recommended—45-font Super OTC (OpenType Collection) is easily downloaded from the latest release page. See the official ReadMe (will download if clicked) for more details about this release. 70 of the Source Han Sans Version 2.001 fonts are also available via Adobe Fonts (formerly Adobe Typekit).
Continue reading…

Adobe-Japan1-6 vs Source Han

Prompted by recent activity on Twitter, I assembled a new mapping file that correlates Adobe-Japan1-6 CIDs (aka glyphs) to Source Han ones, but only for the 6,879 characters in the JIS X 0208 standard. Because the Source Han Sans and Source Han Serif glyphs sets are different, they require separate columns in the mapping file. Also, for the 161 kanji in JIS X 0208 that have both JIS90 (aka JIS X 0208-1990) and JIS2004 (aka JIS X 0213:2004) forms, the CIDs that correspond to the JIS2004 forms are indicated, and those for the JIS90 forms are in brackets.
Continue reading…

CMap Resources—Redux

I spent part of last week preparing the Adobe-Japan1-7 character collection specification update, which will be released sometime in early April, shortly after Japan announces the name of their new era name. (Until the update is released next month, Adobe-Japan1-6 is still reflected in the open source project.) The announcement is expected to take place on 2019-04-01, and while this date represents the start of a new fiscal year in Japan, it is an unfortunate choice for elsewhere.

Anyway, while performing said update, I came across a reference to Adobe Tech Note #5094, Adobe CJKV Character Collections and CMaps for CID-Keyed Fonts, which I last updated a dozen years ago. I decided to use this as an opportunity to obsolete yet another Adobe Tech Note by incorporating its meaningful content into the open source CMap Resources project. I did precisely that last week, which involved updating its content in the process.

🐡