AIによる記事自動生成ブログ四三式

このブログは天才チンパンジー「アイ(AI)ちゃん」が、言語訓練のために作成しているものです。

iPadのクリスタにTTCフォントを追加する。

iPadでのフォント追加は面倒くさい。クリスタでフォントの同期なんて出来ない訳で、環境整備されてるしキーボード使えるPC版で作業したほうが楽ってのはある。

それはともかく、TTC拡張子のフォント(TTCフォント)の追加メモ。

TTCフォントとは

前提として、Anyfontを使う。これの使い方もややこしい。Dropbox経由で追加できるのはまだ良いが、追加後にiOSの「設定」からフォント・プロファイルのインストールをしなくてはならない。設定画面まで一発で飛んでくれよ、とも思う。

ここで、TTC拡張子のフォントを追加しようとすると、フォント・プロファイルのインストール時に「ペイロードに複数のフォントが含まれています」が発生する。

一応、AnyfontはTTCフォントも対応しているという触れ込みなのだが。

TTCは「TrueType Collection」の略称だそうで、実態はTrueTypeフォント詰め合わせファイル(Containerじゃないのか)。TrueTypeフォント=TTF。

すなわち、TTCからTTFに分解すれば、フォントのインストールが可能になる。

UniteTTCを使う

UniteTTCという分解ツールコマンドラインで提供されている。(GUIにはなってないので、この時点でとっつきにくい人には断念ポイントだとは思うが。)詳しい使い方は上記公式を参照。

TTCファイルはUniteTTCフォルダ直下でOK。例文ではunitettc99となっているところをunitettc64だとかunitettc32に書き換えて使う必要がある。まあ、説明の中に書いてあるので、ちゃんと読めという話。

フォルダ直下にTTFファイルが複数出来上がるので、それらをAnyfontからインストールすれば完了。

TTCファイルの「分解」表現

今回参考にしたのは以下のサイト。

TTCフォントをTTFに分解する方法。 - Qiita

ttc形式のフォントを分解する | 魔ッドアングラー

こちらではTTCファイルの「分解」表現が適正だと言っているが、根拠が示されていない。UniteTTCでは「分割」と表現しているので、はて?と。

よく見てみたら、「変換よりは」分解の方が適切、と言っているだけだったので、「分解」が適正かどうかまでは言及されていなかった。

Microsoftのリファレンスを見る。(Microsoftの公式サイトって時間が経過するとURLが機能しなくなるから嫌い) OpenType font file (OpenType 1.9) - Typography | Microsoft Docs

「The Font Collection File Structure」に以下の記載がある。あくまで定義テーブルと実ファイルで構成されるとしか表現されていない。ただ、構造体であることは明らか。

A font collection file consists of a single TTC Header table, one or more Table Directories (each corresponding to a different font resource), and a number of OpenType tables. The TTC Header must be located at the beginning of the TTC file.

The TTC file must contain a complete table directory for each font resource. The same TableDirectory format is used for each font in a collection file as in a non-collection file. The table offsets in all table directories within a TTC file are measured from the beginning of the TTC file.

構造体に対して、分解・分割どちらも表現としては使うので、まあ、どっちでも間違ってないってことだろう。

まあ、少なくとも「コレクションファイル」であって、長期保存を目的(原義だが)とした「アーカイブ・ファイル」とは別物なので、(一般的にアーカイブ・ファイルの復元に対して使われる)「解凍」という表現はふさわしくない、とは言える、はず。

解凍という表現はセンスありすぎて何に対しても使えちゃうよなあ、とも思ったけど。