RGSS2を知る(36)
枠に入りきらない文字を描画した場合の動作。
b = Bitmap.new(50,50) b.font.size = 96 b.draw_text(0, 0, 50, 50,"あ") b1 = Bitmap.new(50,50) b1 .font.size = 96*60/100 b1 .draw_text(0, 0, 50, 50,"あ") b2 = Bitmap.new(50,50) b2.font.size = 60 b2.draw_text(0, 0, 50, 50,"あお") s = Sprite.new s.bitmap = b s1 = Sprite.new s1 .bitmap = b1 s1.x = 100 s2 = Sprite.new s2 .bitmap = b2 s2.x = 200 loop do Graphics.update end
縮小は60%まで自動で、横方向に限って行われる。それでも入りきらない場合は右端をカット。
縦位置は範囲の真ん中に合わされるが、はみ出した場合は文字の上を上端にそろえて下がカットされる。
b1 = Bitmap.new(50,50) b1 .font.size = 60 b1 .draw_text(0, 0, 50, 50,"あお", 1) b2 = Bitmap.new(50,50) b2.font.size = 60 b2.draw_text(0, 0, 50, 50,"あお", 2) s1 = Sprite.new s1 .bitmap = b1 s2 = Sprite.new s2 .bitmap = b2 s2.x = 100 loop do Graphics.update end
Alignを設定してあってもはみ出した場合は右がカットされる。
ちなみにフォントの最大サイズは96で、97以上にしようとすると実行時にエラーが出る。
最小サイズは6だった。
ところで先日言っていたイレギュラーなパターンというのはたとえばこういうもの。
b1 = Bitmap.new(50,50) b1 .font.size = 60 b1 .draw_text(-10, -10, 50, 50,"あお", 1) s1 = Sprite.new s1 .bitmap = b1 loop do Graphics.update end