FONTについて

HyperCardでは自作フォントを使う事が出来ます。スタック内にリソースとしてフォント情報を持たせればいいのです。ただし、バグを出さないようにするには工夫が必要です。僕の知っている情報をまとめてみました。



FONTリソースのみ

 MakeFont XCMDやResEditで作られたフォントはこれに該当します。これでも、たいていの環境で動くはずです。MacOS8以降ではサポートされない場合があります。
 OS8より前:使用可能
 OS8.6:使用不可
 OS8以降またはOS8.6+FontManagerUpdater:一部環境では使用不可
作品例:T-mo.氏の「SilverSeed」


FONTリソース+壊れたFONDリソース

 FontManagerUpdaterを使用していないOS8.6上でResEditでFONTリソースのみのスタックを開いた場合、壊れたFONDリソースが付加されます。また、KATOH氏作のHCFontConvertor1.3以前でも壊れたFONDリソースが付いた状態になります。この状態で、OS8.6上や仮想メモリを使用していないマシン上では動作しますが、それ以外の環境ではタイプ2のエラーがでます。
 OS8より前:仮想メモリがOFFなら使用可能
 OS8.6:一部環境では使用不可
 OS8以降またはOS8.6+FontManagerUpdater:仮想メモリがOFFなら使用可能、ただし一部環境では使用不可


FONTリソース+正常なFONDリソース

 ResEditで正常なFONDリソースを自作すれば、壊れたFONDリソースは付かない事でしょう。ただし、FONDリソースを自作するには多少の知識が必要です。
 OS8より前:使用可能
 OS8.6:使用不可
 OS8以降またはOS8.6+FontManagerUpdater:一部環境では使用不可
作品例:創基氏の「水道管ゲーム」や「倉庫番」


NFNTリソース+正常なFONDリソース

 一部機種ではFONTリソースではフォントが表示されないのでNFNTリソースを使う必要があります。ResEditのHexEditorでFONTリソースの内容をそのままコピー&ペーストするか、HCFontConvertor1.31を使用するといいでしょう。スタック整理をしたときにフィールドに設定しておいたフォントが違うものになるというトラブルがあります。スタック整理時に表示されているフォントなら大丈夫だったか、表示されていないフォントだったら大丈夫かという話もありました。う〜ん、謎です。
 OS8より前:使用可能
 OS8.6:使用不可
 OS8以降またはOS8.6+FontManagerUpdater:使用可能

HyperCardそのものに使われています。


NFNTリソース+FONTリソース+正常なFONDリソース

 効果があるのかどうかはわかりませんが、スタックのサイズは増えます。
作品例:KATOH氏の「BreakManLite」


MakeFont XCMDの入手方法

 加藤十十/三井洋子共著、学研「HyperCardでゲームを作ろう」に付属していたもの。本自体は入手困難だが、このXCMDを利用したFONT作成支援スタックは検索すれば見つかるはず。


HCFontConvertorの入手方法

 ▼KATOH氏のホームページからダウンロード可能。

 ▼直接ダウンロード


FontManagerUpdaterの入手方法

 MacOS8.6ではFONTリソースを使ったスタックを使用するとエラーが発生します。
 下記のURLより「Font Manager Updater」を入手してバグを解消して下さい。
 ▼http://www.apple.co.jp/ftp-info/reference/font_manager_update.html


あとがき

 うちのスタックにもフォントを使ったものがあるのですが、全部FONTリソースだけみたいです。NFNT化しなきゃいけないな、、、。

▲研究室の入り口へ