プログラミングまとめ|みし|note (original) (raw)

GASからBlueSkyに投稿してみる

タスクを先延ばししていたら4月に入っていたYo! BlueSky用JavaScriptライブラリとしてはa…

フォントを読む 第17回 CFFフォント(1)

CFFは、loca+glyfの組み合わせのOpenTypeとは全く別のフォント実装方法になる。 Compact …

フォントを読む 第16回 縦書き

縦書きに関しては、横書きと別の情報が必要になる。hhea、hmtxに対応したテーブルとしてvhea…

フォントを読む 第15回 カラーフォント

前回までは一般のフォントを読んでみた。それではカラーフォントはどうやって実装するのだろ…

フォントを読む 第14回 フォントのサイズと位置合わせ

さらっと流される割に難解な気がする。 フォントの座標軸は左下を0,0とし、その線をbasel…

フォントを読む 第13回 TrueTypeを読む4 空白を塗る

前回までで輪郭線を読んだ訳だが、結果的に以下のようなデータが表示される。svgに展開する…

フォントを読む 第12回 TrueTypeを読む3 輪郭情報の展開

TrueTypeの字形情報の実体はglyfテーブルの中にあり、contoursと呼ばれる輪郭情報とinstructionsと呼ばれるフォントプログラムの組み合わせで描画される。しかしながらフォントプログラムに関しては無視して構わない。これはTrueType glyph outlineの情報で、instructionsを持っていないフォントも多い。 insturctionsについては以下に記述があり、スタック型の疑似マシン語になっている。Bezier­splineを使うと

フォントを読む 第11回 TrueTypeを読む2 Layout情報

hheaテーブル hheaテーブルはHorizontal Header Tableの意味で水平方向のレイアウトヘッダテ…

フォントを読む 第10回 TrueTypeを読む

TrueTypeフォントの在処はどこ? TrueTypeの字形の定義はglyfテーブルで行われている。そのた…

フォントを読む 第9回 cmap(4) 異字体セレクタ Format14を読む

cmap Format14とは Format 14に関しては説明している日本語の資料が少ない。Unicodeの異字体…

フォントを読む 第8回 cmap(3) Format12/13を読む

Format 12とは シリコンバレーの間抜けな技術者が無理矢理65536文字で世界全部の文字を表現…

フォントを読む 第7回 cmap(2) Format4を読む

Format 4とは cmapのFormat 4は16bit固定長のテーブルになる。つまり65535文字までしか扱え…

フォントを読む 第6回 cmap(1) グリフを探すのに使うテーブル

cmapとは cmapはCharacter to Glyph Index Mapping Tableと言う意味で、文字コードをフォント…

フォントを読む 第5回 これ居るの?maxpテーブル、postテーブル

maxpはMaximum Profileの略になる。 ここにはフォントで使う各パラメータの最大値が書かれている。フォントを展開する上であらかじめどれぐらいメモリを確保すれば良いかと言う情報が書かれている。ちなみにCFFでサブルーチンを呼び出したらスタックオーバーフローを連発してデバッグが終わらない😭 ちなみにCFFフォント(AdobeのPostScript系フォント)の場合、maxpのヘッダのバージョンは0.5で必要なデータは、 uint16 numGlyphs