印刷用にRGBカラーをCMYKに変換しようとしています。この変換のスケールは Adobe Photoshop です( Image -> Mode -> CMYK color )
私は2つの解決策を試しましたが、どれも正しい値を返しません:
解決策 1 - .NET Framework を使用する
最初は、これらの手順に従いました
Adobeから ICC プロファイル (Windows 版) をダウンロードします。
を CMYK に変換します
#color
MSDN を使用
System.Windows.Media.Color.FromValues // return Color
string convretedColor = string.Format("#{0:X2}{1:X2}{2:X2}", _color.R, _color.G, _color.B)
ここに結果があります:
プロフィール :
CoatedFOGRA27.icc
元の色:
#2f00ff
変換後の色 :
#3b4996
Adobe Photoshop での変換結果 (同じプロファイル) : もったいない
#3b4996
!
解決策 2 - Windows カラー システム (WCS) を使用する
同じ手順でCodoのソリューションも試しました
ここに結果があります:
プロフィール :
CoatedFOGRA27.icc
元の色:
#2f00ff
変換後の色 :
#2032FF
フォトショップ :
#3b4996
編集
Codo のコメントによると、色の概念を理解する上でいくつかの根本的な問題があると思います!! (間違っていたら訂正してください)
どの色についても、さまざまなカラー モデルがあります , RGB
, CMYK
, ...
RGB
色を生成する (レッド グリーン ブルー) と CMYK (シアン マゼンタ イエロー * ) の組み合わせを示します。これらのモデルの値は、互いに簡単に変換できます。
たとえば:
RGB HEX :
#2F00FF
RGB :
47 - 0 - 255
CMYK :
0,816 - 1,000 - 0,000 - 0,000
ほとんどすべてのモニターRGB
は、色を表示するために使用します。印刷された色 (LED の代わりにインクを使用しているため) は、モニターに表示される色とはまったく異なります。
この問題については、Photoshop などのイメージ エディターを使用しますCMYK **MODE**
。このモードでは、色を選択するRGB
と、エディターはそれを印刷後に表示される色に変換し、それを画面に表示します。この変換は、カラー プロファイル (ここでは ICC ) に完全に依存します。