Created
April 5, 2017 20:42
-
-
Save markbosky/a1ab050e9caacd61414d8c62a883d96e to your computer and use it in GitHub Desktop.
Adobe Acrobat Action Wizard: Takes a pdf with filename (mmddyy), clears document properties, then fills meta from parsed filename
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="UTF-8"?> | |
<Workflow xmlns="http://ns.adobe.com/acrobat/workflow/2012" title="Date as Filename to Document Properties (mmddyy)" description="Takes a pdf with filename (mmddyy), clears document properties, then fills meta from parsed filename." majorVersion="1" minorVersion="0"> | |
<Sources> | |
<Folder path="/C/documents"/> | |
</Sources> | |
<Group label="Untitled"> | |
<Command name="GeneralInfo" pauseBefore="false" promptUser="false"> | |
<Items> | |
<Item name="Author" type="text" value=""/> | |
<Item name="Keywords" type="text" value=""/> | |
<Items name="LeaveAsIs"> | |
<Item name="Author" type="boolean" value="false"/> | |
<Item name="Keywords" type="boolean" value="false"/> | |
<Item name="Subject" type="boolean" value="false"/> | |
<Item name="Title" type="boolean" value="false"/> | |
</Items> | |
<Item name="Subject" type="text" value=""/> | |
<Item name="Title" type="text" value=""/> | |
</Items> | |
</Command> | |
<Command name="JavaScript" pauseBefore="false" promptUser="false"> | |
<Items> | |
<Item name="ScriptCode" type="text" value="var filename = this.documentFileName.replace(/.pdf/,"");
this.info.filename = filename;
this.info.title = filename;
var serial_date_str = filename.split("_");
this.info.serial = serial_date_str[0];
if(typeof serial_date_str[1] !== 'undefined'){
 var dateString = serial_date_str[1];
 var dateLen = dateString.length;
 var res = /^\d{1,2}\d{1,2}\d{2}$/.test(dateString);
}

if(typeof dateString !== 'undefined'){
 if(dateLen == 6 && res == true){
 this.info.date = dateString;
 var dateStringParse = dateString.match(/.{1,2}/g);
 this.info.month = dateStringParse[0];
 this.info.day = dateStringParse[1];
 this.info.year = "20"+dateString.substr(4, 2);
 }
 else if(dateLen != 6){
 var lastTwo = dateString.slice(-2);
 var yearTest = /^\d{1,2}$/.test(lastTwo);
 
 if(yearTest == true){
 this.info.year = "20"+lastTwo;
 } 
 }
}"/> | |
<Item name="ScriptName" type="text" value=""/> | |
</Items> | |
</Command> | |
<Command name="WorkflowPlaybackSaveFiles" pauseBefore="false" promptUser="false"> | |
<Items> | |
<Item name="AddToBaseName" type="boolean" value="true"/> | |
<Item name="DocSaveDestType" type="string" value="WorkflowPlaybackSaveInAFolder"/> | |
<Item name="DontOverwrite" type="boolean" value="true"/> | |
<Item name="EmbedIndex" type="boolean" value="false"/> | |
<Item name="FS" type="atom" value="DOS"/> | |
<Item name="FileVariation" type="integer" value="0"/> | |
<Item name="HandleOutput" type="boolean" value="true"/> | |
<Item name="InsertAfterBaseName" type="text" value="processed"/> | |
<Item name="InsertBeforeBaseName" type="text" value=""/> | |
<Item name="NumbericNaming" type="boolean" value="false"/> | |
<Item name="OptimizePDF" type="boolean" value="true"/> | |
<Item name="PreselectedFolderPath" type="text" value="/C/documents"/> | |
<Item name="PresetName" type="text" value="Standard"/> | |
<Item name="RunPDFOptimizer" type="boolean" value="true"/> | |
</Items> | |
</Command> | |
</Group> | |
</Workflow> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment