2026年10月30日金曜日

JG3 の曲線アウトラインを展開してフォント化・その8。

 JG3 の明朝・ゴシック、「骨格が弱々しい」という評価だけど、漢字が使えそうなら、コレに合わせた仮名を自作してみてもいいかも。弱々しいという印象を与えてしまう原因の大部分が、仮名のデザインだと思っていますから。

ベジェになって線の品質は格段に上がりましたが、それがデザインにあまり活かされていません。好意的に捉えれば、データ量を少なくする・描画を速くするためにこうしている…とも考えられなくはないですが、ゴシックの点や緩やかな線が直線で描かれ、ハネる部分なども最低限の処理しかされていないデザインは、シンプル過ぎるというか記号的というか。明朝もハライの部分なんかが鋭く尖っていて、短く見えてしまうみたいなところがあります。明朝の仮名も教科書体まんまなので、これもちゃんと使ってみるなら自分で新たにデザインするのもひとつでしょう。

そりゃ、JG2 の秀英をベジェで作り直してくれたら、それが一番良かったのになって思います。まぁ、今では秀英のフォントはありますが。

JG のソフト自体は WISYWYG で DTP の実現など先進的なことを色々とやっていて、当時としてはもの凄かったのですが、フォント環境はまだまだ実験的という時代でしたな。


JG2 は直線アウトラインなので、ご覧の通り曲線部分がガッタガタ。でも使いやすいフォントだったので、これをベジェで作り直してくれたらなぁ…って誰もが思うはず。

2026年10月29日木曜日

JG3 の曲線アウトラインを展開してフォント化・その7。

 

自動修正で完全なベジェデータにできました

自動修正できました。
(1)データを順番に見ていって、ノードから3つポイントが続いている ⇒ 3つ目をノードにする
これだけでOKです。

キレイにベジェデータとして使えるように。これで、JG3 の曲線アウトラインを完全に理解したと言えますね。

あとは、JIS第2水準まで7000字自動登録できるようにすれば、晴れて OpenType にできます。ここまでで9割がた完成ですね。ラストスパートを残すのみ。

JG3 のフォントのうち、明朝・教科書体・行書体は漢字職人で持っていますので、あとはゴシックと丸ゴシックが揃えば、JG3 のアウトラインフォント5書体を Windows で完全再現ということになります。ただまぁ、こんなフォントをあえて使うかどうかですよね。

フォント名は「新ゴシック体」「新丸ゴシック体」でしょうけど、モリ●ワの新ゴとゴッチャになりそうなので、漢字職人に倣ってシャレオツな名前を付けましょうか? ゴシックを「太秦」、そして丸ゴシックを「有栖」とか(笑)

JG3 のこのゴシックと明朝のフォント、「Oh! X」という雑誌には「骨格が弱々しいというか、読んでいて頼りない。おまけフォントという感が強い」と書かれています。私も全くもってそう思います。(ついでいうなら、JG2 のフォント(秀英)は「直線アウトラインで品質も悪いが、デザインが良く、注目に値する。なぜこれを育てなかったのか」、JTCウィンは「癖が強い。自分は嫌いじゃないが、好き嫌いが分かれる」。私もそう思います。モリサワの「じゅん」や「ミヤケアロー」などもそうですが、三宅康文さんのデザインするフォントはどれも同じような骨格で癖が強いです。JTCウィンもそうですね)

