Выкладываю ещё несколько скриптов для выполнения задач, реализации которым я не нахожу в 10 Илле, но с которыми лично мне порой приходится сталкиваться. Для тех, кто не знает, скрипты нужно сохранить в отдельных файлах с расширением *.js Дальше удобно поместить их в папку "Program Files\Adobe\Illustrator 10\Presets\Scripts\" и они появятся в меню File - Scripts - ...
Собсна, вот они:
1)
/* Автоматическая замена каждого из всех выделенных объектов ключевым объектом (с подстройкой размера подставляемого объекта). Типа, как "Replace Symbol", только действует с любыми обектами (даже внутри групп и Compound Path). Ключевым объектом является самый нижний (по глубине) из выделенных */
mySelection = activeDocument.selection;
if (mySelection.length>0){
if (mySelection instanceof Array){
goal=mySelection[mySelection.length-1];
centerPoint=goal.position[0]+(goal.width/2);
centerPointVert=goal.position[1]-(goal.height/2);
for (i=0; i<(mySelection.length-1); i++){
currItem=mySelection;
centerPoint=currItem.position[0]+(currItem.width/2);
centerPointVert=currItem.position[1]-(currItem.height/2);
ratio=100/(goal.width/currItem.width);
ratioV=100/(goal.height/currItem.height);
newItem=goal.duplicate();
newItem.position=Array((centerPoint-(goal.width/2)),(centerPointVert+(goal.height/2)));
if(ratio<ratioV){
newItem.resize(ratio,ratio,true,true,true,true,ratio)
}else{
newItem.resize(ratioV,ratioV,true,true,true,true,ratioV)
}
currItem.remove()
}
}
}else{}
2)
/* Автоматическая замена каждого из всех выделенных объектов ключевым объектом, только с сохранением размера подставляемого объекта. Ключевым объектом является самый нижний (по глубине) из выделенных.*/
mySelection = activeDocument.selection;
if (mySelection.length>0){
if (mySelection instanceof Array){
goal=mySelection[mySelection.length-1];
centerPoint=goal.position[0]+(goal.width/2);
centerPointVert=goal.position[1]-(goal.height/2);
for (i=0; i<(mySelection.length-1); i++){
currItem=mySelection;
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)));
currItem.remove()
}
}
}else{}
3)
/* Отображение разрешения выделенного объекта(ов). Выскакивает сообщение с цифрой разрешения. Если разрешения у них разные, то выскочит надпись "Resolutions are different" */
mySelection = activeDocument.selection;
if (mySelection.length>0){
if (mySelection instanceof Array){
comRes=mySelection[0].resolution;
eq=true;
for (i=0; i<(mySelection.length); i++){
res=mySelection.resolution;
if(res!=comRes){
eq=false
}
}
if(eq){
alert(comRes)
}else{
alert('Resolutions are different')
}
}
}else{}
Собсна, вот они:
1)
/* Автоматическая замена каждого из всех выделенных объектов ключевым объектом (с подстройкой размера подставляемого объекта). Типа, как "Replace Symbol", только действует с любыми обектами (даже внутри групп и Compound Path). Ключевым объектом является самый нижний (по глубине) из выделенных */
mySelection = activeDocument.selection;
if (mySelection.length>0){
if (mySelection instanceof Array){
goal=mySelection[mySelection.length-1];
centerPoint=goal.position[0]+(goal.width/2);
centerPointVert=goal.position[1]-(goal.height/2);
for (i=0; i<(mySelection.length-1); i++){
currItem=mySelection;
centerPoint=currItem.position[0]+(currItem.width/2);
centerPointVert=currItem.position[1]-(currItem.height/2);
ratio=100/(goal.width/currItem.width);
ratioV=100/(goal.height/currItem.height);
newItem=goal.duplicate();
newItem.position=Array((centerPoint-(goal.width/2)),(centerPointVert+(goal.height/2)));
if(ratio<ratioV){
newItem.resize(ratio,ratio,true,true,true,true,ratio)
}else{
newItem.resize(ratioV,ratioV,true,true,true,true,ratioV)
}
currItem.remove()
}
}
}else{}
2)
/* Автоматическая замена каждого из всех выделенных объектов ключевым объектом, только с сохранением размера подставляемого объекта. Ключевым объектом является самый нижний (по глубине) из выделенных.*/
mySelection = activeDocument.selection;
if (mySelection.length>0){
if (mySelection instanceof Array){
goal=mySelection[mySelection.length-1];
centerPoint=goal.position[0]+(goal.width/2);
centerPointVert=goal.position[1]-(goal.height/2);
for (i=0; i<(mySelection.length-1); i++){
currItem=mySelection;
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)));
currItem.remove()
}
}
}else{}
3)
/* Отображение разрешения выделенного объекта(ов). Выскакивает сообщение с цифрой разрешения. Если разрешения у них разные, то выскочит надпись "Resolutions are different" */
mySelection = activeDocument.selection;
if (mySelection.length>0){
if (mySelection instanceof Array){
comRes=mySelection[0].resolution;
eq=true;
for (i=0; i<(mySelection.length); i++){
res=mySelection.resolution;
if(res!=comRes){
eq=false
}
}
if(eq){
alert(comRes)
}else{
alert('Resolutions are different')
}
}
}else{}