フリーゲーム・フリーソフトの開発過程を記録していく、TDtechnic公式ブログです。製品はカテゴリの「ダウンロード場」からダウンロードして頂けます。
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

今晩は。放棄してませんよ。これでもコメントは毎日のように確認しています。
記憶ではフォントに行書体を採用していたのですが、致命的な弱点を見つけました。そう、行書体フォントがインストールされていないパソコンではMS ゴシックとかになってしまうのです。まあ当たり前といえば当たり前なのですが、私は「HGS行書体」は殆どのPCにインストールされているものだと勘違いしていました。TDtechnicメンバーのPCでテストすると見事なゴシック体が。このままでは駄目だという事で解決策を練る事にしました。
まあ一番簡単なのはビットマップフォントですが、生成が面倒なのとどうも拡張性に欠ける点で論外としました。その他に先ず考えたのはフォントの強制インストール。しかしプログラムから簡単にインストールする方法が見つからず、またクライアントのシステムを勝手にいじる事になり、しかもアンインストールも容易でないので見送り。次に思いついたのは、インストーラによる自動インストール。しかしたかが個人ゲームでインストールなど大袈裟ですし、やはりアンインストールの問題から却下。最終的にフォントファイルを動的に読み込む事にしました。
しかしこれも手こずりました。先ず、記憶はC#ですからPrivateFontCollectionというちょうどいいクラスが有るのですが、新しい.Net Frameworkの仕様を見ると「Windows 2000 よりも古いオペレーティング システムではサポートされません」という微妙な表記。私達にとってWindows2000で動くかどうかというのは重要な問題です。厳密には「より」ならWindows2000では動くはずですが、結構混用されてますから一抹の不安が残ります。また、記憶で採用している.Net Framework 1.1の仕様ではそのような表記は見られませんでしたが、先程の表示の事を考えるとあまり信用出来ません。そこで他の方法を調べると、WINAPIの似たような機能はWindow2000で動くと断言されていました。ではこれをC#から呼びだそう、としたのですがこれはこれで実行しても効果がありませんでした。ついにはWINAPI側でフォント生成までしてからC#に渡したのですが、今度は生成したフォントがTrueTypeでないと判断される(C#のFontクラスはTrueType以外基本的に非対応。ちなみに渡したのは確実にTrueTypeフォントです)という謎仕様。仕方ないのでPrivateFontCollectionで実装して実際に学校で動作確認するという二度手間。結局動いたので良かったんですがね。でもこのフォントの問題だけでかなりの時間を取られました。皆さんもフォント関連のプログラミングをする際は心して取り組んで下さい。では失礼します。

追伸 今回フォントについて調べてて思ったんですが、結構こういう情報って少ないんですね。掲示板とか、知恵袋とか。環境依存セずに特定のフォントを打ちたい、という人は沢山居そうなものですが。
今後本文中に明らかな間違いを見つけた場合、完全に修正してしまう事にしました。その際、パート番号は今回のように小数点以下で更新します。
関連記事

[2013/05/08 19:34] | 記憶
|

こんにちは
蒼き狗と紅き狐
プログラミング大変そうですね。

というより学校のPCはwindows2000なんですね!
今どき珍しいというか、、、古くないですか?(笑)
努力が伺われます!

フォントは、むしろMSゴシックでいく方向ではダメなんですか?


宮田司郎(仮名)(管理人)
蒼き狗と紅き狐 様、コメント有難う御座います。
ええ、古いですよ。今やシェアは0.35%です。古い上に学校のPCですからロックされていて更新も出来ず、何をするにも今の情報が役に立たず非常に苦労しています。
殆どのサイトの情報は「大抵の場合動く」というもので、学校のPCは基本的にその「大抵」に入らないんですね。ですから結局仕様書を探し(これすら困難)、自分で一から作らないと動かないのです。
でも、「Windows2000だから」嫌でも学ばざるを得なかった学ばせて貰えた知識は計り知れません。そういう意味では、偶然にもこの学校のPCが2000であったことに感謝しなければなりませんね。
フォントは、和ホラーゲームということもありやはり行書にこだわりたいですね。今回の実装は割と安定していますから、このまま製品にも採用すると思います。

こんばんは
蒼き狗と紅き狐
そうなのですね。
今どき珍しい学校なんですね。

それだけこだわっていただければ、作られるゲームも本望でしょう(笑)

