-
1. Re: Auto apply paragraph style
Vamitul Nov 15, 2012 11:19 PM (in response to indegn5)what error does it give??
try this
var doc=app.activeDocument; function resetOpt(){ // saves the find change options and resets the to default var old_fCGOpts=app.findChangeGrepOptions.properties; var old_fGPref=app.findGrepPreferences.properties; var old_cGPref=app.changeGrepPreferences.properties; app.findChangeGrepOptions=NothingEnum.NOTHING; app.findGrepPreferences=NothingEnum.NOTHING; app.changeGrepPreferences=NothingEnum.NOTHING; return [old_fCGOpts,old_fGPref,old_cGPref] } function restoreOpt(myOpt){ app.findChangeGrepOptions.properties=myOpt[0]; app.findGrepPreferences.properties=myOpt[1]; app.changeGrepPreferences.properties=myOpt[2]; } var myOpt=resetOpt(); //save and reset Find/Change Options app.findGrepPreferences.appliedParagraphStyle = doc.paragraphStyles.itemByName("[Basic Paragraph]"); app.changeGrepPreferences.appliedParagraphStyle = doc.paragraphStyles.itemByName("Paragraph Style 1"); var myResult1 = doc.changeGrep(); restoreOpt(myOpt); //restore previous find change options -
2. Re: Auto apply paragraph style
indegn5 Nov 16, 2012 2:41 AM (in response to Vamitul)your script a wow!
thanks vami.
bobylon
-
3. Re: Auto apply paragraph style
Jump_Over Nov 16, 2012 2:58 AM (in response to indegn5)Hi,
So, if myResult is an array with all textRanges with Basic Paragraph applied
start to iterate it:
....
var ParaStylesToAdd_ArrayOfNames = ["P4", "P3", "P2"];
var counter = ParaStylesToAdd_ArrayOfNames.length;
from (k=0; k<myResult.length; k++)
{
myStory = myResult[k].parentStory;
myResult[k].changeGrep();
basePara = myResult[k].paragraphs[-1];
while (counter--)
{
basePara = myStory.paragraphs.nextItem(basePara);
basePara.appliedParagraphStyle = myDoc.paragraphStyles.itemByName(ParaStylesToAdd_ArrayOfNames[counter-1]);
}
}
...
Watch two assumings here:
1. there is enough paras in myStory starting from Basic Para ==> to add your next styles.
2. if two or more Basic Paras are in the same MyStory ==> they can't be closer then ParaStylesToAdd_ArrayOfNames.length distance of paragraphs.
Watch also up_side_down order of para names in an array;
rgds
-


