「LTalk2::SplitMessage」の編集履歴(バックアップ)一覧はこちら
「LTalk2::SplitMessage」(2008/05/30 (金) 15:02:57) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
*LTalk2::SplitMessage
文字列を、指定した幅の中に納まるように分割するサブルーチン。
#codehighlight(VB){
// @param Args(1) TalkMessage
// @param Args(2) MaxWidth
// messageをwidth以内に収まるように、SRCのリスト形式で分割する
// SAMPLE : "message" => "mess age"
LTalk2_SplitMessage:
Local _mess = Args(1) // オリジナルのメッセージ
Local _maxWidth = Args(2) // 可能表示幅
Local _sMess = "" // 分割後のメッセージ
Local i _strlen _width _charWidth _targetChar
_width = 0
_strlen = Len(_mess)
For i = 1 to _strlen
_targetChar = Mid(_mess, i, 1) // 対象文字を取得
_charWidth = TextWidth(_targetChar) // 対象文字の幅をピクセルで取得
If ((_width + _charWidth) <= _maxWidth) Then // 幅に余裕があれば
_sMess = _sMess & _targetChar // 分割後メッセージに対象文字を加える
Incr _width _charWidth // 幅を更新
Else // 幅に余裕がなければ
_sMess = _sMess & " " & _targetChar // スペースを挟んでリスト形式で分割
_width = _charWidth // 幅を更新
EndIf
Next
Return _sMess
}
*LTalk2::SplitMessage
文字列を、指定した幅の中に納まるように分割するサブルーチン。
タグによる動的なフォント変更もサポートする
#codehighlight(VB){
Now printing...
}
表示オプション
横に並べて表示:
変化行の前後のみ表示: