テキストからちょっとしたアイコン用bmpを作るだけの簡単なスクリプトです。 ========================================================= 1. はじめに rubyが必要になるのでcygwinを使うなり、windows版を入れるなりしてください。 あとはターミナルから % ruby iconMaker.rb Itest/Idesu/Iyooo などと入力することでアイコン用のbmpが生成されます。 与える引数の詳細については以下を参照してください。 ========================================================= 2. 入力方式とか仕様とか アイコンは32*32ピクセルで構成され、フォントが縦幅9ピクセルなので 3行までテキストを入力することができます。 各行のテキストや色指定は全て'/'区切りにされた引数で行い、 一つの出力ファイルに対して一続きの文字列が対応しています。 引数がスペースで区切られた場合は、その数だけ出力ファイルを指定しているとみなします。 ・'I' (input text) アイコンに描画するテキストの文字列 このコマンドは3回まで繰り返すことができ、 1回目は1行目のテキスト、2回目は2行目のテキスト、3回目は3行目のテキストを指定することになります。 "Iaaaa/I/Ibbbb"という入力を与えた場合、2行目は空行と見なされます。 ・'F' (foreground color) 文字列の色指定 ・'B' (background color) 背景の色指定 それぞれの色を指定します。 以下の表における整数のidx値か、nameを指定してください。 該当しない値が渡された場合、入力は無視されます。 idx r g b name 0 0 0 0 black 1 80 0 0 maroon 2 0 80 0 green 3 80 80 0 olive 4 0 0 80 navy 5 80 0 80 purple 6 0 80 80 teal 7 80 80 80 gray 8 c0 c0 c0 lightgray 9 ff 0 0 red 10 0 ff 0 lime 11 ff ff 0 yellow 12 0 0 ff blue 13 ff 0 ff fuchsia 14 0 ff ff aqua 15 ff ff ff white 利用形態を考えた結果、一度色指定を行ってからは、次に他の色指定が行われるまで 次以降のファイルに対しても同じ色指定を適用し続けます。 "Fpurple/Ithis/Iis/Ipurple Ithis/Iis/Idefault"という入力を与えると、 二つのファイルは両方とも紫色の文字で出力されます。 ・'O' (output file) 出力ファイル名の指定 そのまんまです。 指定しなかった場合はtest**.txtという形で出力されます。 出力ファイル数が大きくなる場合は、テキストファイルから引数を与えることもできます。 ## input.txt ############# /O0NRA.bmp/INand/IInit/IRed /O0NPA.bmp/INand/IInit/IProd /O0NIA.bmp/INand/IInitilize /O0HWA.bmp/I0HWA/IHWInfo/Iwriter ########################## みたいなファイルを用意して % ruby iconMaker.rb input.txt とすれば良いですが、ファイルによる入力かどうかは引数の末尾が"*.txt"かどうかで判別しています。 "Ifile/Iis/Ia.txt" みたいな入力を与えるとファイルからの入力扱いをされてハマります。 横幅については文字ごとにまちまちなので、そのつど確認してください。 仮に横幅をオーバーしたとしても、エラーを吐かずにはみ出た部分は切り捨てられますが、 将来的には文字幅が溢れている場合、warning的なものを出す予定です。 → 出るようになりました ========================================================= TODO ・記号への対応 # 08/08/18 ・アルファベット大文字に対応 ・横幅がオーバーしていたときに警告を出力 # 08/08/13 ・引数指定のフォーマットを変更 ・色指定に対応 ・数字入力に対応 ・ファイルからの入力に対応 # 08/08/07 ・初版