U-PRIMO

rainbow-1.0.0

Rainbow Color Codes(カラーコード生成ツール)
バージョン 1.0.0 (1.00.0000.20211005) リリースノート
開発環 Linux 3.10.0-1160.15.2.el7.x86_64 (CentOS 7.9.2009)
※ 上記以外での動作確認は行っておりません。
開発 Tetsu Ohta TSUJIMOTO @ U-PRIMO (https://www.u-primo.org)
Download Page
※ ユーザー認証のダイアログボックスが現れます。ユーザー名は「download」、パスワードはありません。

コンセプト

  • 自然な色合いの虹色を再現

概要

可視光線の任意の波長域を任意の数に分割し、各々のカラーコードを10進数と16進数で出力します。 収録している波長の範囲は、380~750 nmです。(下図)
なお、波長と色の関係は目安であり、厳密な色を表したものではありません。

rainbow
← 380 nm 750 nm →

色の参考にしたサイト
https://ja.wikipedia.org/wiki/可視光線 screenshot

使用方法

rainbow [オプション]

オプション
-n <division> 色の分割数を指定する。デフォルト値は26分割。
-r <min> <max> 波長の範囲をnmで指定する。デフォルト値は430 nm (min)と680 nm (max)。
-b <brightness> 明度を0~100の間で指定する。デフォルト値は50。
--html カラーサンプルをHTML形式で出力する。

使用例 (1)

デフォルト値のカラーコードを出力する。
$ rainbow
No. wavelength(nm) RGB(dec) RGB(hex) 1 430.000 39 9 82 27 09 52 2 440.000 42 16 118 2A 10 76 3 450.000 27 39 121 1B 27 79 4 460.000 9 57 106 09 39 6A 5 470.000 13 73 104 0D 49 68 6 480.000 16 92 108 10 5C 6C 7 490.000 21 112 111 15 70 6F 8 500.000 24 137 114 18 89 72 9 510.000 29 166 117 1D A6 75 10 520.000 32 193 111 20 C1 6F 11 530.000 33 215 97 21 D7 61 12 540.000 55 232 65 37 E8 41 13 550.000 116 235 34 74 EB 22 14 560.000 165 226 33 A5 E2 21 15 570.000 202 214 33 CA D6 21 16 580.000 235 197 32 EB C5 20 17 590.000 245 172 65 F5 AC 41 18 600.000 247 149 75 F7 95 4B 19 610.000 250 125 67 FA 7D 43 20 620.000 253 95 48 FD 5F 30 21 630.000 248 53 18 F8 35 12 22 640.000 218 34 19 DA 22 13 23 650.000 176 35 13 B0 23 0D 24 660.000 141 28 6 8D 1C 06 25 670.000 108 22 4 6C 16 04 26 680.000 82 18 3 52 12 03
$

使用例 (2)

デフォルト値のカラーサンプルをHTML形式で出力する。
$ rainbow --html > test.html
生成された test.html ファイルをウェブブラウザで開く。
No. wavelength   b = 10     b = 20     b = 30     b = 40     b = 50     b = 60     b = 70     b = 80     b = 90  
430.000
440.000
450.000
460.000
470.000
480.000
490.000
500.000
510.000
10 520.000
11 530.000
12 540.000
13 550.000
14 560.000
15 570.000
16 580.000
17 590.000
18 600.000
19 610.000
20 620.000
21 630.000
22 640.000
23 650.000
24 660.000
25 670.000
26 680.000
※ すべてデフォルト値の時のみ、明度 b=10~90 のカラーサンプルが出力されます。

使用例 (3)

概要欄のカラーバーと同様の画像を生成する。(PPMアスキー形式のデータを生成し、PNG形式に変換する。)
$ rainbow -r 380 750 -n 1920 | awk '{ if(NR==1) printf("%s\n%s\n%s\n","P3","1920 1","255"); else print $3,$4,$5 }' | convert - -resize 1920x96! test.png
生成された test.png ファイルを画像表示ソフトで開く。
test.png
※ 1/3に縮小して表示しています。