- 変数宣言
使用する予定の変数は以下のとおり
- numTargetLength
- 変換対象文字数
- strOutText
- 出力文字列
- strSettingColor
- 設定色
- numCount
- ループカウンタ
- strTemp
- テンポラリ
- strDifferenceMinute
- 開始・終了差分
- strChangeRate
- 変化率
- strMinusFlag
- マイナスフラグ
- 対象文字数取得
全角文字一文字を一文字と解釈できる環境でなければ文字数がくるう可能性があります
したがって、信用しすぎない方がいいのかもしれません
- 開始・終了差分取得
開始・終了差分を取得します、この時「#RRGGBB」から「R,G,B」へ、「R,G,B」から「#RRGGBB」へコンバートする必要があります
- 変化率取得
開始・終了差分を変換対象文字数で割っているだけです
この時、四捨五入するのを忘れると痛い目にあいます
- 初期値設定
開始色の設定、出力文字列のクリアを行っているだけです
- 下記を文字数分繰返す
一文字目は"0"なので、実際には「numTargetLength-1」が最終文字になります
- 一文字目かを判断する
"0"から始まっているので当然、"0"であるという判断をするだけです
- 一文字目以外なら文字の色を変化させる
strSettingColor+strChangeRateをするだけです
この時も「#RRGGBB」から「R,G,B」へ、「R,G,B」から「#RRGGBB」へコンバートする必要があります
- 変換した文字列を返す
変化させた文字列を戻り値にするだけです