2026年11月1日日曜日

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

 

エミュレータのハードディスクから Win へ曲線アウトラインフォントを抜き出し。これだと、FN0(非漢字)、FN1(第1水準)、FN2(第2水準)というようにファイルが分かれています。

角ゴシックの第1水準だと 723KB。0x240 から 0x3093 まで、文字フォントデータのインデックスが始まっていますね。インデックスから計算しても 2,965 文字です。これで「鎌」以降の漢字も作れるように。フォントデータは 0x3140 からですね。このへんは、バイナリをザッと見て分かります。単純な作りですから。


JIS第1水準 2,965 字を登録完了。これで、JIS第2水準と合わせて 6,355 字までフォント化。
あとは非漢字 1,407 字(登録せずに飛ばしている文字を含むので、これより少なくなる)をちゃんと登録できれば完成です。半角文字は無いと思うので、全角から適当に作ります。
角ゴシックができれば、丸ゴシックも作ります。漢字職人で明朝・教科書体・行書体は持っているので、これらは JG3 のデータからは変換しません。
自分は、あまり綺麗にプログラムを作っていません。フォントを変換できさえすればいいや…ってな感じです。いつもそんなんです。なので、あとで何かあっても分かりません。
本当は、プログラムで何をやったかをちゃんと書いて置いておけばいいのでしょうけど、それを置いといて後で使うか? と言われたらどうでしょうね?(・・? ちゃんとフォントを変換さえできれば、もう振り返る必要もほとんど無いとは思います。


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

 

とりあえず、分かっているところから先に作りましょうか…ということで、第2水準 3,390 字を。第2水準の文字を見ていると、我々はワケの分からん文字を駆使して文章を書いているんだよなぁ…φ(~~; って思います。

フォントデータがフロッピーのどこにあるか分からなければ、98エミュレータのHDからインストールしたフォントデータを引っ張れる?(ソフトとかで抜き出せる?)(・・? ちゃんとインストールできて、仮名なんかも表示できているわけだから、データは正常なはず。

JG3 の(明朝と)ゴシック体が弱々しいと書かれている理由は、この平仮名にあると思うので、こいつをもうちょいマシにデザインし直せば、そこそこ「読んでいて頼りない」とはならなくなるはず。

データのインデックスが適当なので、プログラムを作り直さないと。

2026年10月31日土曜日

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

 

JG3 の曲線アウトラインのゴシック体、MIN3_KG1 のファイルには「釜」までの 370 字が収録されている。で、ムリヤリ描かせると、その次の「鎌」は金偏までが描かれる。

ということは、次のファイルとこのファイルをマージ(合体)させなければいけないということか(、、; 面倒くせー。

ファイルのデータは 0x133fff までしかないのに、フォントの入っている番地は 0x1c900b からとか記述されている。はははwww

KG2.HDM には、JIS第2の 3,390 字が収録。ということは、残りの文字はどこに?(~~?

人生初のMRI。

 昨日はMRIを撮りに病院へ。医療費6,660円、レントゲン撮った町医者と合わせて1万円。

頸部脊柱管狭窄症だったっけ、頸椎の間が狭くなって、それが体を動かす支障になると。首や背中の骨は全身に影響があるので怖いです。

年取ると体にガタが来ますな。困ったもんだ(--;

今、なにかと(悪い意味で)話題の
多田神社の近くにある病院

このCD-Rに、MRIで撮った画像が収められています。「MR 188枚」って書かれていますけど、裏を見るとCD-R 700MBのうち200MBぐらいしか使われていません。

ええ金額やな 約7千円…

「でかい機械やな、これ撮ってもらうのに、なんぼかかんねやろ」と思いながら。自分の場合は首の単純撮影なのでこの金額ですが、他の部位でもっと面倒なことをしなければいけない場合は1万を超えるってネットに書かれていますな。
MRI撮影中は半分寝ていました。「20分ぐらいかかります」という当初の説明だったので、頭の中で時間をカウントしつつ。「工事現場のような音がします」とヘッドホン装備状態(音楽がかかっている)でしたが、工事現場感は親知らずの抜歯の方が強かったですな。あれはダイレクトに「今、歯を砕いている!」という感じでしたから。毛布も掛けられましたが、撮影場所が首ということで、そんなに奥まで機械の中に入りませんでした。閉所恐怖症の人は事前に薬を飲むらしいですが、そんなの寝てたら分かりません。

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の文字が横転。