8

XAML ドキュメントでCMYKカラーを直接指定する方法はありますか?

# 文字を前に付けると RGB カラーが作成されますが、CMYK カラーを指定するにはどうすればよいですか?

いくつかのメモ:

  1. 問題は、CMYK から RGB への変換ではなく、実際の CMYK を使用することです
  2. 目的は、生成されたXPSドキュメント (たとえば System.Windows.Xps.Packaging を使用) が色を CMYK として認識し、カラー コードを "ContextColor /swopcmykprofile.icc a,b,c,d,e" ではなく "#" として生成できるようにすることです。あぁぁぁぁぁぁぁぁぁぁぁぁぁぁ」

ColorContext を使用して CMYK カラーを定義しようとしましたが、成功しませんでした。

4

2 に答える 2

7

もう一度OK!CMYK は XAML で直接使用できます。

<Grid Background="ContextColor file://C:/WINDOWS/system32/spool/drivers/color/EuroscaleCoated.icc 1.0,0.0,0.0,1.0,1.0">
于 2011-01-31T15:15:35.163 に答える
6

わかった!私は答えを見つけました:

WPF がカラー モデルを使用する方法は、System.Windows.Media.Colorの静的コンストラクターFromValues()とカラー プロファイルの導入によるものです。

たとえば、次のコード:

var c = Color.FromValues(
               new float[] {1.0f,0.0f,0.0f,0.0f } , 
               new Uri("file://C:/ICCProfile.icc",  UriKind.Absolute));

100% シアン色を作成します。

プロファイルはhttp://www.eci.org/doku.php?id=en:startからダウンロードできます

このソリューションを XpsDocumentWriter でテストしたところ、正しい CMYK カラー コードが作成されることが確認されました。

XAML の場合、IValueConverter"~C,M,Y,K" (RGB の #RRGGBB) のようなものを実際のCMYK カラーに変換する an を構築するだけです。

于 2011-01-31T13:58:57.193 に答える