title: Phi::Font
author: YOSHIDA Kazuhiro
mailto: moriq@moriq.com

1. Phi::Font

1.1. class methods

: new : Phi::Font

1.1. properties

: charset : Fixnum
  フォントの文字セット

: color : Fixnum
  テキストの色

: height : Fixnum
  フォントの高さ

  height は，フォントの高さをピクセル数で指定します。値が負の数の場合は，テキストの各行の上に表示される内部レディングは含まれません。値が正の数の場合は， %c:height% は内部レディングを含めた文字の高さを表します。

  フォントのサイズをポイント数で指定するときは， %c:height% でなく %c:size% を使います。ユーザーはポイント単位でフォントサイズを指定するのが一般的ですが，アプリケーションではフォントを画面に表示するときにピクセル単位でのフォントの実際のサイズが必要になります。

  ポイントサイズから %c:height% の値を得るには次の式を使います。
--text
font.height = -font.size * font.pixels_per_inch / 72
--

  %c:height% が正の値の場合， %c:size% は負の値になります。 %c:size% が正の値の場合， %c:height% は負の値になります。

: name : String
  フォント名

: pitch : Fixnum
  フォントの文字幅をすべて同じにするかどうか

  書体にはそれぞれのピッチが関連付けられています。固定ピッチフォントの文字はすべて同じ文字幅で，可変ピッチフォントの文字の文字幅はそれぞれ異なります。固定ピッチフォントは，字下げを揃えることができるので，ソースコードを記述するのによく使われます。可変ピッチフォントは，テキストを自然な体裁で表示する場合に使われます。

  : FP_DEFAULT
    フォントピッチはデフォルト値に設定される。デフォルト値は #name に指定したフォントによって異なる
  : FP_FIXED
    フォントピッチは固定ピッチに設定される。フォント内のすべての文字は同じ幅になる。
  : FP_VARIABLE
    フォントピッチは可変ピッチに設定される。フォント内の文字は幅が異なる

  固定ピッチフォントで %c:pitch% を %c:FP_VARIABLE% に設定したり，可変ピッチフォントで %c:pitch% を %c:FP_FIXED% に設定したりすると， Windows は指定されたすべてのフォント特性にもっともよく一致するものを探します。その場合，フォントの体裁は何も変わらないか，または，別のフォントが適切なピッチで代用されます。たとえば， MS Serif( 可変ピッチのフォント ) のピッチを %c:FP_FIXED% に設定した場合は， Courier が表示されます。

: pixels_per_inch : Fixnum
  論理インチと，フォントを使うデバイス ( プリンタまたは画面 ) のピクセルとの間の変換係数

  %c:pixels_per_inch% は，フォントがフォームのキャンバスからプリンタにコピーされるときにフォントのポイント数が同じになるようにするために使います。 %c:pixels_per_inch% はプリンタフォントだけに影響を及ぼし，変更してはなりません。

  フォントのサイズを変更したい場合は %c:size% と %c:height% を使います。

: size : Fixnum
  フォントの高さ

  %c:size% は，フォントのポイントサイズを指定します。値が負の数の場合，テキストの各行の上に表示される内部レディングが含まれます。値が正の数の場合， %c:size% は内部レディングを含まない文字の高さを表します。フォントのサイズをピクセル数で指定するときは， %c:size% でなく %c:height% を使います。ピクセル単位の高さから %c:size% の値を得るには次の式を使います。
--text
font.size = -font.height * 72 / font.pixels_per_inch
--

  %c:size% が正の値の場合， %c:height% は負の値になります。 %c:height% が正の値の場合， %c:size% は負の値になります。

: style : Array
  フォントの属性

  %c:style% は，文字に太字・斜体・下線付き・打ち消し線付きの属性を付けることができます。 %c:style% は，以下の値からなる集合です。指定しなくてもかまいません。

  : FS_BOLD
    太字になる
  : FS_ITALIC
    斜体になる
  : FS_UNDERLINE
    下線付きになる
  : FS_STRIKEOUT
    打ち消し線付きになる

1.1. methods

: to_s : String
