CreateScalableFontResource 関数は、スケーラブルフォント用のフォントリソースファイルを作成する。(Unicode)
CreateScalableFontResourceW fdwHidden, lpszFont, lpszFile, lpszPath
fdwHidden : [int] lpszFont : [wstr] 作成するフォントリソースファイルの名前を指定する null 終端文字列へのポインタ。既存のフォントリソースファイルを指定すると関数は失敗する。 lpszFile : [wstr] この関数がフォントリソースファイルを作成するために使用するスケーラブルフォントファイルの名前を指定する null 終端文字列へのポインタ。 lpszPath : [wstr] スケーラブルフォントファイルへのパスを指定する null 終端文字列へのポインタ。
(プラグイン / モジュール : gdi32.dll)
CreateScalableFontResource 関数は、スケーラブルフォント用のフォントリソースファイルを作成する。(Unicode) [戻り値] 関数が成功した場合、戻り値は非ゼロとなる。関数が失敗した場合、戻り値はゼロとなる。lpszFontRes が既存のフォントファイルを指定する場合、GetLastError は ERROR_FILE_EXISTS を返す。 [備考] CreateScalableFontResource 関数は TrueType フォントをインストールするアプリケーションで使用される。アプリケーションは CreateScalableFontResource を使ってフォントリソースファイル(通常は .fot 拡張子)を作成し、その後 AddFontResource を使ってフォントをインストールする。TrueType フォントファイル(通常は .ttf 拡張子)は AddFontResource で使用するために Windows ディレクトリの System サブディレクトリに置かれている必要がある。CreateScalableFontResource は現在、TrueType 技術のスケーラブルフォントのみをサポートする。lpszFontFile パラメータがファイル名と拡張子のみを指定する場合、lpszCurrentPath パラメータでパスを指定しなければならない。lpszFontFile パラメータが完全パスを指定する場合、lpszCurrentPath パラメータは NULL または NULL へのポインタでなければならない。lpszFontFile にファイル名と拡張子のみを指定し、lpszCurrentPath にパスを指定すると、lpszFontFile の文字列がこのリソースに属する .ttf ファイルとして .fot ファイルにコピーされる。AddFontResource が呼ばれると、オペレーティングシステムは .ttf ファイルが System ディレクトリ(ネットワークインストールの場合はメイン Windows ディレクトリ)にコピーされていると仮定する。CreateScalableFontResource を呼ぶときには .ttf ファイルがそのディレクトリにある必要はない。lpszCurrentPath パラメータがディレクトリ情報を含むためである。この方法で作成されたリソースには絶対パス情報が含まれず、任意のインストールで使用できる。lpszFontFile にパスを指定し lpszCurrentPath に NULL を指定すると、lpszFontFile の文字列が .fot ファイルにコピーされる。この場合、AddFontResource が呼ばれるときに .ttf ファイルは CreateScalableFontResource を呼んだ時点で lpszFontFile に指定された場所になければならず、lpszCurrentPath パラメータは不要となる。この方法で作成されたリソースにはパスとドライブへの絶対参照が含まれ、.ttf ファイルが別の場所に移動されると動作しない。 > [!NOTE] > wingdi.h ヘッダは CreateScalableFontResource を、UNICODE プリプロセッサ定数の定義に応じて自動的に ANSI 版か Unicode 版を選択するエイリアスとして定義する。エンコーディング中立のエイリアスとそうでないコードを混在させると、コンパイルや実行時のエラーにつながるミスマッチが生じることがある。詳細は [Conventions for Function Prototypes](/windows/win32/intl/conventions-for-function-prototypes) を参照。
| プラグイン / モジュール | gdi32.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の gdi32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_gdi32_gen2.hs |