0
你不得不原諒我,說到JavaScript我很糟糕。創建一個illustrator腳本來輸出色板並列出它們
我正在使用Illustrator腳本創建一個充滿顏色的小冊子,我有這個工作好,現在有點亂,但它的工作原理。
我現在需要創建額外的頁面,列出那些Pantone顏色和他們在哪些頁面上。
例如,本書從第2頁開始,將有7種顏色,然後再轉到第3頁,再加上7種顏色,直到沒有剩下顏色爲止。
所以我需要做的是編輯下面的腳本說,經過7個項目由1
增加頁碼下面是腳本的一部分:
main();
function main()
{
var doc = app.activeDocument;
var selectedSwatches = doc.swatches.getSelected();
if (selectedSwatches.length > 0)
{
var text = 'var spots = new Array(\n';
for (var i = 0; i < selectedSwatches.length; i++)
{
var swatch = selectedSwatches[i]
var color = swatch.color;
// Spot
if (color.typename == "SpotColor") {
for(var j = 1; j < 8; j++){
text += '"' + color.spot.name + "page" + i+ '", ' + "\n";
}
color = color.spot.color;
}
}
var textend = ');';
saveTxt(text + textend);
}
else {
alert("No Swatches Selected.");
}
}
function saveTxt(txt)
{
var name = app.activeDocument.name.replace(/\.[^\.]+$/, '');
var path = (app.activeDocument.path != "") ? app.activeDocument.path : "~";
var saveFile = new File(path + "/" + name + "-SPOT.txt");
if(saveFile.exists)
saveFile.remove();
saveFile.encoding = "UTF8";
saveFile.open("e", "TEXT");
saveFile.writeln(txt);
saveFile.close();
alert("Saved to File:\n" + saveFile.fullName)
}
這是一部分害我的問題,我認爲:
// Spot
if (color.typename == "SpotColor") {
for(var j = 1; j < 8; j++){
text += '"' + color.spot.name + "page" + i+ '", ' + "\n";
}
color = color.spot.color;
}
既然這樣,第一O f所有它從第0頁開始,它應該從第2頁開始。
它也爲每種顏色輸出7行,每7行應輸出1種顏色。