自作フォントを登録、使用する

ActiveBasicでのプログラミングでわからないこと、困ったことなどがあったら、ここで質問してみましょう(質問を行う場合は、過去ログやWeb上であらかじめ問題を整理するようにしましょう☆)。
返信する
メッセージ
作成者
rikaeigo2
記事: 23
登録日時: 2008年7月30日(水) 23:50

自作フォントを登録、使用する

#1 投稿記事 by rikaeigo2 »

こんにちは、初心者rikaeigo2です。
自作アプリケーション専用に自作フォントを登録、使用できるようにする方法が全然わかりません。ビットマップを作ってそのまま張る方などの方が簡単でしょうか?
どなたか少しでも良いので教えて下さい。お願いします。
環境:WindowsXP、ActiveBasic4.23.00
7
記事: 473
登録日時: 2005年5月31日(火) 18:51
お住まい: 新潟県
連絡する:

Re: 自作フォントを登録、使用する

#2 投稿記事 by 7 »

> こんにちは、初心者rikaeigo2です。
こんにちは。理科英語の評価が2なんでしょうか...(笑)

> 自作アプリケーション専用に自作フォントを登録、使用できるようにする方法が全然わかりません。ビットマップを作ってそのまま張る方などの方が簡単でしょうか?
カッコいいロゴを表示する為にお気に入りのフォントを使いたいぐらいなら、ビットマップを張ってしまった方が断然簡単だと思います。
ノベルゲームを作りたくて、お気に入りのフォントを使いたいっていうなら、フォントを登録して使用した方が簡単です。

大したことのないアプリケーションがFontsフォルダにフォントを追加するっていうのは大胆かつ迷惑な話なので、アプリケーションが起動した時にシステムに追加、終了時にシステムから削除、という形を取るのが一般的なようです。

以下、想像で書いてるので動かないかもしれません。 アプリケーションと自作フォントが同じディレクトリに存在するなら、GetModuleFileName()関数などを使ってファイルのフルパスを取得、分割してフォント名を付け足しちゃえば簡単にフルパスが取得できるんじゃないかと思います。

忙しいので、ちゃんとしたサンプルコードとか参考になるサイトを提供できず申し訳ないです。
rikaeigo2
記事: 23
登録日時: 2008年7月30日(水) 23:50

#3 投稿記事 by rikaeigo2 »

7さん、ありがとうございます。
>理科英語の評価が2なんでしょうか...(笑)
ちがいます。私の中学時代のあだ名が「理科英語」なのです。あせってIDを二つ登録してしまって「2」が付いたんです。^^;

本題の方ですが、言葉足らずですみません。
私がやりたいことは、あまり使用しない文字コードに自作の記号フォントを割り当てるということです。私がMSXパソコンで、よく使っていた手です。(古っ^^;)WINDOWSは初心者なので、可能か?不可能か?すら、わかりませんのです。
よろしくお願いします。
7
記事: 473
登録日時: 2005年5月31日(火) 18:51
お住まい: 新潟県
連絡する:

#4 投稿記事 by 7 »

> ちがいます。私の中学時代のあだ名が「理科英語」なのです。あせってIDを二つ登録してしまって「2」が付いたんです。^^;
あだ名! 「おーい、リカエイゴー」って、呼び辛そうですね...(笑)

> 私がやりたいことは、あまり使用しない文字コードに自作の記号フォントを割り当てるということです。私がMSXパソコンで、よく使っていた手です。(古っ^^;)WINDOWSは初心者なので、可能か?不可能か?すら、わかりませんのです。
たぶん文字コードにフォントを割り当てるっていうのは、先に示した通りのままだと思います。

「あまり使用しない文字コード」ということから、もしかすると一般的なフォント(MS ゴシックとか)を使いつつ、あまり使用しない文字コードに単一的に別のフォントを割り当てたいってことなのかもしれませんけど、それをするには一般的なフォントを包括する形で新しいフォントを作成し、割り当てて使うしかないと思います。

ですから、独自のフォントを使うのは簡単にできますが、あるフォントに単一的に新たなフォントデータを追加するのは見かけ上は可能ですが面倒臭い、ということになります。

「MSXパソコンで、よく使っていた手」というものが分からないので、やっぱり的外れな回答かもしれませんけど...。
rikaeigo2
記事: 23
登録日時: 2008年7月30日(水) 23:50

#5 投稿記事 by rikaeigo2 »

そうですか!一つ一つ変えるのは無理なんですね・・・。
やはり、ビットマップを張る方向でやってみようかな・・・と思います。
7さん、ありがとうございました。
返信する