======================================== This readme is Japanese and English languages are combined togatehr. The English Charpers are this text -file's aboutly in this reademe's middle part. Please Scroll it on the the notepad. ======================================== ==================== パステルカラー調色ツール 「かぎりなく白色に近いブルー」 Unlimited Bright Blue Ver 0.04 CopyRight MIYAMA. 2010 July-August kaz_kimijima@yahoo.co.jp http://kimijima.at.infoseek.co.jp * English Document is at middle position of this text file. ==================== ・はじめに ・バージョンアップについて ・使用許認可条件 ・免責 ・機械動作条件 ・解凍 ・使用方法 ・注意事項 ・蛇足1 ・蛇足2 ・ソースコード ==================== ・はじめに このソフトは既存に得られている色彩をそ の色調はそのままにその濃淡のみを調整した サンプル色を得るツールです もとの色調のRGB色数値がわかっている場 合その明度のみを調整した新しい色数値を得 ることが出来ます 色の温度計のようなものとしてご使用くだ さい ・バージョンアップについて はじめてこのソフトを使用する方はこの項 目は読み飛ばしてください 前バージョン0.01にいくつか不具合と使用 上の不便が見つかりましたので修正バージョ ンを配布いたします a FFFFFF 16進表記の実装仕様上の間違 い 作者はHTML上の表記の16進表記の色彩情報 の表記を誤って実装していました 実行ファイルのFFFFFF形式の色情報出力を そのままHTMLに埋め込むと意図した色彩が表 示されません FFFFFF表記を使用される方はこのVer0.04 をご使用ください (作者が1677万色の色彩の位取りとFFFFFF形 式の色彩の位取りを混同したために起きた間 違いでした 正しい組み合わせーー 赤緑青 式位取り VBのRGB関数 FFFFFF形式HTML表記 青緑赤 式位取り 1677万色形式の内部位取り 誤りーーーーーー 赤緑青 式位取り VBのRGB関数 青緑赤 式位取り FFFFFF形式HTML表記 1677万色形式の内部位取り ) b 色彩データ出力ファイルをEXCELで開い たときの不便の解消 255 255 255形式 1677万色形式とも その値を実数 例えば255形式で値を080では なく80とと書いても有効に処理されますが 例えばFFFFFF形式で011111とかかれた値を EXCELで開いたとき EXCEL側がこれを数値とみなして11111と強 制的に修正してしまうことがあります 処理上これは常に文字列としてみなされな ければ困りますので この項目の頭に DecHex の文字列を追加 しました この項目を切り出して使用する場合には上 記の文字列を除いて使用してください c フォームの大きさを変更できるように しました 作業上編集画面に当てながら使用したい場 合もあるとおもいますのでフォームを縮小で きるようにしました フォームをマウスで拡大縮小した後に実際 の色彩が表示される窓あるいは灰色の余白部 分をクリックしてください なおあまり画面を縮小するとボタンの表記 がほとんど見えなくなりますがボタンの押し 下しはショートカットで対応してください 例 EXITは&Xなので alt+Xキー データ保存は&Rなので alt+Rキー d FF値変換ボタンが機能しない FFFFFF値を入力窓に書き込んでFF値変換ボ タンを押し下しても動作しなかったことが判 明しました このボタンから呼び出すべきサブプロセス へ連携が通じていなかったことが原因です e 255値指定窓で空白あるいは数字以外の 文字を入力して処理すると強制終了される 入力文字列の検査をサブプロセスで厳密に おこなっていなかったために起きるエラーで した 以上事実上0.01はアルファ版相当の検査し かしていなかったようでした ・使用許認可条件 フリーウエアです 個人・商用を問わず使用配布は自由です また内部論理をソースコードととして添付 します1677万色 色コードの処理の参考 としてご使用ください ・免責 作者はこのソフトを使用して生じたあらゆ る不利益不具合に何ら責任を持ちません あらかじめご了承ください ・機械動作条件 WINDOWSマシンでのみ動作します マッキントッシュでは動作しません このソフトにはパッケージインストーラは 付属しません READMEと実行ファイルのみの配布となりま す 出荷時XP以上のwindowsプリインストール マシンであれば大抵の場合動作に必要なVB6. 0ランタイムライブラリは組み込まれていま すので 解凍後出てくる実行ファイルを例えばデス クトップなどでクリックすれば動作するはず です WINDOWS95/98等の古いマシンではランタイ ムが含まれていないことがありますので別途 NET等でランライムを入手組み込みする必要 があるかもしれませんが ごくまれに既存のソフトが動作の不具合を 起こすこともありますのでしいて推奨はしま せん そのような場合は自己責任での対応をお願 いいたします ・解凍 ZIP形式の圧縮アーカイブで配布いたします 解凍ソフトで解凍してください 以下のファイルが出てきます READMEWB.TXT このREADMEです WhiteBLU.EXE 実行ファイル本体です ・使用方法 a 画面 Whiteblu.EXEをクリックしてください 表示画面が現れます ーーーーーーーーーーーーーーーーーーーーーーーー_ロX 赤成分入力スライドバー 緑成分入力スライドバー 青成分入力スライドバー 16進FF形式数値入力窓 FF形式をRGB/1677万値に変換ボタン 1677万色形式数値入力窓 1677万色値をRGB形式値に変換ボタン 赤数値入力窓 緑数値入力窓 青数値入力窓 RGB形式を1677万色値に変換ボタン 入力色彩サンプル表示窓 出力色彩サンプル表示窓 赤数値出力窓 緑数値出力窓 青数値出力窓 終了ボタン 1677万色数値出力窓 暗色方向に調整ボタン 16進FF形式数値入力窓 明色方向に調整ボタン 明色の対数処理を選択チェック 明度調整スライダースケール コメント入力欄 ログファイルに追加出力ボタン ーーーーーーーーーーーーーーーーーーーーーーーーー 基本の操作方法はあまり難しくはありませ ん直感的に操作できるとおもいます フォームとボタン窓などは大きさを変更で きます ただし大きさ変更情報は保存されません マウスで任意の大きさにフォームを変更後 灰色の余白か色彩が実際に表示される窓:上 下どちらも可をクリックしてください ・バージョンアップの項参照 b 数値入力 数値入力は数値欄への直接入力 スライド バー操作ともに可能で 全ての入力変数が相互変換されて入力値表 示兼入力窓に表示されます 窓に入力した場合にはその左にある該当変 換ボタンを押し下してください 例えば白色を指定したい場合各項目窓に以下の数値を入力してください 16進入力窓 FFFFFF 6桁の0123456789ABCDEF の16進文字列で入力してください 1677万色入力窓 16777215 あまり使うことは無いとおもいますが256進形式の実数の入力です RGB256形式入力窓 255 255 255 0から255までの整数で入力します 窓は左から赤緑青各成分です 注意 不適切な数値を入力した場合それぞれの入 力値は強制的に初期値に変更されます 16進の表記は業界慣例として左から赤緑青 という成分連結になっています FFFFFF は 左からFF FF FF とくぎられこれは 赤 緑 青 となります Ver0.01で作者はこの部分を逆に青緑赤に 実装していました この機能を使用される方は実行ファイルを Ver0.04でご使用ください どの欄に入力しても そのすぐ右側のボタンを押し下せば相互変 換して実際の色調が色彩表示窓に表示されま す c 色彩明度の操作と出力 起動時は淡彩方向への操作モードになって います 明度の操作は画面下部の太いスライダーに よってのみ操作できます 基本的に右方向で明るく左方向で暗くなる 操作です 調整した数値は画面最下部のボタンで外部 テキストファイルに書き出すことが出来ます コメント項目入力可能です d 明度操作のモード 明度操作は3種のモードが選択可能です 明色側操作 対数モード 明色側操作 直線モード 暗色側操作 直線モードのみ もともとツール開発時には明色対数モード の彩度調整の機能しか持ってはいませんでし た ただその場合には完全に黒色にまで連続す る暗方向への色彩調整が出来ないのでリニア 正比例型の暗色操作のモードを追加しました その明色方向側へのリニア正比例の演算が 明色側への直線モードです 明色暗色の切り替えは 暗色ボタン 明色ボタンをそれぞれ押し下すことによっ て実現します 対数モード直線モードの切り替えは対数モ ード選択のチェックボックスのレ点をクリッ クすることによって反映します レ点をはずしたときは明暗モードは変更さ れませんが レ点を再入力した場合には自動的に明色対 数モードに切り替わります d-1 明色対数モードでのスライドバーボ タンの位置 明色対数モードではスライドボタンの位置 が初期時には画面約3分の一の場所に表示さ れます これは入力色彩値と同じ値を出力する操作 変数の対数スケール上の点の位置になります (自然対数の底をeとしたときの逆数1/eの値) ここより左側にスライドさせると入力色よ り色調は濃くなりますが 場合によっては必ずしも操作極限でも黒色 000にはなりません これは内部の対数演算が黒色方向に大きな 数値を入力していないためです とくにもとの3原色の成分の各値の入力値 が255で始まっている場合には対数モード の操作ではその色彩成分の値は255のまま で変化しません 明色方向への操作の場合にはそれでも実際 上問題はありませんが 黒色方向への操作変化値が欲しい場合には 暗色直線モードに切り替えてください 直線モードでは明色暗色両方モードともボ タンの位置はそれぞれ左端右端から出発する こととなります e ファイルへの出力 入力は手動ですが出力はログファイルとし て一操作毎追加形式で書き出すことが出来ま す ログファイルは実行ファイルがあるフォル ダに ColorSMP.TXT ないし CSVで出力されま す 内容は同一ですがCSVはExcelで開くことが 出来ます FFFFFF値はEXCELによって先頭の0を削除 されないように文字列の先頭にDecHexという 文字列を追加します ログファイルからFF値を切り出して使用す る場合はこの文字列を削除してください コメント入力欄に適宜記事を記入後追加ボ タンを押し下してください 現在の数値内容でログに追加されます ・注意事項 繰り返しになりますが古いWINDOWSでの動 作は保証しておりません またマッキントッシュでは動作しません マッキントッシュ環境でどうしても操作し たい場合はバーチャルPCなどのWINDOWSを動 作させるためのエミュレータが必要になるか もしれませんがそのような特殊な環境での不 具合には一切作者は関知いたしません 理論的には特殊なライブラリを必要とはし ていませんのでVB6.0ランタイムがあるWINDO WSであれば動作します 色彩サンプルがたとえば 0 0 128 青単色扱い 0 0 128 :this case is pure blue color のような入力形式の場合この場合は青色の 濃さのみがスライドによって変化いたします 青色をスライドによって限りなく白に近づ けたい場合には入力を 1 1 128 のように赤や緑成分にもごくわずかながら 正の整数値を与えてやる必要があります これは内部演算により青以外の色成分を操 作膨張させて極限では青と同じ程度まで色相 対決をさせて白色を実現させているためです 黒色接近操作モードは数値 0 0 0 にちかづける操作のためこの例では青成分 以外が元々ゼロ値でもかまいません ・蛇足1 このソフトの論理コアは以下の二つの部分 からなっています 興味のある方はごらんください A1677万色形式のRGB形式への分解 フルカラー数値はエントリが一つしかない 数値で複数の情報を伝達するというコンピュ ータの世界の古典的な伝統を踏襲しています たとえばキーボードのキーを押し下すとき のキーイベントにおいて shiftキーやALTキーの押し下し検知用監視 数値などにも使われています これは例えば3けたの二進数をもちいて 二進数表記 十進数表記 000 0 001 1 010 2 011 3 100 4 101 5 110 6 111 7 のように表されます ここで一桁目が1のとき shiftキーが押されている 0のとき shiftキーは押されていない 同様 二桁目が1のとき ALTキーが押されている 0のとき ALTキーは押されていない 最後に三桁目が1のとき CTRLキーが押されている 0のとき CTRLキーは押されていない となります この数値を10進数形式でキーボードの監 視論理に与えてやれば関数の形式としては 変数を三つ用意するところを一つですみま す ーーーーー 1677万色フルカラー数値の形式はこの数値 形式を踏襲しています 256進数表記 十進数表記 0 0 0 0 | | | (255)(255)(255) 16777215 RGB形式(赤値、緑値、青値)は形式上256進 数文法の中での三桁表記そのものです 実際には10個のアラビア数字のように 256個のあいことなる数字記号があるわけで はありませんがコンピュータの中の数値管理 としてはそれぞれの色数値をいわば桁のよう に見立てて束ねています これを強制的に256進数3変数形式を10進 数1変数形式に変換して戻り値を1変数と して管理しやすくしたのが1677万色変数形式 です この変数の相互変換はn進数と10進数間 の相互変換で実現できそれはアルゴリズムに よって 与えられた関数f(x)の逆関数を実際的に定 義することを演習した人にとってはある種の 発展問題といえるものです B明度の演算上の論理について 対数モード上のスライダーボタンは一操作 で三原色各要素を数値的に膨張させて 白色255 255 255から黒色0 0 0まで 圧力をかけます この論理は0から255までの制限された 数値空間を 比率255を利用して閉じられた0から1 の狭い閉鎖空間に変換することによって実現 しました これは方程式 x^2 y^2 ------ + または − ------ =1 a^2 b^2 で表現されている楕円と双曲線の関係とある 意味で同じものです 双曲線のy値はx値如何によっていくらで も大きくなりますが 楕円のy値は入力x値の範囲に制限がある とはいえある一定以上の値には決してなりま せん 色彩255値のようにけっしてある一定上 の値になってしまっては困る演算にはこのよ うな閉鎖空間の論理がむいています 実は楕円の方程式に相当するなかで値aと bを便宜的に1に取るとその操作空間は入力 値に関しては0から1の範囲でしかないので す 詳しい説明は省きますが 入力値を255で割って0から1までの値に しこれをさらに1/n値 nは正の実数 で累乗 します nの値が大きくなればなるほど 関数 y=x^(1/n) __ y= n /x = x^(1/n) つまり xのnの累乗根関数の形は x=0から1の範囲で むりやりに狭い0と1でくぎられた四角い空 間の辺に押し付けられていきます このばあい赤緑青のどの数値もその入力値 が0で無い限りどんどん値比率1に押し込め られていきます つまり最初の色彩がどんな色であろうとも nの値をどんどん大きくしていけば最終的に は白色数値比率1 つまり 255に近づい ていきます 対数モード上のスライダーはこのnの値を 制御するコンポーネントとして配置いたしま した 蛇足1−1 対数明色操作関数は内部で y = 255 * a^(-log e x) という形式になっています ここで操作入力変数はともに入力制御とし て 0<=a<=1 0<=x<=1 という範囲に制限されています aは各色彩単色の入力値としての色の濃さで 単位255で割ってゼロ以上1以下 xは明度スライダーによって制御される明度操作指数で 1のとき対数log e xが0に帰結することを持って yの値を255にする機能を持っています 全ての実数について0乗は元1に帰結するので ここで1は比率量のため単位変換によると値255になります また対数に負数記号が付いていますので 0から1までというxの範囲では指数としての入力変数は xが0に近づく場合には正の方向にどんどん大きくなります aが0以上1以下の小数範囲の数ですのでこの場合1以下の小さい数を どんどん正に累乗していくとその値は限りなく0 つまり黒色成分 に近づき変数xは暗色方向に対しても色の濃さを調整する指数として 使用できることになります (厳密にはaの値が比率1 つまり255に充分近い場合は 操作上明度は真っ黒にはなりませんこれはプログラム上で 変数の比率の割り振りをそう配置したことによる帰結です) 蛇足1-2 代数演算 すこし考えたのですがこの関数は 実数の対数の指数累乗という形式をとっているので 代数演算整理をしてもっと論理的にきれいな 形に出来ないかとおもいました 以下で書くxやyは一般論としての演算であり 以上述べた色彩関数そのものではありません a^log e x を考える aは任意の実数とする xは正の実数 ここでe^log e xは定義によりxに等しい またa=b*eと書けた場合 指数の法則により a^k = b^k * e^k となる ここでk=log e xとおくと a^log e x = b^log e x * x but b is a/e then, ただしb=a/eであるから a^log e x a^log e x b^log e x=--------------- = ------------ e^log e x <これはxに等しい x よって通分されて b^log e x * x = a^log e x, a^log e x=a^log e x よってこの関数はべつの形にかけない この証明が厳密であるかは私にはわかりません 実際には操作関数は負の対数で累乗していますので m=- log e x とおくと e^m=1/xとなり a^m=b^m*e^m =a^m*e^(-m)*e^m =a^m となって同じ帰結となります ですからこの操作関数はプログラム上では 対数の累乗という一見エレガントではない書き方を採用しました kazu1 ・蛇足2 このソフトの名前をみてある小説の題を連 想された方は結構な年配の方だろうなあと勝 手に推測をします 参考図書 全ての男は消耗品である 角川文庫 kazu2 ・ソースコード README末は実際に動作しているプログラム の論理コードです 一部分を参考のために転用することはかま いませんが ほとんどの部分を移植したり一部を改変し たプログラムを再配布することはしないでく ださい ーーーーーーーーーーーーーーーーーーーーーーー ======================================== Color BrightNess tuner Unlimited Bright Blue Ver 0.04 Copy Right Miyama. 2010 July-August kaz_kimijima@yahoo.co.jp http://kimijima.at.infoseek.co.jp ======================================== *Outline *About Version Up *Permittion Right to use *No Responciblity to use *Canable Machine to use *Archive *Operation Methods *Attention *Appendex1 *Appendex2 *SourceCodes *Outline This Software is a tool to tune brightness of input-color. User can get new color code of rgb through this tool using from inputted rgb colorcode. The input methods are two ways as number of rgb text cells and color slide-bars. *About Version Up If You use this version 0.04 as first using, then you do not need this charper. This Charper is About no suitable points to use on the 0.01 version. The new version 0.04 is treatmented some unconvinient points on the base of 0.01. Next Sentences of error points on the 0.01 and else. a FFFFFF DecHex degimal Code-Expression's Mistake I had a mistake to composition of code for FFFFFF DecHex expressional style for HTML colorcode. The OutPut FFFFFF style color code from this tool, it can not appear on HTML document as suit color desined. FFFFFF color style user need the version 0.04,not 0.01. (the reason of this mistake, because I confused the rgb style kinds for each color expression style function) ( Correct Composision of color style red green blue seaquence :RGB function of VisialBasic :FFFFFF style of HTML blue green red seaquence :16777215 style inner seaquence ------ My Mistaked as: red green blue seaquence :RGB function of Visial Basic blue green red seaquence :FFFFFF style of HTML <<<<< 0 decreasing the value by operation , -log e x more and more increases to plus direction. And when a is on region of 0 <= a <= 1,the value of a^t , when t gets to increase so many number to plus direction, a^t 's value progresses to 0 value. 0 value on 0-1 space, It is also 0 as black on 255 's color code. (Practically, this tool on bright logarithmic mode cannot take compleate black code as 0 in some color cases. this is a reason that some parametores of color inner rate have sure value. And the equation of this chaper: y=a^ (-log e x) is y=x^ (-log e n) of just before charper.) Apenndex1-2 Algebra Sweeping for program code. I felt this expression of logarithmic part is not clean. and I supposed if it is able to try to make those complex style to more smart style or not. Next expression is for general thinking, and not practical function style on this code. a^log e x a is real number not vertual, x is too and 0