Skip to main content
Known Participant
October 13, 2022
Question

extend script is not working in photoshop but working fine in illustrator

  • October 13, 2022
  • 1 reply
  • 120 views

function fillcolor(a,b,c,name){
Path_Count=0;
var index;
var thisPageItem;
var doc=app.activeDocument;
doc.selection = null;
var thisLayer;
var DocLayersLength=doc.layers.length;
for(var i=0;i<DocLayersLength;i++)
{
if(doc.layers[i].name==name)
{
index=i;
break;

}
}
if(doc.layers[index].groupItems.length>0 && doc.layers[index].pageItems[0].name !="Clipped_Group"){
ExpendFunction(index,0);
}
if(doc.layers[index].pageItems[0].name!="Clipped_Group"){
for(var j=0;j<doc.layers[index].pageItems.length;j++){
Path_Count++;
var p = doc.layers[index].pageItems[j];
if(p.typename=="CompoundPathItem"){
p.pathItems[0].fillColor=makeColor(a,b,c);
p.strokeColor=makeColor(0,0,0);
exportFileToJPEG();
}else{
p.fillColor = makeColor(a,b,c);
p.strokeColor=makeColor(0,0,0);
exportFileToJPEG();
}
}
} else{
var grplen=doc.layers[index].groupItems.length;
for(var j = 0; j <grplen; j++){
Path_Count++;
/*******Remove Image Clipping.******************/
var NewGroup=doc.layers[index].groupItems[j];
NewGroup.placedItems.removeAll();
/***********************************************/
if(NewGroup.pageItems[0].typename=="CompoundPathItem"){
NewGroup.pageItems[0].pathItems[0].fillColor=makeColor(a,b,c);
NewGroup.pageItems[0].pathItems[0].strokeColor=makeColor(0,0,0);
exportFileToJPEG();
}else{
NewGroup.pathItems[0].fillColor = makeColor(a,b,c);
NewGroup.pathItems[0].strokeColor=makeColor(0,0,0);
exportFileToJPEG();
}
}

}
return Path_Count;
}

This topic has been closed for replies.

1 reply

Loic.Aigon
Legend
October 18, 2022

Short answer : DOM

Long answer : while (some) Adobe Products share both the Javascript Core and some DOM methods and properties, they will soon diverge given that each app has its own sets of objects. So it's pretty obvious that a script dedicated to Illustrator will possibly fail in another app.

Advice : if you want this to "work" in another app, try to understand the app peculiarities, its objects and how much changes are needed to this script to have something functional.