ちなみにお聞きしますと、今はwindows2000専用で作ってみえるようですが、高校を卒業なさってから自宅のPCや最新版で起動することは可能なのですか?

PC初心者の質問で申し訳ないのですが、、、。

>>蒼き狗と紅き狐 様
宮田司郎(仮名)(管理人)
基本的にパソコンの世界は「後方互換」で、「古いPCで動けば新しいPCでも動く」という法則が有ります。実際に記憶はWindows7で動作確認しています(というか、記憶を開発しているこのPCがWindows7なのです)。

但し、確かにこの法則通りのソフトは多いですが、お察しの通り新しいPCでは動かないものもよくあります。実は、記憶にもWindows8で起動できなかった事例が有ります。

以上から、結論は「可能性は高いが起動できなくてもおかしくはない」となります。

こんにちは
蒼き狗と紅き狐
回答ありがとうございました。(こう書くと某知恵袋みたいですが 笑)

そうなんですね。
受験中ということも大変ですね。

実は自分も今(今更ということもありますが)、新しいことを始めようと思っていて、宮田司郎さんに後押しされています。

お互いに一番忙しい時ですが頑張りましょうノシ

コメント:を閉じる▲
コメント:
この記事へのコメント:
こんにちは
プログラミング大変そうですね。

というより学校のPCはwindows2000なんですね!
今どき珍しいというか、、、古くないですか?(笑)
努力が伺われます!

フォントは、むしろMSゴシックでいく方向ではダメなんですか?
2013/05/12(Sun) 11:02 | URL  | 蒼き狗と紅き狐 #bWaRpPp2[ 編集]
蒼き狗と紅き狐 様、コメント有難う御座います。
ええ、古いですよ。今やシェアは0.35%です。古い上に学校のPCですからロックされていて更新も出来ず、何をするにも今の情報が役に立たず非常に苦労しています。
殆どのサイトの情報は「大抵の場合動く」というもので、学校のPCは基本的にその「大抵」に入らないんですね。ですから結局仕様書を探し(これすら困難)、自分で一から作らないと動かないのです。
でも、「Windows2000だから」嫌でも学ばざるを得なかった学ばせて貰えた知識は計り知れません。そういう意味では、偶然にもこの学校のPCが2000であったことに感謝しなければなりませんね。
フォントは、和ホラーゲームということもありやはり行書にこだわりたいですね。今回の実装は割と安定していますから、このまま製品にも採用すると思います。
2013/05/12(Sun) 14:59 | URL  | 宮田司郎(仮名)(管理人) #rVAQMBEE[ 編集]
こんばんは
そうなのですね。
今どき珍しい学校なんですね。

それだけこだわっていただければ、作られるゲームも本望でしょう(笑)

ちなみにお聞きしますと、今はwindows2000専用で作ってみえるようですが、高校を卒業なさってから自宅のPCや最新版で起動することは可能なのですか?

PC初心者の質問で申し訳ないのですが、、、。
2013/05/16(Thu) 20:23 | URL  | 蒼き狗と紅き狐 #bWaRpPp2[ 編集]
>>蒼き狗と紅き狐 様
基本的にパソコンの世界は「後方互換」で、「古いPCで動けば新しいPCでも動く」という法則が有ります。実際に記憶はWindows7で動作確認しています(というか、記憶を開発しているこのPCがWindows7なのです)。

但し、確かにこの法則通りのソフトは多いですが、お察しの通り新しいPCでは動かないものもよくあります。実は、記憶にもWindows8で起動できなかった事例が有ります。

以上から、結論は「可能性は高いが起動できなくてもおかしくはない」となります。
2013/05/18(Sat) 11:04 | URL  | 宮田司郎(仮名)(管理人) #rVAQMBEE[ 編集]
こんにちは
回答ありがとうございました。(こう書くと某知恵袋みたいですが 笑)

そうなんですね。
受験中ということも大変ですね。

実は自分も今(今更ということもありますが)、新しいことを始めようと思っていて、宮田司郎さんに後押しされています。

お互いに一番忙しい時ですが頑張りましょうノシ
2013/05/27(Mon) 13:29 | URL  | 蒼き狗と紅き狐 #bWaRpPp2[ 編集]
コメント:を投稿
URL:

パスワード:
非公開コメント: 管理者にだけ表示を許可
 
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。