5c-Yen | Open Type Variable Font

5c-Yen バリアブル・フォント | 5c-Yen Variable Font


Variable Fontに関する一般的な情報、およびNoto Fontからの変更点について

ダウンロードは こちら(Gothic Mono) または こちら(Gothic) から
明朝体版はありません (2021年4月現在、元になる Variable な Noto Serif CJK JP が存在しないため)

Variable Fontについて

2021年4月 Noto FontのVariable版がリリースされました。
(情報を得たのはAdobe版のリリース情報で、そこから上記へたどり着きました。)

Variable Fontについては @usagimaru さんの下記の記事を参照していただくのがよいと思います。
特にFont VariationVariation Axis Tag の wght がこのページの記載に関連する箇所です。

Microsoftのサイトに記載されているVariable Fontの規格文書は必見だと思います。(上記の記事でも参照しています)
OpenType Font Variations Overview

NotoフォントのVariable版では、補間のできる軸としてWeightが指定されています。
ファイルサイズ は[非Variable版のWeight 2つ分] より少し大きい程度で、[Variable版のWeight 7つ分] を収録できています。
(RegularとBoldだけでよいのであればVariable版のメリットはなさそうです。)

Windows 10の.Net 4.8環境で試してみる限り、コントロールのFontweightプロパティ
後述のfvarに定義していないWeightを設定しても補間は行われませんでした。
しかしfvarにWeightの定義を追加し、Weightの異なる字体を表示することは可能でした。


5c-Yen Variable Font 作成時の変更点

5c-YenのVariable版を作成する際、変更したVariable Font特有のテーブルは下記の2つです。

fvar,STATのほかに非Variable版と同様にname,OS/2,hheaも変更しています。
avarはVariable Font特有で、補間の調整ができるようですが、変更はしていません。

Noto Font から 5c-Yen Variable Font を作成した際の主な変更点は下記のとおりです。

  • コードポイント 0x5cのGlyph
    フォントの名称の通りYen Signを割り当てています。5c-Yenの非Variable版と同様です。

  • 収録しているコードポイント
    削減しています。5c-Yenの非Variable版と同様です。

  • 行間
    若干狭くしています。5c-Yenの非Variable版と同様です。

  • Weight
    WPFでのWeight名称表示の都合でFontWeightsクラスに定義されていない値は削除/変更しています。(非Variable版の記述を参照)
    せっかくVariable Fontをベースにしているので、補間できる範囲で未定義のものはfvarに追加しました。
Noto Sans VF → 5c-Yen Gothic VF
  • DemiLightを削除
  • ExtraLight、SemiBold、ExtraBoldを追加
※非Variable版は名称の付け替え(Light → ExtraLight、DemiLight → Light)でしたが、
  Variable版は補間ができるため、上記のようになりました。

Noto Sans VF 5c-Yen Gothic VF
Thin 100 Thin 100


ExtraLight 200
Light 300 Light 300
DemiLight 350

Regular 400 Normal 400
Medium 500 Medium 500


SemiBold 600
Bold 700 Bold 700


ExtraBold 800
Black 900 Black 900


Noto Sans Mono VF → 5c-Yen Gothic Mono VF
  • Medium、SemiBoldを追加
  • Regular(Normal)、BoldはWeightの指定を変更(WPFで都合が悪いので)
Noto Sans Mono VF 5c-Yen Gothic Mono VF
Regular 390 Normal 400


Medium 500


SemiBold 600
Bold 780 Bold 700

Mono(等幅)フォントはRegular(Normal)より細い字体が欲しかったのですが、
最も細い字体のデータがRegularなので追加できませんでした。
(Regular - Bold 間の補間はできるが、Regularより小さいWeightを指定してもRegularと同じ字体が出力される。)


○サブセット化に使用した環境、fonttoolsは下記のとおりです。
Windows 10(64bit)
Python 3.9.2
fonttools v4.22.0

作成結果のチェック

[Noto Font Sans (Mono) VF]と作成した[5c-Yen Gothic (Mono) VF]を使用して 平仮名の [あ] をTextBlockへ表示、
PNG形式で保存し、黒(α:255,R:0,G:0,B:0)のピクセルを数えました。
TextBlockのBackgoundはWhite、FontSizeは256pxを指定しました。
Width、HeightはPNGの横、縦のピクセル数です。(Notoと5cYenでHeightが異なるのは行間を変更しているため)
WPFのフォント描画はClear Typeの影響を受けるので、環境が異なると結果が変わるかもしれません。

Noto Sans VF 5c-Yen Gothic VF
Weight Width Height Black Pixels Weight Width Height Black Pixels
Thin 100 256 370 5,980 Thin 100 256 329 5,980





ExtraLight 200 256 329 7,960
Light 300 256 370 9,901 Light 300 256 329 9,901
DemiLight 350 256 370 13,685




Regular 400 256 370 15,284 Normal 400 256 329 15,284
Medium 500 256 370 19,097 Medium 500 256 329 19,097





SemiBold 600 256 329 21,517
Bold 700 256 370 23,841 Bold 700 256 329 23,841





ExtraBold 800 256 329 26,108
Black 900 256 370 28,288 Black 900 256 329 28,288

Noto Sans Mono VF 5c-Yen Gothic Mono VF
Weight Width Height Black pixels Weight Width Height Black pixels
Regular 390 256 370 15,289 Normal 400 256 329 15,289





Medium 500 256 329 18,231





SemiBold 600 256 329 21,064
Bold 780 256 370 23,860 Bold 700 256 329 23,860