首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在WPF/XAML中使用CMYK颜色

在WPF/XAML中使用CMYK颜色
EN

Stack Overflow用户
提问于 2011-01-28 10:40:21
回答 2查看 3.1K关注 0票数 8

有任何方法可以直接在文档中指定颜色吗?

以#字符作为前缀将创建RGB颜色,但如何指定CMYK颜色?

一些注意事项:

  1. 问题不是将从CMYK转换为RGB,而是使用实际的CMYK
  2. ,目的是允许生成的XPS文档(例如使用System.Windows.Xps.Packaging )将颜色看作CMYK,生成颜色代码为"ContextColor /swopcmykprofile.icc a,b,c,d,e“,而不是作为”#aarrggbb“

G 211

我试着用ColorContext来定义CMYK颜色,但没有成功。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-01-31 15:15:35

好的再来一次!事实证明,它比我要简单得多: CMYK在XAML中是直接可用的:

代码语言:javascript
运行
复制
<Grid Background="ContextColor file://C:/WINDOWS/system32/spool/drivers/color/EuroscaleCoated.icc 1.0,0.0,0.0,1.0,1.0">
票数 7
EN

Stack Overflow用户

发布于 2011-01-31 13:58:57

好的!我找到了答案:

WPF使用颜色模型的方式是由System.Windows.Media.Color的静态构造器FromValues()和引入颜色配置文件:

例如,以下代码:

代码语言:javascript
运行
复制
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颜色。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4827270

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档