こんにちは、初心者rikaeigo2です。
自作アプリケーション専用に自作フォントを登録、使用できるようにする方法が全然わかりません。ビットマップを作ってそのまま張る方などの方が簡単でしょうか?
どなたか少しでも良いので教えて下さい。お願いします。
環境:WindowsXP、ActiveBasic4.23.00
自作フォントを登録、使用する
Re: 自作フォントを登録、使用する
> こんにちは、初心者rikaeigo2です。
こんにちは。理科英語の評価が2なんでしょうか...(笑)
> 自作アプリケーション専用に自作フォントを登録、使用できるようにする方法が全然わかりません。ビットマップを作ってそのまま張る方などの方が簡単でしょうか?
カッコいいロゴを表示する為にお気に入りのフォントを使いたいぐらいなら、ビットマップを張ってしまった方が断然簡単だと思います。
ノベルゲームを作りたくて、お気に入りのフォントを使いたいっていうなら、フォントを登録して使用した方が簡単です。
大したことのないアプリケーションがFontsフォルダにフォントを追加するっていうのは大胆かつ迷惑な話なので、アプリケーションが起動した時にシステムに追加、終了時にシステムから削除、という形を取るのが一般的なようです。
以下、想像で書いてるので動かないかもしれません。
忙しいので、ちゃんとしたサンプルコードとか参考になるサイトを提供できず申し訳ないです。
こんにちは。理科英語の評価が2なんでしょうか...(笑)
> 自作アプリケーション専用に自作フォントを登録、使用できるようにする方法が全然わかりません。ビットマップを作ってそのまま張る方などの方が簡単でしょうか?
カッコいいロゴを表示する為にお気に入りのフォントを使いたいぐらいなら、ビットマップを張ってしまった方が断然簡単だと思います。
ノベルゲームを作りたくて、お気に入りのフォントを使いたいっていうなら、フォントを登録して使用した方が簡単です。
大したことのないアプリケーションがFontsフォルダにフォントを追加するっていうのは大胆かつ迷惑な話なので、アプリケーションが起動した時にシステムに追加、終了時にシステムから削除、という形を取るのが一般的なようです。
以下、想像で書いてるので動かないかもしれません。
ウィンドウ作成時にフォントを追加 [ここをクリックすると内容が表示されます]
コード: 全て選択
' 指定されたフォントを追加
' フルパスでファイル名を指定
AddFontResource("E:\hoge\fuga\piyo\myfont.fon")
' フォントが追加されたことを他のアプリケーションに通知
SendMessage(HWND_BROADCAST,WM_FONTCHANGE,0,0)
ウィンドウ破棄時にフォントを削除 [ここをクリックすると内容が表示されます]
アプリケーションと自作フォントが同じディレクトリに存在するなら、GetModuleFileName()関数などを使ってファイルのフルパスを取得、分割してフォント名を付け足しちゃえば簡単にフルパスが取得できるんじゃないかと思います。コード: 全て選択
' 指定されたフォントを削除
' フルパスでファイル名を指定
RemoveFontResource("E:\hoge\fuga\piyo\myfont.fon")
' フォントが削除されたことを他のアプリケーションに通知
SendMessage(HWND_BROADCAST,WM_FONTCHANGE,0,0)
忙しいので、ちゃんとしたサンプルコードとか参考になるサイトを提供できず申し訳ないです。
> ちがいます。私の中学時代のあだ名が「理科英語」なのです。あせってIDを二つ登録してしまって「2」が付いたんです。^^;
あだ名! 「おーい、リカエイゴー」って、呼び辛そうですね...(笑)
> 私がやりたいことは、あまり使用しない文字コードに自作の記号フォントを割り当てるということです。私がMSXパソコンで、よく使っていた手です。(古っ^^;)WINDOWSは初心者なので、可能か?不可能か?すら、わかりませんのです。
たぶん文字コードにフォントを割り当てるっていうのは、先に示した通りのままだと思います。
「あまり使用しない文字コード」ということから、もしかすると一般的なフォント(MS ゴシックとか)を使いつつ、あまり使用しない文字コードに単一的に別のフォントを割り当てたいってことなのかもしれませんけど、それをするには一般的なフォントを包括する形で新しいフォントを作成し、割り当てて使うしかないと思います。
ですから、独自のフォントを使うのは簡単にできますが、あるフォントに単一的に新たなフォントデータを追加するのは見かけ上は可能ですが面倒臭い、ということになります。
「MSXパソコンで、よく使っていた手」というものが分からないので、やっぱり的外れな回答かもしれませんけど...。
あだ名! 「おーい、リカエイゴー」って、呼び辛そうですね...(笑)
> 私がやりたいことは、あまり使用しない文字コードに自作の記号フォントを割り当てるということです。私がMSXパソコンで、よく使っていた手です。(古っ^^;)WINDOWSは初心者なので、可能か?不可能か?すら、わかりませんのです。
たぶん文字コードにフォントを割り当てるっていうのは、先に示した通りのままだと思います。
「あまり使用しない文字コード」ということから、もしかすると一般的なフォント(MS ゴシックとか)を使いつつ、あまり使用しない文字コードに単一的に別のフォントを割り当てたいってことなのかもしれませんけど、それをするには一般的なフォントを包括する形で新しいフォントを作成し、割り当てて使うしかないと思います。
ですから、独自のフォントを使うのは簡単にできますが、あるフォントに単一的に新たなフォントデータを追加するのは見かけ上は可能ですが面倒臭い、ということになります。
「MSXパソコンで、よく使っていた手」というものが分からないので、やっぱり的外れな回答かもしれませんけど...。