我在Illustrator中有一组拼凑的形状,但目前它们都是黑白两色。
例如:
但是,我已经得到了一系列颜色,我想用它们以随机顺序填充每个形状(最好没有两种颜色彼此相邻),这样它看起来像: / p>
例如:
我的第一个文件中的马赛克是250多件,我的第二个文件有800多件。
答案 0 :(得分:2)
/*
This script performs random color fill.
Select art items and colors in swatches panel and run script.
Note: neighbor art items can get the same colors.
*/
var doc = app.activeDocument;
var selItems = doc.selection;
var sw_sel = doc.swatches.getSelected();
if (sw_sel.lenght==0 )
exit;
for (var i=0; i<selItems.length; i++)
{
var selItem = selItems[i];
if(selItem.typename == "PathItem" ||
selItem.typename == "CompoundPathItem")
{
var randomColorIdx = getRandom(0, sw_sel.length - 1);
setColor(selItem, sw_sel[randomColorIdx].color);
}
}
function setColor(pItem, color)
{
pItem.filled = true;
if(pItem.typename == "PathItem")
pItem.fillColor = color;
else
pItem.pathItems[0].fillColor = color;
}
function getRandom(min, max)
{
return Math.floor(Math.random() * (max - min + 1)) + min;
}
答案 1 :(得分:0)
有一些插件和脚本可以完成此任务。
Randomill是一个这样的插件,而robotwood的'Random Swatches Fill' script是另一个这样的插件。无论使用哪种方法,都可以从“色板”面板中使用色板,然后将它们随机应用于一组对象。