为角色设置FillColor

时间:2015-10-17 11:00:14

标签: adobe-illustrator

我对FillColor属性有一点问题。从脚本参考看来,可以用RGB颜色设置它。

RGBColor RGB = new RGBColor();
.CharacterAtributes.FillColor = RGB;

但如果我试图将其反转,我会一直收到错误

RGB = .CharacterAtributes.FillColor;

即使添加对RGB颜色的引用

RGB = .CharacterAtributes.FillColor.RGBColor;

据我所知,FillColor应该是包含color对象的RGBColor对象。但如果我检查调试它只包含CMYK值为double。它是否已知毛刺,或者我错过了将填充颜色作为RGB的东西?

谢谢,

米哈尔

2 个答案:

答案 0 :(得分:0)

我对颜色对​​象如何工作的理解是FillColor将包含一个颜色对象,它将具有以下子类之一:

CMYKColor
GradientColor
GrayColor
LabColor
NoColor
PatternColor
RGBColor
SpotColor

听起来您的填充颜色设置为CMYKColor,如果您需要RGBColor,则必须从CMYK进行转换并使用转换后的值创建。我知道脚本API中没有内置的颜色转换库,但有几个库可用。这是我发现的快速Javascript color conversion RGB, CMYK and HSV

祝你好运。

答案 1 :(得分:0)

我认为我对FillColor的理解是错误的。它将 任何一个类,而不是

CMYKColor
GradientColor
GrayColor
LabColor
NoColor
PatternColor
RGBColor
SpotColor

在这种情况下,分配应如下所示:

RGB.Red = .CharacterAtributes.FillColor.Red;
RGB.Green = .CharacterAtributes.FillColor.Green;
RGB.Blue = .CharacterAtributes.FillColor.Blue;

迈克尔