AddFontResourceW 関数 (wingdi.h)

AddFontResource 関数は、指定したファイルからシステム フォント テーブルにフォント リソースを追加します。 フォントは、その後、任意のアプリケーションでテキスト出力に使用できます。

フォントをプライベートまたは列挙可能としてマークするには、 AddFontResourceEx 関数を使用します。

構文

int AddFontResourceW(
  [in] LPCWSTR unnamedParam1
);

パラメーター

[in] unnamedParam1

有効なフォント ファイル名を含む null で終わる文字列へのポインター。 このパラメーターは、次のいずれかのファイルを指定できます。

ファイル拡張子 説明
。Fon
フォント リソース ファイル。
。Fnt
生ビットマップ フォント ファイル。
.ttf
Raw TrueType ファイル。
。Ttc
東アジアの Windows: TrueType フォント コレクション。
。Fot
TrueType リソース ファイル。
。Otf
PostScript OpenType フォント。
。うー ん
複数のマスター Type1 フォント リソース ファイル。 .pfm ファイルと .pfb ファイルと共に使用する必要があります。
.pfb
「1 フォント ビット ファイル」と入力します。 .pfm ファイルと共に使用されます。
。Pfm
「1 フォント メトリック ファイル」と入力します。 .pfb ファイルと共に使用されます。
 

複数のリソース ファイルからの情報を含むフォントを追加するには、 lpszFileName が文字列を指し、ファイル名が "|" で区切られた文字列を指します (abcxxxxx.pfm | など)。abcxxxxx.pfb。

戻り値

関数が成功した場合、戻り値は追加されたフォントの数を指定します。

関数が失敗した場合は、0 を返します。 拡張エラー情報は使用できません。

解説

システム フォント テーブルにフォントを追加または削除するアプリケーションは、オペレーティング システムのすべての最上位ウィンドウに WM_FONTCHANGE メッセージを送信して、変更を他のウィンドウに通知する必要があります。 アプリケーションは 、SendMessage 関数を呼び出し、 hwnd パラメーターを HWND_BROADCASTに設定することで、このメッセージを送信する必要があります。

アプリケーションで AddFontResource 関数を呼び出して読み込んだフォント リソースが不要になった場合は、 RemoveFontResource 関数を呼び出してそのリソースを削除する必要があります。

この関数は、現在のセッションに対してのみフォントをインストールします。 システムが再起動すると、フォントは表示されません。 システムを再起動した後でもフォントをインストールするには、そのフォントをレジストリに一覧表示する必要があります。

レジストリに一覧表示され、%windir%\fonts\ フォルダー以外の場所にインストールされているフォントは、セッションに読み込まれている限り、変更、削除、または置換できません。 これらのフォントのいずれかを変更するには、まず RemoveFontResource を呼び出して削除し、フォント レジストリ (HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts) から削除し、システムを再起動する必要があります。 システムを再起動すると、フォントは読み込まれなくなり、変更できます。

注意

wingdi.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして AddFontResource を定義します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー wingdi.h (Windows.h を含む)
Library Gdi32.lib
[DLL] Gdi32.dll

関連項目

AddFontResourceEx

フォント関数とテキスト関数

フォントとテキストの概要

RemoveFontResource

SendMessage