draw_textベースモジュール


draw_text拡張などで使用する関数一覧っぽいもの ※これだけ導入しても意味はありません。 変更点 2009:05:07 ・外字ファイルが存在しない場合への対処のための微修正 2009:09:14 ・draw_ex用色変え削除をRUBY_SYSからDRAW_MSGに移動
#==============================================================================
# draw_textベースモジュール by 貪藻矢射妥←
#------------------------------------------------------------------------------
# 
# draw_textで使うベースのモジュール集
# 
#==============================================================================
# 変更履歴
# 2009:05:07
# ・外字ファイルが存在しない場合への対処のための微修正
# 
# 2009:09:14
# ・draw_ex用色変え削除をRUBY_SYSからDRAW_MSGに移動

module DRAW_MSG
  # 最小フォントサイズ
  FONT_SIZE_MIN = 6
  # 最大フォントサイズ
  FONT_SIZE_MAX = 32
  # 外字1つのサイズ
  EP_SIZE = 24
  # 外字ファイル1つの最大外字個数
  EP_MAX = 8
  # 外字ファイル名(基本)
  EP_LIGHT_PIC  = "gaiji_"
  # 陰文字外字ファイル名(基本)
  EP_SHADOW_PIC = "gaiji_s_"
  # インポート先ディレクトリネーム
  DIR_NAME = "Graphics/Pictures/"
  # 外字ファイル拡張子
  EX_C_NAME = ".png"
  
  #--------------------------------------------------------------------------
  # ○ アイコン描画サイズ取得
  #--------------------------------------------------------------------------
  # アイコンのデフォルトサイズは24でテキストのデフォルトサイズは22なので、
  # テキストのサイズが変わり次第アイコンの描画サイズも比例変形させる。
  #--------------------------------------------------------------------------
  def get_dis(size)
    return (EP_SIZE.to_f * size.to_f / Font.default_size.to_f).to_i
  end
  #--------------------------------------------------------------------------
  # ● 文字色取得 拡張
  #     n : 文字色番号 (0〜) または s,c,k
  # ※存在しないものを指定した場合はノーマルカラーが設定されます。
  #--------------------------------------------------------------------------
  def change_color(n)
    if n.to_i.to_s == n
      return text_color(n.to_i)
    else
      case n
      when 's'
        return system_color
      when 'c'
        return crisis_color
      when 'k'
        return knockout_color
      else
        return normal_color
      end
    end
  end
  #--------------------------------------------------------------------------
  # ○ フォント変更
  #     n : フォント番号 (0〜)
  # ※存在しないものを指定した場合はデフォルトフォントが設定されます。
  #--------------------------------------------------------------------------
  def change_font(n)
    ms_mincho = "MS P明朝"
    case n
    when 0
      return Font.default_name
    when 1
      return ms_mincho
    when 2
      return ["HG行書体", ms_mincho]
    when 3
      return ["HGP創英角ポップ体", Font.default_name]
    when 4
      return ["HG丸ゴシックM-PRO", Font.default_name]
    when 5
      return ["HG正楷書体-PRO", ms_mincho]
    when 6
      return ["恋文ペン字", Font.default_name]
    when 7
      return ["麗流隷書", ms_mincho]
    when 8
      return ["江戸勘亭流P", ms_mincho]
    when 9
      return ["富士ポップP", Font.default_name]
    else
      return Font.default_name
    end
  end
  #--------------------------------------------------------------------------
  # ○ フォントサイズチェック
  # フォントサイズをFONT_SIZE_MINからFONT_SIZE_MAXの間にまるめこみます。
  #--------------------------------------------------------------------------
  def ck_font_size(size)
    return [[size, FONT_SIZE_MIN].max, FONT_SIZE_MAX].min
  end
  #--------------------------------------------------------------------------
  # ● draw_ex用色変え削除
  #--------------------------------------------------------------------------
  def del_change_color(text)
    if text != nil
      bl_text = text.clone
      bl_text.gsub!(/\001\[(.+?)\]/) {""}
      return bl_text
    else
      return text
    end
  end
end

戻る