▼SP4以前と以後の「MS ゴシック」を共存させる▼

WindowsNTにてService Pack 4以降を入れると、システムフォントとしても 使われている「MS ゴシック」が新しくなりますが、フォントの形が気に食わなくて フォントファイルだけを以前のに戻している人は
…少なくて、我慢してるor気にしない人の方が多そうだ(^^;

お上の助言 に従って単純にフォントファイル(msgothic.ttc)を入れ替えてしまうと、 新しいフォントに追加されている "MS UI Gothic" が使えなくなるので、 何かと問題が起こるかもしれません。 旧フォントと共存できれば一番しあわせです。 (2001.03)

[新旧MS ゴシックの共存画面]

$Id: g-both.html,v 1.6 2012-04-02 16:42:56+09 kabe Exp $


方法概要

これだけでわかった人は ごーごー。

失敗例

単純に 新msgothic.ttc を別のファイル名(例えば msgothi4.ttc)で %SystemRoot%\Fonts\ 以下に放り込んでも、 ファイル名の順序によって「MS ゴシック」が どっちのファイルから取られるかは変わってくるみたいです。 msgothi4.ttcだとこちらから取られるようですが、msgothix.ttcにすると 旧msgothic.ttcが採用されました。 たまに漢字だけ旧版、アルファベットは新版になったりします。

要するにフォント名と実際に使われるファイルは、レジストリの HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts の設定だけで決まってるわけではないつーことです。 (Fonts\ ディレクトリをエクスプローラで覗いたときの名前はここから採られるようですが)

方法

バイナリエディタで msgothic.ttc の名前部分を書き換える
フォントファイル中のフォント名は big endianのUnicodeで書かれています。 ので、「MS ゴシック」は
	FF2D FF33 0020 30B4 30B7 30C3 30AF
と格納されています。新msgothic.ttcには 「MS ゴシック」「MS Pゴシック」「MS UI Gothic」の3つのフォントが 格納されていますが、書き換えたいのは旧版と重なっている前2つです。 めんどうなのでバイト長が変わらないように別の名前に書き換えてしまいます。 一個所だけではないので検索をかけます。


[FF 2D FF 33 00 20 30 B4] [FF 2D FF 33 65 B0 30 B4]
「MS ゴシック」「MS新ゴシック」

てっとりばやく新しい名前のUnicodeを得るには、メモ帳に書いてUnicodeで 保存してからバイナリエディタで眺めるのがいいでしょう。 メモ帳はlittle endianで、頭に"FFFE"を書いてUnicodeだと示している ことだけ注意。("FEFF"にしてもbig endianにはなってくれんらしい)

フォントをインストールする
「正しい」方法が一番簡単です。つまり、エクスプローラで %SystemRoot%\Fonts\を開き、 「ファイル(F)」→「新しいフォントのインストール(I)...」から いじったmsgothic.ttc(のあるディレクトリ)を選びます。 ファイル名が既存のものとぶつかっている場合は 適当に改名して放り込んでくれます。

チェック
うまくいかない場合は再起動をかけてみてください。

[各フォントでの「ごみ箱」「キャンセル」「WindowsNT」]

これでドーピングしまくったSevice Pack 3 を使っていた人も 安心して SP6a にできますね(<ソレハオマエダケダ)


おまけ: 同じようなことを NT4SP3 のフォントに対して行えば、 Windows 2000 でも旧フォントが使えます。

[W2k上での新旧MS ゴシックの共存画面]


かべ@sra−tohoku.co.jp

当ページで使用しているGIFはLZWを使わずランレングス圧縮を用いているので、 UNISYS に $9,000 払う必要はありません