トップページ > 記事閲覧
フォントの文字単位の文字幅の設定
名前:was-blue.0793 日時: 2018/10/23 23:26

タイムやスコアなど、動的に変化する数値をフォントで表示する時、フォントによっては文字幅の違いで数値自体の幅が変わってしまうことがあります。 検証用の動画です。 右寄せになっていますが文字列の横幅を計算して右寄せになるように表示位置を設定しています。 youtu.be/Q3FiCLu1N4Q ※URL形式だと投稿できないので頭の「http」は省いています 動画ではOpen Sans、Bai Jamjureeを使用しましたが、数字が等幅なフォントは他にRoboto、M+ Fontsなどがあります。 なお、フォントはDXフォントデータに変換したものを使用しました。 これにより、数字を表示するためのフォントがかなり制限されてしまいます。 フォント全体の字間を設定する関数がありますが、文字単位で字間を設定する方法はありますか?
メンテ

Page: 1 |

Re: フォントの文字単位の文字幅の設定 ( No.1 )
名前:管理人 日時:2018/10/23 23:56

> フォント全体の字間を設定する関数がありますが、文字単位で字間を設定する方法はありますか? すみません、ありません 手間ではありますが、DrawStringToHandle で1文字づつ描画すれば自由に字間を決めることができます
メンテ
Re: フォントの文字単位の文字幅の設定 ( No.2 )
名前:was-blue.0793 日時:2018/10/25 00:42

早めのご返答ありがとうございます。 プログラム側では文字単位では字間を設定することはできないのですね…… 1文字単位で描画するか、改変できる場合はフォント自体を改変して対応することにします。 (Google Fontsで手に入る欧文書体は数字の文字幅が異なるフォントが多いので、1文字単位で描画してプログラム側で擬似的に等幅化できればスマートではありますが)
メンテ

Page: 1 |

題名
名前
コメント
パスワード (記事メンテ時に使用)

   クッキー保存