Windows.FAQ - Windows9x/Me フォントトラブル対処法とフォントの限界 winfaq logo
Windows9x/Me のフォントに関して発生する主なトラブル対処法と、フォント数の限界は次のようになっています。

■フォントキャッシュの破損

フォントトラブルの多くはフォントキャッシュファイル (ttfCache) の破損で発生します。
ttfCache が破損すると以下のような症状が発生します。

ttfCache ファイルは削除すると次回起動後に再作成されるので、このファイルを削除することで問題を解消できます。

とにかく早くトラブルを解決したい場合、以下のどちらかのファイルをダウンロードして実行 (ダブルクリック) してください。
次に Windows を起動した時にフォントキャッシュファイルが削除されます。
(IE5.01 を導入していない Windows95 や、意図的に WSH を削除した Windows98/Me の場合のみ、bat ファイルを使うといいでしょう。)

  Download  vbs rmttfcache.vbs bat rmttfcache.bat

上のファイルが実行できない (したくない) 場合は、以下の手順を実行してください。

  1. [スタート]−[検索]−[ファイルやフォルダ] をクリックします。
  2. 名前に ttfCache と記入し、「検索開始」ボタンをクリックします。
  3. 検索されたファイルを削除します。
  4. [スタート]−[Windows の終了] で Windows を再起動します。

ttfCache が検出されない場合は、システムファイルを表示しない設定になっているので、以下の作業を実施してから再度検索して下さい。

  1. エクスプローラを起動します。
  2. メニューバーの [表示]−[フォルダオプション] (もしくは [ツール]−[フォルダオプション])をクリックします。
  3. [表示] タブをクリックし、「○すべてのファイルを表示する」にチェックします。
  4. 「OK」をクリックし、フォルダオプションを閉じます。

手動で ttfCache ファイルを削除しても、メモリー上にある破損したキャッシュが書き戻されてしまい、回復に失敗することがあるので、MS-DOS モードで起動してから削除するか、一度 Safe モードで起動すると確実に再作成できます。(Safe モードで起動するとキャッシュファイルは自動的に再作成されます。)
この方法を 1 回実行してもトラブルが解消しない場合は、2、3 回実行してください。

・MS-DOS モードで削除する方法

  1. [スタート]−[Windows の終了] から「MS-DOS モードで再起動する」を選択して「OK」をクリックします。
  2. コマンドプロンプトで以下のコマンドを実行します。
    C:\WINDOWS>attrib -h ttfCache
    C:\WINDOWS>del ttfCache
    C:\WINDOWS>exit

・Safe モードで起動する方法

  1. PC の電源を投入します。
  2. メモリーカウントが終わったあたりから Ctrl キーを押し続けます。
  3. スタートアップメニューが表示されるので、「Safe Mode」を選択します。
  4. Windows が Safe モードで起動したら、Windows を再起動します。
    (Safe Mode で起動時に特に実行する作業はありません。)
ここまでの作業を行っても、最大化ボタンや最小化ボタンが化けたままの場合、Marlett フォントが削除されているか、破損している可能性があります。
フォントフォルダに Marlett フォントが見つからない場合、次の手順で再インストールすることができます。
  1. [スタート]−[ファイル名を指定して実行] で SFC を起動します。
  2. 「インストールディスクからファイルを1つ抽出する」を選択し、Marlett.ttf を指定して「開始」をクリックします。
  3. 復元元として Windows98 CD-ROM の Win98 フォルダを、保存先として C:\ を指定して、「OK」をクリックします。
    (メーカー製 PC で Windows98 CD-ROM がない場合は、復元元として C:\Windows\Options\Cabs フォルダを指定します。)
  4. [スタート]−[設定]−[コントロールパネル] から「フォント」フォルダを開きます。
  5. [ファイル]−[新しいフォントのインストール] をクリックします。
  6. 「フォルダ(D)」で C:\ をダブルクリックすると、フォントの一覧に Marlett (TrueType) が表示されるので、これを選択して「OK」をクリックします。

HINT:ttfCache ファイルが破損するのを防ぐには

Windows は、TrueType フォントの表示を高速化するために、展開済みのフォントデータを ttfCache ファイルに保管します。
しかし、日本語版 Windows は、英語版に比べて使用される文字の数が多いため、あまり有効な効果は得られません。ですから、必要最小限の英数フォントが展開された後に、ttfCache ファイルに書き込み禁止属性をつけることで、キャッシュの破損を防ぐことができます。

  1. 上の記述を参考にして ttfCache ファイルを検索します。
  2. 検索された ttfCache ファイルを右クリックして [プロパティ] をクリックします。
  3. 「読み取り専用(R)」にチェックを入れて、「OK」をクリックします。

■フォントフォルダの破損

フォントフォルダに問題があると、フォントのインストールができなくなります。
例えば、フォントフォルダのメニューバーから [ファイル]−[新しいフォントのインストール] がなくなります。
多くの場合、Windows\Fonts フォルダのシステム属性が解除されているだけなので、以下の作業で回復させることができます。

  1. [スタート]−[Windows の終了] から「MS-DOS モードで再起動する」を選択して「OK」をクリックします。
  2. コマンドプロンプトで以下のコマンドを実行します。
    C:\WINDOWS>attrib +s fonts
    C:\WINDOWS>exit

また TweakUI の [修復] タブからもフォントフォルダを修復できますので、TweakUI が導入されている場合はこちらの方が簡単でしょう。

■フォントレジストリの破損

インストールされたフォントはレジストリに登録されます。
レジストリのフォント関連キーが破損すると以下のような症状が発生します。

このような症状が発生した場合、次の作業でレジストリを修復して下さい。

  1. [スタート]−[ファイル名を指定して実行] から fontreg を実行します。
    (表面的には何もおきません)
  2. コントロールパネルの [フォント] を開きます。
  3. フォントフォルダの [ファイル]−[新しいフォントのインストール] をクリックします。
  4. フォルダで Windows\Fonts をダブルクリックします。
  5. 「すべて選択」ボタンをクリックし、「OK」をクリックします。

■Windows95/98 TrueType フォント数の限界

レジストリの限界

Windows9x の1つのレジストリキーサイズは最大 64KB です。レジストリの Fonts キーはシステムに登録された全てのフォント名とフォントファイル名を格納するために、マイクロソフトの試算では 1000 から 1500 程度のフォントが限界とされています。
実際には HKEY_LOCAL_MACHINE \Software \Microsoft \Windows \CurrentVersion \Fonts キーをエクスポートし、エクスポートファイルサイズで現在のおおよその目安を得ることができます。

GDI (グラフィックエンジン) の限界

GDI はフォントファイル名すべてを格納するエリアとして 10KB を保持しています。
フォントファイル名の長さの平均を 10 バイトと仮定すると、約 1000 のフォントが限界になります。


トップページに戻る