公開日:2017年6月14日
ひとつずつスウォッチの濃淡を作っていくのは面倒なもの。いっそ「最初に一気に作ってしまおう」という意図で作成したスクリプトです。
1.InDesignのドキュメントを開いて、スクリプトを起動します。
2.ダイアログが表示されます。【濃淡をつくるスウォッチ】のプルダウンメニューから、濃淡を作りたいスウォッチを選択します※。
※[なし][レジストレーション][紙色]を選択すると、アラートが出て中断されます。
3.指定したスウォッチの濃淡スウォッチが10%刻みで作成されます※。
※すでにひとつでも濃淡スウォッチが作成されているスウォッチからは、同名の他濃度のスウォッチを作成できません。
//10%刻みで濃淡スウォッチを作成
//2017.06.12
//動作確認:InDesign CS4-6
//スウォッチのリストを作成
var count = app.activeDocument.swatches.length;
var SwatchnameList = new Array();
for(var i = 0; i < count; i++){
SwatchnameList.push(app.activeDocument.swatches[i].name);
}
//ダイアログ
exDia = app.dialogs.add({ name:"のうたん!", canCancel:true });
with(exDia.dialogColumns.add()){
with(borderPanels.add()){
staticTexts.add({staticLabel:"【濃淡をつくるスウォッチ】"});
var sws = dropdowns.add({stringList: SwatchnameList, selectedIndex:0, minWidth:120});
}
}
//ダイアログ表示
var Diashow = exDia.show();
var myColor = app.activeDocument.colors.item(sws.stringList[sws.selectedIndex])
var ColorName=sws.stringList[sws.selectedIndex]
if(Diashow===true){
if((ColorName=="None")||(ColorName=="Registration")||(ColorName=="Paper")){
alert("[なし]、[レジストレーション]、[紙色]では濃淡スウォッチを作成できません")
}
else{
makeswatch10()
exDia.destroy();
}
}else{
exDia.destroy();
}
//濃度作成用関数
function makeswatch10(){
var arr_10 = new Array(10,20,30,40,50,60,70,80,90);
var count_10=arr_10.length;
try{
for(var i = 0; i < count_10; i++){
app.activeDocument.tints.add({
baseColor:myColor,
tintValue:arr_10[i]
});
};
}
catch(e){
alert("すでに存在している濃度のスウォッチがあります")
}
}
前回エントリから2ヶ月近く経っててびっくりだ…