とりあえず、94文字を自動登録。…うまくいったっぽい?(~~?

まだ、何かあるか分からないけど(。。;

JG3 の曲線アウトラインを展開してフォント化・その6。

 JG3曲線アウトライン、種別の格納方法はデータ的にはこうなのでしょう。なのでフォント化できるよう修正ですが、頭悪いのでプログラムは苦手です。すぐにはサクッとできません。のんびりやります。

キャッスルの時もそうでしたが、手元に取っておいてある大昔の記事が気になって。なんとかしたいものです。

キャッスルは疑問・気になっていたこと(ログイン最優秀作品をプレイしたい)が完全解決したので、満足しています。

どこまで、ロストテクノロジーにこだわるかでしょうな。JG3は変な・素直じゃないデータ構造ですな。


人間が手間をかけないように、JG3の種別情報を全自動でフォントとして表示・作成できるような状況に直せるか? というルール作り。

とりあえず10文字ぐらいをスプラインで表示させてみて、どういう方法で直していけばいいかを検討。

(1)データを順番に見ていって、ノードから3つポイントが続いている ⇒ 3つ目をノードにする
(2)ポイントが5個、8個、11個…連続している(3で割った余りが2)の時 ⇒ 間違いなく3個目、6個目、9個目…(3で割れる数)がノードになる
(3)描く方向が変わる時は、変わり目がノードになることが多い(当てはまらない時がある)
(4)ノードと同じX or Y座標のポイントはノードになることが多い(これも必ずしも当てはまらない)

なので、この(3)と(4)の時に、確実にノードとポイントを区別できるようにしなければいけないわけです。このあたり、ちょっと考え中。人間が見たら明らかに分かることを、機械が分かるように指示しなければいけません。


せっかくのベジェデータなのに、それをうまく活かす作りになっていないのが困るんですよね。でも JG3 はこれで処理できていたわけですよね?(’’?

2026年10月27日火曜日

体の不調の原因は首(頸椎)からもきているのか。

 今日は町医者の整形外科へ。ひとつは3年前からあるガングリオン、そしてもうひとつは5年以上前から気になっていた、主に右手の震えと脱力感(手に力が入らない)。これでGBAを落として壊したこともあって、QOLの低下とともに日常生活にも影響が出ている状態…ということで。

まずガングリオンですが、一応注射器で吸い出してもらったものの、どうやら2つあるようで、大きい方が残って何も解決していません(--; また来週行くから、その時にもう一度。

で、もうひとつの症状ですが、どうも首がおかしい(凝っているというか痛い)ということで、レントゲンを撮ったら頸部脊柱管狭窄症だっけ? という病名が出てきて、「首は重い頭を支えるから、どうしてもこうなるねー」とか言われ、さらなる検査が必要とのことで、金曜日に大きな病院にMRIに行くことに。

日常の体の不調は、首からも来ているのか…(、、; 首や肩がガッチガチに凝っていると思っていたら、実は病気というか症状だったと。頸椎はどうしたって体を動かすのに影響が出ますね。あと、これの人は睡眠障害が出ると。それも困ります(--;;

更年期障害もあるのでしょうけど、頸椎の不調となると、ちょっとキツい。どうなる、私の身体。

JG3 の曲線アウトラインを展開してフォント化・その5。

 


多分、漢数字の「一」はこうですね。

手でデータを修正したら、エラー無く読めた

この、座標の種別情報を自動で修正させようと思ったら、「曲線のところの頭1ビットが必ず1になっていること」「愚直なまでのパスの取り方をしていること」が条件になるかと。ベジェのパスなんて、描こうと思ったら適当な描き方ができてしまいますから。その上で、
☆3つ以上ポイントが続くと× ⇒ 必ず2つずつのポイントがノードに挟まれる形に
しなければいけない。ということは、
★X or Y座標が同じで、どちらかがポイント ⇒ 両方ノードに
★描く方向が変わる時は、変わり目がノード(になるはず)
★3つポイントが並んでいる時は、どちらかが必ずノードになる
このあたり。これをどうプログラムで判断するか。

2026年10月26日月曜日

JG3 の曲線アウトラインを展開してフォント化・その4。

 


新たな情報を試してみたところ、「亜」と「唖」は表示できました。しかし、その次の曲線が含まれた文字などがフラグエラーになります。…フラグエラー? ノートかポイントかがおかしい?(~~? 何やフラグって??

というわけで、また新たな問題が。パッと見ただけでは、何がフラグエラーなのかが分かりません。困ったものです。


ベジェではなく、スプラインで描かせてみました。すると、〇で印をつけたところはポイントではなくノード(端点)にならなければいけないところですよね。
つまり、ポイントかノードかの情報が間違っていると。ベジェ曲線だと、ノードとノードとの間にポイントが2つ挟まるのが普通です。…あれだなぁ、ポイントが3つ続いた場合は3つ目をノードに修正するようなプログラムにしてみる? あぁ、でもそれ難しいか。要はベジェの情報が付いている点でも ★X or Y座標が同じ時はノード ★描画方向が変わる時(左下に向かって描いているのに右下に変わったなど)は変わった直前がノード、その3つ前後もノード みたいに。
「娃」の座標データを眺めてみたところ、頭1ビットがX座標もY座標も同じようになっています。これがベジェか直線かの情報だ…というわけですが、普通に考えれば、ノードかポイントかの区別かな? と思うんですよ(・・;

2026年10月25日日曜日

JG3 の曲線アウトラインを展開してフォント化・その3。

 

JG3 の曲線アウトライン、描画の結果を眺めていると、左上部分の描画の座標がひっくり返っている感じなのですね。

なぜ、こうなるか? 何かが足らない。何だろう?

今のところの座標の割り出し方はこうなので、3バイトのデータの真ん中の2バイト目が怪しいということに。

実は座標は2048メッシュじゃなくて1024メッシュなのでは? と思ったり。

PhotoCraft で角丸の囲みやキャプを入れたけど、縦中横に今のところ対応していないので12の文字が横転。

2026年10月24日土曜日

フォントの解析、個人的には

丸漢(昔の Mac のやつですよね?)はさっぱり分からなかったですし、そこまで興味無し。

芦屋48も簡単に2値で展開を試みましたが、さっぱり分からないのでパス。どうせ展開できたところでナ■ルっぽいものが出てくるんでしょ?(・・? ということで。芦屋24はレシートプリンタでたまに使いますが。

2026年10月23日金曜日

JG3 の曲線アウトラインを展開してフォント化・その2。

 

JG3の曲線アウトラインフォントを、知り得た知識によって解析を試みたものの、一見座標っぽいのだけど、展開してみると字の形にならない。一定の太さの線は出来上がるのだが(~~;

予想としては「亜」の形になると思っている。でも、どうしたらいい? 何が間違っている??

でも、グッチャグチャではなく、何か惜しいような気もする。また、上下バイトが逆とかそんな感じ?(・・? 何とか字を描こうとしていることは伝わる。

98のマシン語だと、どうすれば処理しやすいか? みたいな観点から考えないといけない?(’’?

~~~~

プログラムを作ってやったことは

(1)まず、JGのデータから必要な部分を抜き出す(テーブルで分かる、文字のデータの開始アドレスから次の開始アドレスの手前まで)

(2)2バイトの上下が逆なのを正す

(3)3バイトずつ処理、3バイトのデータを12ビットずつ(X座標、Y座標)に分ける

※この座標データの頭1ビットが「ベジェの端点(ノード)か方向点(ポイント)か」を識別するサインになっているので、座標として使うのは下位11ビット

(4)そうして座標データにしたものを画面に描画する

 座標が 0xfff, 0xfff の場合はパーツを描き終わり、それが2回続くと文字を描き終わる

でも、何か間違っているんですよね。ひょっとしたら、理論が正しくて、私のプログラムが単純に間違えている…という可能性も大いにありますが。


JG3 の曲線アウトラインを展開してフォント化・その1。

 

JG3の曲線アウトラインフォント、ゴシックの最初の文字(おそらく「亜」)のデータを座標データにしたところまで(黄色の部分)。fffがパーツの区切りなので、最初に外側を描いて、あとで中を5つくりぬいていると。

これを表示してみたらいいわけだけど、それはちょっと待ってね