書き忘れたorz。
フォントメトリックスを取得しているのは、算定の参考値として
利用するためです。やってみればすぐに分かりますが、
ループの回数を(かなり)減らせます。
> 9.2.に戻る
ん? ループの脱出経路がありませんよ。^o^
5-1.取得した値が条件に合っていればループ脱出。
5-2.取得した値が前回値と同じならループ脱出(調整できなかった!)。
当然わかっているとは思うけど。
「堂々巡り」って「いつまでも繰り返して、はてのないこと」だと広辞苑にかいて
あるけど、仲澤さんが提示しているのは「堂々巡り」ではないと思いますよ。
10cm のエリアに表示可能な最大のフォントを算出して、自動でその大きさになる、
ということがしたいわけね?
個人的には勝手にフォントサイズが変わるというのは気持ち悪い。
文字と文字の間隔が変わる(時と場合により負数になる)のであれば許せる範囲。
俺なら「文字の大きさを勝手に変更する」という仕様にダメだしするかな。
# 算出したフォントサイズに対応するフォントが利用可能とは限らないし。
文字間隔の調整でなんとかならんのかな?
>ん? ループの脱出経路がありませんよ。^o^
失礼しました。orz
よく理解できました。
GetTextExtentを使って関数を作ることにします。
(自分の場合は、印刷の前に画面に描くのでGetOutputTextExtentよりいいようです。)
文字列、使用するフォント名および目的のサイズ(画面上の)を渡して、フォントサイ
ズを返す関数です。
半角・全角よ、サヨウナラ! 意識改革。 Yes, We can!
多くの方に教えて戴き、ありがとうございました。