<Return[A]><Top>

AddFontMemResourceEx

Declare Function Api_AddFontMemResourceEx& Lib "gdi32" Alias "AddFontMemResourceEx" (pbFont  As Any, ByVal cbFont &, ByRef pdv As DESIGNVECTOR, ByRef pcFonts&)

Declare Function AddFontMemResourceEx Lib "gdi32" Alias "AddFontMemResourceEx" (pbFont As Any, ByVal cbFont As Long, ByRef pdv As DESIGNVECTOR, ByRef pcFonts) As Long

メモリイメージからシステムへフォントリソースを追加する。

パラメータ
pbFont
    フォントリソースへのポインタを指定する。
cbFont
    pbFont パラメータで指されるフォントリソースのバイト数を指定する。
pdv
    DESIGNVECTOR 構造体へのポインタを指定する。フォントが Multiple Master OpenType フォント以外の場合は NULL を指定する。
pcFonts
    インストールされているフォント数を示す DWORD へのポインタを指定する。

戻り値
    関数が成功すると、追加されたフォントのハンドルが返る。このハンドルは、システムにインストールされたフォントを一意に識別する。関数が

    失敗すると 0 が返る。

解説
    この関数により、アプリケーションはドキュメントまたは Web ページに埋め込まれているフォントを取得することができる。

    AddFontMemResourceEx 関数によって追加されたフォントは呼び出しを行ったプロセスに対して常にプライベートであり、列挙はされない。
    メモリイメージには2つ以上のフォントを入れることができる。この関数が成功すると、pcFonts パラメータは DWORD を指す。DWORD の

    値は、この呼び出しの結果システムに追加されたフォント数である。たとえば、アジア系フォントの縦書きおよび横書き用書体が追加された

    場合、この値は 2 になる。
    pbFont パラメータで指されたメモリをシステムが複製しているため、関数が成功すると呼び出し側はメモリを解放することができる。インストー

    ルされたフォントを削除するには、RemoveFontMemResourceEx 関数を呼び出す。ただし、プロセスが終了する際、 

    RemoveFontMemResource 関数を呼び出さなくても、システムはフォントをアンロードする。