トップ 一覧 置換 検索 ヘルプ RSS ログイン

Windows でフォントをインストールせずに使うの変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
!!!Font Load-Unload
http://www.gigafree.net/system/install/fontloadunload.html
http://www7.ocn.ne.jp/~otoku/free-s-file-31.htm

Font Load-Unload を使えば、インストールせずにフォントのロード、アンロードができる。

!!!自作する
コマンドラインでロード、アンロードしたいとか、自作したい場合は
{{code Java,
#include <windows.h>
#include <wingdi.h>

int main(int argn, char *args[]){
  if (argn < 2){
    printf("loadFont.exe (add or remove) font\n");
    return;
  }
  
  int result = 0;
  if (strcmp(args[1], "add") == 0){
    result = AddFontResource(args[2]);
    // result = AddFontResourceEx("Consolas_IPAG5_2.ttf", FR_PRIVATE, NULL);
  } else if (strcmp(args[1], "remove") == 0) {
    result = RemoveFontResource(args[2]);
    // result = RemoveFontResourceEx("Consolas_IPAG5_2.ttf", FR_PRIVATE, NULL);
  } else {
    printf("loadFont.exe (add or remove) font\n");
    return;
  }
  
  SendMessage(HWND_BROADCAST, WM_FONTCHANGE, 0, 0);
  printf("edit font %d\n",result);
}
}}
みたいな感じ。
コンパイルは
 gcc loadFont.c -mno-cygwin -lgdi32
とか
 gcc loadFont.c -D_WIN32_WINNT=0x0500 -mno-cygwin -lgdi32

 AddFontResource
 RemoveFontResource
で、フォントのロードとアンロードをする。
 SendMessage(HWND_BROADCAST, WM_FONTCHANGE, 0, 0);
で他のアプリケーションへ通知する。
一時的にロードするだけなので、Windowsにインストール等はしない。
(Windowsを再起動すると、フォントがリストから無くなっている)

{{ref loadFont.exe}}

{{category2 OS,Windows}}
{{category2 プログラミング言語,C}}