Windowsにはさまざまなフォントがありますが、デフォルトではSYTEM FONTというものが使われます。これは高速で描画できるというメリットがありますが、サイズの変更ができないとか外国語がちゃんとでないなどの不具合があります。次の例では、VCのエディタでは表示されているアンニョンハセヨのハングル表記が黒塗りになっています。とはいえ、ウィンドウのタイトルバーでは正しく表示されているので、こちらはSYTEM FONTではないのでしょうね。

これを避けるには、自分でフォントを指定する必要があります。また、プリンタではプリンタのメーカーが提供する独自のSYSTEM FONTが使われます。それは画面とは違うものなので、違和感を感じる可能性があります。

要するに、VisualC++でアプリを作成したときに意図したような表示あるいは印刷にするには自分でフォントの設定をする必要があるということです。

 

 Windowsはもともとアメリカのものなので、英語フォントがベースになっていますし、サイズもインチが基本です。たとえばワードでは英文ワープロとしての基本は右端をきちんとそろえることです。右端はきちんとそろっていますが途中は適当です。これが英語の文化ということで日本語とはずいぶんと違います。

歴史的にはグーテンベルクが活字を発明する以前から修道士などが写本をする際のスタイルだったそうです。これに対して日本語では原稿用紙のマス目に合わせるという習慣があり、一太郎などはそれに従ったスタイルになっています。ガラケー・98・一太郎とグローバルスタンダードには勝てないですね。

そのせいで、ワードで日本語を書くと右端を合わせようとするので途中がうまくそろわないという現象はあります。しかしながらエクセルではまた事情が違うのです。エクセルというのはセルと呼ばれるマス目に数字などを入力するものですので、ある意味で日本語近い所があります。システムとは妥協のことである。なんてな。

 

さて、フォントサイズの単位であるポイントは1/72インチのことです。1インチは25.4mmです。画面と印刷の解像度はdpi(dots per inch)で表示され、手元のシステムでは画面は96dpi, 印刷は720dpiです。これらの数字をもとにして、フォントサイズをピクセル単位で設定します。というわけで、どこまでもアメリカが世界の中心であるわけです。

ちなみに、英語の文字ではWが最も幅広でiが最も狭い文字です。大文字のMは縦横の比が等しいのだそうです。日本語のフォントにも幅が固定のものと変動するものがあるらしいですが、英語ほどの違いはないみたいです。ちなみに英語でもプログラミングのエディタのようなところでは全部同じ幅のフォントが使われています。基本情報はある意味でこれだけですが、実際に使っていくといろいろとあります。

 

Windows95の頃には文字コードはシフトJISでしたが今ではUTFになっています。推奨されるフォントも変わっているようです。とりあえずワードで出てくるものが推奨なのだろうと考えて使ってみます。選択画面をクリックして反転表示にした状態でCtrl+Cを押すとコピーされるので、メモ帳などのエディタにCtrl+Vでコピーします。

これを使ったプログラムを書いてみました。

フォントというものはパソコンごとに違うものが入っている可能性があり、プログラムで指定すると違った表示になってしまう可能性がありますが、たぶんワードの推奨はどこでも使えるという気はします。

 

 

とりあえず、フォントとサイズの計算事例ということでアップします。文字の周囲の枠は5cmx15cmです。画面では少し小さめになりますが、印刷すると正確な寸法になります。

ダウンロード
関連するファイルです。
font.zip
zip ( 圧縮 ) ファイル 23.3 KB