久しぶりにHSP触りました。
txt2exoのプログラムで少しきになるところがあった(プレビューの縁取り)ので、そこをモジュール化してみました。
実際はもう少し違うプログラムですが、ここでは文字の縁取り部分だけです。
#module #deffunc fuchimes str a , int n, int r , int g , int b bold = n color_r = r : color_g = g : color_b = b ;色範囲を0~255に制限 if color_r > 255 : color_r = 255 if color_g > 255 : color_g = 255 if color_b > 255 : color_b = 255 if color_r < 0 : color_r = 0 if color_g < 0 : color_g = 0 if color_b < 0 : color_b = 0 if bold < 0 : bold = 0 ;現在のカラーコードを一時保存 ncolor_r = ginfo_r ncolor_g = ginfo_g ncolor_b = ginfo_b redraw 0 ;縁描画 color color_r,color_g,color_b pos ginfo_cx-boid , ginfo_cy-boid repeat bold*2+1 ;縦移動 cposy_x = ginfo_cx : cposy_y = ginfo_cy repeat bold*2+1 ;横移動 cposx_x = ginfo_cx : cposx_y = ginfo_cy mes a pos cposx_x+1 , cposx_y loop pos cposy_x , cposy_y+1 loop ;中心文字描画 color ncolor_r,ncolor_g,ncolor_b pos cposy_x+bold , cposx_y-bold mes a redraw 1 return #global fuchimes "Hello World!",5,100,140,235
fuchimes “文字列”,縁の太さ,カラーコードR,カラーコードG,カラーコードB
文字色は現在の色設定、縁の色はfuchimes命令中で指定した色です。
まぁグーグル先生にかかればこんなの他にいくらでも見つかると思います。
多分これよりも処理が早いものもあると思いますが、頻繁に書き換えないのならこれでいい気もします。
あと、改行を含んでも大丈夫だと思います。
参考になれば。
あらかじめ色を指定(ここでは、255,255,128)しておくとこんな感じになる
Leave a Comment