DTP駆け込み寺

[ 返信 ]

オブジェクト形状の置き換えスクリプトで、色を保持したい

オブジェクト形状の置き換えスクリプトで、色を保持したい

はじめて投稿させていただきます。

http://illustrator.hilfdirselbst.ch/dokuwiki/en/skripte/javascript/zamena
こちらのスクリプトをAI CS6にて動作させ、ポテンシャルを感じ自分でカスタムができないものかと、JavaScriptがまったく無知識のまま触っているのですがうまくゆきません。
元々のスクリプトは画像左上→左下のように「選択済オブジェクトのうち最前面のオブジェクト(画像ではローマ数字のII)で他オブジェクトを置き換える」というものですが、
左上→右下のように「形状は置き換えても色は保持」ということをスクリプトで実現できないものか… と考えております。
fillColor(塗りの色)のみで、CMYKカラーのみ扱いで大丈夫です。
どうかお知恵を貸していただきますと幸いです。

最後にスクリプト全文を貼付け致します。

//$.bp()
mySelection = activeDocument.selection;
if (mySelection.length>0){
if (mySelection instanceof Array){
goal=mySelection[0];
centerPoint=goal.position[0]+(goal.width/2);
centerPointVert=goal.position[1]-(goal.height/2);
for (i=1; i<mySelection.length; i++){
currItem=mySelection[i];
centerPoint=currItem.position[0]+(currItem.width/2);
centerPointVert=currItem.position[1]-(currItem.height/2);
newItem=goal.duplicate();
newItem.position=Array((centerPoint-(goal.width/2)),(centerPointVert+(goal.height/2)));
newItem.artworkKnockout=currItem.artworkKnockout;
newItem.clipping=currItem.clipping;
newItem.isIsolated=currItem.isIsolated;
newItem.evenodd=currItem.evenodd;
if(currItem.polarity){
newItem.polarity=currItem.polarity;
}
newItem.moveBefore(currItem)
currItem.remove()
}
}
}else{}

長文にてお目汚し、失礼しました。

[18959] stoshi (2016/11/28 Mon 22:12)


残り1件

  1. [18959] オブジェクト形状の置き換えスクリプトで、色を保持したい stoshi 2016/11/28 22:12 *
    1. [18962] Re: オブジェクト形状の置き換えスクリプト . 2016/12/02 08:52