<Return[A]><Top>

AddFontResourceEx

Declare Function Api_AddFontResourceEx& Lib "gdi32" Alias "AddFontResourceExA" (ByVal lpszFilename$, ByVal fl&, ByRef DESIGNVECTOR)

Declare Function AddFontResourceEx Lib "gdi32" Alias "AddFontResourceExA" (ByVal lpszFilename As String, ByVal fl As Long, ByRef DESIGNVECTOR) As Long

指定されたファイルからシステムへフォントリソースを追加する。

AddFontResourceEx 関数で追加されたフォントをプライベートとし、列挙不能にすることができる。

パラメータ
lpszFilename
    有効なフォントファイル名が入る、NULL で終わる文字列へのポインタを指定する。ファイル名は次のいずれかを指定する。

     ファイル名拡張子 ファイルタイプ                                                                                                              
    .fon フォントリソースファイルを指定する。
    .fnt Raw ビットマップフォントファイルを指定する。
    .ttf Raw TrueType ファイルを指定する。
    .ttc TrueType フォントコレクションを指定する。
    .fot TrueType リソースファイルを指定する。
    .otf PostScript OpenType フォントを指定する。
    .mmm Multiple Master Type1 フォントリソースファイルを指定する。.pfm および .pfb ファイルと共に使う。
    .pfb Type 1 フォントビットファイルを指定する。.pfm ファイルと共に使う。
    .pfm Type 1 フォントメトリックスファイルを指定する。.pfb ファイルと共に使う。

    情報が複数のリソースファイルに分かれているフォントを追加するには、abcxxxxx.pfm | abcxxxxx.pfb のようにファイル名を | で区切り、

    lpszFileName パラメータを使って指定する。
fl
    システムに追加されるフォントの特性を指定する。
    次の値が定義されている。

    値                                                       意味                                                                                                                    
    FR_PRIVATE

 

AddFontResourceEx 関数を呼び出したプロセスだけがこのフォントを使うことができる。そのフォントの名前とパブリックフォントが一致する場合は、プライベートフォントが選ばれる。プロセスが終了すると、システムは、そのプロセスが AddFontResourceEx 関数を使ってインストールしたすべてのフォントを削除する。
    FR_NOT_ENUM AddFontResourceEx 関数を呼び出したプロセスも含め、いずれのプロセスもこのフォントを列挙できない。

pdv
    DESIGNVECTOR 構造体へのポインタを指定する。そのフォントが Multiple Master OpenType フォントでない場合は NULL になる。

戻り値
    関数が成功すると、追加されたフォント数が返る。
    関数が失敗すると、0 が返る。

解説
    この関数により、そのフォントは他のプロセスからアクセスされずに、そのプロセスで使うことができる。
    Multiple Master OpenType フォントが追加され、DESIGNVECTOR 構造体が NULL の場合、そのフォントは軸値に既定値が指定され

    て追加される。
    アプリケーションが、AddFontResourceEx 関数を呼び出してロードしたフォントリソースを必要としなくなった場合は、

    RemoveFontResourceEx 関数を呼び出してリソースを削除する。
    この関数は、カレントセッションだけにフォントをインストールする。システムが再起動すると、フォントは存在しなくなる。再起動後もフォントが

    システムにインストールされるようにするためには、フォントをレジストリの一覧に追加する。