Batch processing of graphics

I'd like to update graphics in the header and remove graphics in the footer.  I have thousands of documents that need modified.  Can the Action Wizard be used to automate this?  I see that I can drop headers and footers but the headers contain last modified date information that I need to maintain for the users of the documents.

Acrobat cannot create or modify a header/footer layer if it contains both text and graphics. The H/F tool in Acrobat  only supports text.

Similar Messages

  • Adobe Acrobat  9 Pro - How can I speed up my Batch Processing sequence

    Adobe Acrobat 9 Pro Version 9.0.0
    My company upgraded from Adobe Acrobat 7 to Acrobat 9 recently. Now, whenever I run a batch sequence on one 2003 Word file, it takes over 20 minutes - that's one Word doc. Before with version 7, it took only a few minutes.
    My Batch Sequence has only one command - the Open Options command.
    Question
    What can I do to speed up this Batch Processing sequence?
    FYI
    My Word doc contains no graphic - merely text with a TOC and Index.
    PS
    My system has 3.50 GB of RAM

    I have advanced tagging turned off.
    I'm only using these two Word options:
    Convert cross-ref and table of contents to links.
    Convert footnote and endnote links.

  • Add layers from other psd file and retain text layers (Batch processing)

    I want to batch process a large number of portraits adding text info from the filename (year_name_number.jpg) to existing text layers. I want to make a template psd file containg the correct labeled text layers formatted and adjusted (With bleding effects and more) How can i add layers from an other psd file to the active document and retaining the text layers editable. The place command in PS5 adds the file as a smart object, no use.
    Any ideas?
    I tried the combined action/script way, but no joy so far. Right now i am making the text layers with a action, then calling the script from the action. It works but its difficult to make different templates from adjusting a action.
    The code i am using now (in combination with a action creating the 3 text layers and other grapchical elements)
    var docRef = activeDocument;
    // strip the extension off
    var fileNameNoExtension = docRef.name;
    fileNameNoExtension = fileNameNoExtension.split( "_" );
    if ( fileNameNoExtension.length > 1 ) {
                    fileNameNoExtension.length--;
    fileNameNoExtension = fileNameNoExtension.join("_");
    var myString = fileNameNoExtension;
    var mySplitResult = myString.split("_");
    var textLayer = docReflayers['Year']; // define the existing text layer to a var
    docRef.activeLayer = textLayer;
    textLayer.kind = LayerKind.TEXT;
    var T1 = textLayer.textItem;
    T1.contents = mySplitResult[0]
    var textLayer = docRef.layers['Name']; // define the existing text layer to a var
    docRef.activeLayer = textLayer;
    textLayer.kind = LayerKind.TEXT;
    var T2 = textLayer.textItem;
    T2.contents = mySplitResult[1]
    var textLayer = docRef.layers['Number']; // define the existing text layer to a var
    docRef.activeLayer = textLayer;
    textLayer.kind = LayerKind.TEXT;
    var T3 = textLayer.textItem;
    T3.contents = mySplitResult[2]
    Thanks
    Eivind

    norway_photo wrote:
    Here is my intended workflow:
    - A set of same size portraits labeled "year_name_number.jpg"
    - A template.psd os same size with graphical elements and text layers (named "year", "name" and "number")
    - A script or action copy/pasting og adding all layers from the template.psd file to the open portrait file, retaining text layers editable.
    - A script (The one i have working) changing the text layers added from the template to text from the filename.
    - A action saving this as a PDF ready for print.
    This way i can process a large number of portraits, add names and other information and save it as a file ready for print.
    I can image it is much easier to edit a template than writing a script or an action creating all the graphical elements.
    And even better, to change this template for different customers/departments/logos.
    Basically i need a way to add layers to an open file using a batch file or script.
    Eivind
    OK I understand what your trying to do and now I do not agree with your conclusion you made in you first append about place being no good for you.  Its is I think a perfect solution for you. I feel you need to address the process from a new angle.
    I am very familiar with templates I use them all the time for collages which I populate with an actions.  However I do not batch this process and my process is interactive.  If you look at what your trying to do from the angle of creating a collage.  You will see what you are trying to do is automate the population of a single image collage using a single template in a batch process.  An example of one of my single image collage populated by one of my actions that has been saved as a jpeg image file.  My actions are played in Photoshop with no document opened.  After my action is play there is a single collage document in Photoshop that contains layers that can be tweaked all text is in text layers the can be edited.
    If I wanted to automate the batch population of a single collage template I think all I would need to know is three thing.
    1.) The location of the input images
    2.) The full Path of the PSD template file.
    3.) The location to store the output  file
    Looking at some of the recent threads in this forum I could almost cut and past the script you want to put  together.  There was a recent thread that had javascript code to process files in a folder and process only a list of file types.   There also was a thread that had a place function in it to place images into the current document or create a new document to place the image into.  The image was read from the web using a URL.  This thread has code to change a text layer.  At first I though you may need to open these image file to get at its meta-data to get the Portrait image Exif creation data.  But see all you need is the Filename for it has the data you want the year and name.  So the function that get the image files from the folder will give you that. The   Script needs to Open the Template PSD file and retrieve the prototype text layers text content  then the scrip needs a loop that get the next image file to be processed from the folder get filename function. In the loop the image files are place into the open template above a place holder layer like the Background layer. Then using the prototype text contents and the filename are used  create the new content for the text layer and then change the text layers content to it.  Follow that up with a save as for the output file.  Once the output file is saved delete the placed smart object layer.  When this loop ends the script will close the document with no save and end. As for the three inputs you need  the script could either have a dialog like the images processor or simply prompt you for the folders and template file.

  • Saving JPEG images in a batch process

    Please, I need help....
    I'm making an application that loads an image, perform some manipulations and save it into a JPEG file..
    The code I use to paint that image to a Graphics object is this:
              public void paintToImage(Graphics gr){               Graphics2D g = (Graphics2D)gr;               //CONFIGURO O RENDER PARA SER O MELHOR POSS?VEL                g.setRenderingHint(RenderingHints.KEY_RENDERING,RenderingHints.VALUE_RENDER_QUALITY);               g.setRenderingHint(RenderingHints.KEY_COLOR_RENDERING,RenderingHints.VALUE_COLOR_RENDER_QUALITY);               //seto o clip rect               g.setClip(0,0,w,h);               //pinto o fundo de branco               g.setColor(Color.white);               g.fillRect(0,0,w,h);               if(img==null)return;               g.drawImage(img, -origemXY.width, -origemXY.height,this); //'this' means an instance of my JPanel          }I call this method to paint my image into a BufferedImage this way:
         BufferedImage bi = new BufferedImage(myComponent.width,myComponent.height, BufferedImage.TYPE_INT_RGB);     myComponent.paintToImage(bi.createGraphics());If I call it to a single image (like an ActionEvent for a selected image) it works fine...
    But when I try to call it from a batch process, like a loop to paint several selected images, it aways produces a white JPEG.
    All the code inside my "paintToImage()" method works fine but the line "g.drawImage(img, -origemXY.width, -origemXY.height,this);".
    I know that because if I use "g.setColor(Color.red)" instead of "g.setColor(Color.white)" it produces a red JPEG.
    Could it be a proble with the ImageObserver that I'm using?
    The method below is invoked to save several images selected in a JTree, but it only produces white Images:
                   public void actionPerformed(ActionEvent e){                    TreePath paths[] = filesTree.getSelectionPaths();                    for(int i=0;i<paths.length;i++){                         filesTree.setSelectionPath(paths);//this line sets the selected image that is about to be painted by my previewPane into a BufferedImage                         try{                         BufferedImage bi = new BufferedImage(previewPane.getImagePane().getPreferredSize().width, previewPane.getImagePane().getPreferredSize().height, BufferedImage.TYPE_INT_RGB);                         previewPane.paintToImage(bi.createGraphics());                         /* write the jpeg to a file */                         File file = new File("D:/VER/0000" + i + ".jpg");                         FileOutputStream out = new FileOutputStream(file);                         /* encodes the image as a JPEG data stream */                         JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);                         JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(bi);                              param.setQuality(1.0f, false);                         encoder.setJPEGEncodeParam(param);                         encoder.encode(bi);                         out.close();                         }catch(IOException ioex){                              ioex.printStackTrace();                         }                    }               }
    What is the problem?? What am I doing wrong?? any help wold be greate...
    Thank's all and aloha from Brazil...

    Reformat your problem, you can infinitly insert any number of '\n's here,

  • Batch process to Tiff Image

    I have several hundreds of psd documents every now and then and I need to print them out to black&white TIFF format. Is there a way that I can do an automation in FW CS4? I know how to get them into greyscale from Bridge but I am looking for Black&White Tiff image. is there a script that I can use? I haven't got to scripting experience yet. Can you help? I really appreciate your helps.

    Just so we're clear, Fireworks is a screen graphics application and it may not be particularly efficient if you try to batch process a huge number of high resolution images.
    That said, you can probably create a custom command to do what you want, and it doesn't require programming knowledge. FW already has batch commands for resizing, renaming and exporting files, so the only piece you need to add to the puzzle is sharpening.
    Open a file in Fireworks. Using ONLY key commands, apply the unsharp mask filter. TAB through the input fields rather than using your mouse. Fireworks records keyboard commands, but not options selected with the mouse.
    When you have the sharpening you want, tab to the OK button and press enter on the keyboard.
    Open the History panel (Window > History)
    Select the Filter Image step and click on the disc icon at the bottom right of the panel. This lets you save the shrapening as a custom command. It will appear at the bottom of your Commands menu in FW.
    Now go back to Bridge
    Select your images
    Choose Tools > FIreworks > Batch Process
    Your images will appear in included files window at the bottom of the Batch wizard
    Click next
    From the Batch options pane, add the processes you want:Scale, Export and fromthe Commands section choose Convert to Greyscale and your unsharp mask custom command.
    From the Include in Batch pane, set the order of the process to Convert to Greyscale, Scale, Unsharp Mask and export. Select the Scale command and change the settings as desired at the the bottom of the wizard window,
    Select the Export command, choose custom from the settings area and then click the edit button so you can choose TIFF. When you've adjusted the settings to your liking, click OK (You willnot see an image preview when you alter these settings).
    Click Next and choose to export the files to a custom location, so  you do not overwrite your existing files.
    If you like, choose the Save Script button to save the entire process as a custom batch command.
    Click the Batch button, and go have lunch. ;-)
    HTH

  • Batch process RAW exposures, please help!

    Hello, I'm new to photoshop scripting for windows, and I was wondering if anyone knew how to batch process a folder of raw files, change the the raw's exposure, and save as jpg to another folder, based on a condition within the file's name, then close the opended jpg  document.
    My goal is to have a script that extracts the correct exposures from sets of three bracketed raw files, which I usually have seperated by 2 EV's.  So for example, say I have a folder Called Batch Processing on the C drive, and I have two folders,
    C:\Batch Processing\JPG
    C:\Batch Processing\RAW
    and in the RAW folder I have some files called,
    Image_01_E01.cr2
    Image_01_E02.cr2
    Image_01_E03.cr2
    If the file has "_E01" at the end, I want to open that raw file, change the exposure to -4, save the file with the same name, except the last 4 characters, and add some number to the end, so for example, it would end up being "Image_01" + "_E01".  This would end up being saved to the JPG folder. Then open up the same file, change the exposure to -2 and save as "Image_01" + "_E02".
    To make this post short, here is the conversion table I'm trying to achieve -
    Image_01_E01.cr2 -> Image_01_E01.jpg Exposure = -4
    Image_01_E01.cr2 -> Image_01_E02.jpg Exposure = -2
    Image_01_E02.cr2 -> Image_01_E03.jpg Exposure = -2
    Image_01_E02.cr2 -> Image_01_E04.jpg Exposure = 0
    Image_01_E02.cr2 -> Image_01_E05.jpg Exposure = 2
    Image_01_E03.cr2 -> Image_01_E06.jpg Exposure = 2
    Image_01_E03.cr2 -> Image_01_E07.jpg Exposure = 4
    After that, close all open files. Then, if there is another set of raws, repeat for them as well. For example -
    Image_02_E01.cr2 -> Image_02_E01.jpg Exposure = -4
    Image_02_E01.cr2 -> Image_02_E02.jpg Exposure = -2
    Image_02_E02.cr2 -> Image_02_E03.jpg Exposure = -2
    Image_02_E02.cr2 -> Image_02_E04.jpg Exposure = 0
    Image_02_E02.cr2 -> Image_02_E05.jpg Exposure = 2
    Image_02_E03.cr2 -> Image_02_E06.jpg Exposure = 2
    Image_02_E03.cr2 -> Image_02_E07.jpg Exposure = 4
    So basically this script would take 3 raws seperated by 2 EV's and extract 7 exposures, seperated by 2 EV's.  I've done this manually, and merged them to hdr, and the results are actually pretty decent. 
    I tried doing this with actions and batch processing, but I had to have everything seperated in individual folders like E01, E02, etc. and I had to make an action for each step in the process.
    I know this is probably a lot to ask, but I think it can be done, and I would of course credit the person in the script for helping.
    Thanks in advance!

    I think I was able to make a function to get the exposure time from the raw's xmp file. So the xmp file has to already be saved with the exposure time in the exif section.
    function getEV(thumb){
        var Name = decodeURI(thumb.name).replace(/\.[^\.]+$/, '');
        var file = new File(thumb.path + "/" + Name + ".xmp");
        try{
            if (ExternalObject.AdobeXMPScript == undefined) ExternalObject.AdobeXMPScript = new ExternalObject("lib:AdobeXMPScript");
            if(file.exists){
                file.open('r');
                file.encoding = "UTF8";
                file.lineFeed = "unix";
                file.open("r", "TEXT", "????");
                var xmpStr = file.read();
                file.close();
            }else{
                var xmpStr='';
            var xmp = new XMPMeta( xmpStr );
            var exposureTime = xmp.getProperty(XMPConst.NS_EXIF, 'ExposureTime');
            if(exposureTime  == undefined) exposureTime = 1;
        }catch(e){alert(e+"-"+e.line);}
        return exposureTime;
    I was able to use the ui you put together from your hdr script, and used the functions from your cr2 script, to make the raw converter script. I've added a drop down list for the different conversion, and I added an option to either enter the exposure time for the middle exposure, or use the xmp's exposure time instead. So far I've only added a straight conversion method, where the files are converted, without any modifications, the 3 raw, and 5 raw conversion methods. Here's the script -
    #target photoshop
    app.bringToFront();
    main();
    function main(){
        Prefs = {};
        try{
            var desc1 = app.getCustomOptions('0bafbed0-0bc7-11e1-be50-0800200c9a66');
            Prefs = eval(desc1.getString(0));
        }catch(e){
            Prefs.folder1 = Folder("~/desktop");
            Prefs.folder2 = Folder("~/desktop");
            Prefs.bits = false;
        var win = new Window( 'dialog', 'RAW Converter' );
        g = win.graphics;
        var myBrush = g.newBrush(g.BrushType.SOLID_COLOR, [0.91, 0.91, 0.91, 1]);
        g.backgroundColor = myBrush;
        win.orientation = 'row';
        win.p1 = win.add("panel", undefined, undefined, {borderStyle:"etched"});
        win.g1 = win.p1.add('group');
        win.g1.orientation = "row";
        win.title = win.g1.add('statictext',undefined,'RAW to JPEG Converter');
        win.title.alignment = "fill";
        var g = win.title.graphics;
        g.font = ScriptUI.newFont("Georgia","BOLDITALIC",22);
        win.g5 = win.p1.add('group');
        win.g5.orientation = "row";
        win.g5.alignment = 'left';
        win.g5.spacing = 10;
        win.g5.st1 = win.g5.add('statictext',undefined,'Please select input folder');
        win.g10 = win.p1.add('group');
        win.g10.orientation = "row";
        win.g10.alignment = 'left';
        win.g10.spacing = 10;
        win.g10.et1 = win.g10.add('edittext');
        win.g10.et1.preferredSize = [400,20];
        win.g10.et1.enabled = false;
        win.g10.bu1 = win.g10.add('button',undefined,'Browse');
        win.g10.bu1.onClick = function() {
            InputFolder = Folder.selectDialog("Input folder",Prefs.folder1);
            if(InputFolder != null){
                win.g10.et1.text = decodeURI(InputFolder.fsName);
                processHDRList();
        win.g15 = win.p1.add('group');
        win.g15.orientation = "row";
        win.g15.alignment = 'left';
        win.g15.spacing = 10;
        win.g15.st1 = win.g15.add('statictext',undefined,'Please select output folder');
        win.g20 = win.p1.add('group');
        win.g20.orientation = "row";
        win.g20.alignment = 'left';
        win.g20.spacing = 10;
        win.g20.et1 = win.g20.add('edittext');
        win.g20.et1.preferredSize = [400,20];
        win.g20.et1.enabled = false;
        win.g20.bu1 = win.g20.add('button',undefined,'Browse');
        win.g20.bu1.onClick = function() {
            OutputFolder = Folder.selectDialog("Output folder",Prefs.folder2);
            if(OutputFolder != null){
                win.g20.et1.text = decodeURI(OutputFolder.fsName);
        win.g30 = win.p1.add('group');
        win.g30.orientation = "row";
        win.g30.alignment = 'right';
        win.g30.spacing = 10;
        win.g30.st1 = win.g30.add('statictext',undefined,'Please select conversion method');
        win.g30.dd1 = win.g30.add('dropdownlist');
        win.g30.dd1.preferredSize = [200,20];
        var ConversionList = [];
        ConversionList[0] = "Straight Conversion";
        ConversionList[1] = "Bracketed 3x2EV to 7x2EV";
        ConversionList[2] = "Bracketed 5x2EV to 9x2EV";
        for(var x in ConversionList){
            win.g30.dd1.add('item', ConversionList[x].toString());
        win.g30.dd1.selection = 0;
        var ConversionSel = win.g30.dd1.selection.text.toString();
        win.g40 = win.p1.add('group');
        win.g40.orientation = "row";
        win.g40.alignment = 'right';
        win.g40.spacing = 10;
        win.g40.st2 = win.g40.add('statictext',undefined,'Please enter the exif exposure time of middle exposure');
        win.g40.et1 = win.g40.add('edittext',undefined,'1');
        win.g40.et1.preferredSize=[80,20];
        win.g40.et1.enabled = true;
        var TVsel = win.g40.et1.text.toString();
        win.g50 = win.p1.add('group');
        win.g50.orientation = "row";
        win.g50.alignment = 'right';
        win.g50.spacing = 10;
        win.g50.cb1 = win.g50.add('checkbox',undefined,'Use XMP exposure time instead');
        win.g50.cb1.helpTip = "Uses the xmp file's exposure time for the middle exposure instead";
        win.g300 = win.p1.add('group');
        win.g300.orientation = "row";
        win.g300.alignment = 'center';
        win.g300.spacing = 10;
        win.g300.bu1 = win.g300.add('button',undefined,'Process');
        win.g300.bu1.preferredSize = [240,30];
        win.g300.bu2 = win.g300.add('button',undefined,'Cancel');
        win.g300.bu2.preferredSize = [240,30];
        win.g300.bu1.onClick = function(){
            if(win.g10.et1.text == ''){
                alert("Input folder has not been selected!");
                return
            if(win.g20.et1.text == ''){
                alert("Output folder has not been selected!");
                return
            try{
            Prefs.folder1 = InputFolder;
            Prefs.folder2 = OutputFolder;
            var progressBar = function(title) {
                var w = new Window( 'palette', ' '+title, {x:0, y:0, width:340, height:60} ),
                pb = w.add( 'progressbar', {x:20, y:12, width:300, height:12}, 0, 100 ),
                st = w.add( 'statictext', {x:10, y:36, width:320, height:20}, '' );
                st.justify = 'center';
                w.center();
                this.reset = function( msg,maxValue ) {
                    st.text = msg;
                    pb.value = 0;
                    pb.maxvalue = maxValue||0;
                    pb.visible = !!maxValue;
                    w.show();
                this.hit = function() { ++pb.value; };
                this.hide = function() { w.hide(); };
                this.close = function() { w.close(); };
                this.show = function() { w.show(); };
                this.update = function() { w.update(); };
                this.layout = function() { w.layout.layout(); };
            function doPbar(){
                pBar.hit();
                pBar.hide();
                pBar.show();
            var count = 0;
            var group0 = InputFolder.getFiles(/\.(dng|crw|cr2|raw|raf|3fr|dcr|kdc|mrw|nef|nrw|orf|rw2|pef|x3f|srf| sr2)$/i);
            var group1 = InputFolder.getFiles(/\e01.(dng|crw|cr2|raw|raf|3fr|dcr|kdc|mrw|nef|nrw|orf|rw2|pef|x3f|s rf|sr2)$/i);
            var group2 = InputFolder.getFiles(/\e02.(dng|crw|cr2|raw|raf|3fr|dcr|kdc|mrw|nef|nrw|orf|rw2|pef|x3f|s rf|sr2)$/i);
            var group3 = InputFolder.getFiles(/\e03.(dng|crw|cr2|raw|raf|3fr|dcr|kdc|mrw|nef|nrw|orf|rw2|pef|x3f|s rf|sr2)$/i);
            var group4 = InputFolder.getFiles(/\e04.(dng|crw|cr2|raw|raf|3fr|dcr|kdc|mrw|nef|nrw|orf|rw2|pef|x3f|s rf|sr2)$/i);
            var group5 = InputFolder.getFiles(/\e05.(dng|crw|cr2|raw|raf|3fr|dcr|kdc|mrw|nef|nrw|orf|rw2|pef|x3f|s rf|sr2)$/i);
            count += group0.length;
            count += group1.length;
            count += group2.length;
            count += group3.length;
            count += group4.length;
            count += group5.length;
            if (count <1) return;
            if (win.g30.dd1.selection == 0) {
                var pBar = new progressBar("RAW to JPEG Straight Conversion");
                pBar.reset("Processing Files", (group1.length*2));
                for(var a in group0){
                    setEV(group0[a],0);
                    open(group0[a]);
                    var Name = decodeURI(group0[a].name).replace(/\.[^\.]+$/, '');
                    var TVval = TVsel;
                    if (win.g50.cb1.value) TVval = getEV(group0[a]);
                    var exportFile = new File( OutputFolder + "/" + Name + ".jpg" );
                    SaveForWeb(exportFile,100);
                    doPbar();
                    app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
                    putXMPData(exportFile,TVval,0);
                pBar.close();
            } else
            if (win.g30.dd1.selection == 1) {
                var pBar = new progressBar("3 RAWs by 2 EV to 7 JPEGs by 2 EV");
                pBar.reset("Processing E01 Files", (group1.length*2));
                for(var a in group1){
                    setEV(group1[a],-4);
                    open(group1[a]);
                    var Name = decodeURI(group1[a].name).replace(/\.[^\.]+$/, '');
                    Name = Name.replace(/e01$/i,'');
                    var TVval = TVsel;
                    if (win.g50.cb1.value) TVval = getEV(group2[a]);
                    var exportFile = new File( OutputFolder + "/" + Name + "E01.jpg" );
                    SaveForWeb(exportFile,100);
                    app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
                    putXMPData(exportFile,ExifEV(String(TVval),"1/64"),-6);
                    doPbar();
                    setEV(group1[a],-2);
                    open(group1[a]);
                    var exportFile = new File( OutputFolder + "/" + Name + "E02.jpg" );
                    SaveForWeb(exportFile,100);
                    app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
                    putXMPData(exportFile,ExifEV(String(TVval),"1/16"),-4);
                    doPbar();
                pBar.reset("Processing E02 Files", (group2.length*3));
                for(var b in group2){
                    setEV(group2[b],-2);
                    open(group2[b]);
                    var Name = decodeURI(group2[b].name).replace(/\.[^\.]+$/, '');
                    Name = Name.replace(/e02$/i,'');
                    var TVval = TVsel;
                    if (win.g50.cb1.value) TVval = getEV(group2[b]);
                    var exportFile = new File( OutputFolder + "/" + Name + "E03.jpg" );
                    SaveForWeb(exportFile,100);
                    app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
                    putXMPData(exportFile,ExifEV(String(TVval),"1/4"),-2);
                    doPbar();
                    setEV(group2[b],0);
                    open(group2[b]);
                    var exportFile = new File( OutputFolder + "/" + Name + "E04.jpg" );
                    SaveForWeb(exportFile,100);
                    app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
                    putXMPData(exportFile,TVval,0);
                    doPbar();
                    setEV(group2[b],2);
                    open(group2[b]);
                    var exportFile = new File( OutputFolder + "/" + Name + "E05.jpg" );
                    SaveForWeb(exportFile,100);
                    app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
                    putXMPData(exportFile,ExifEV(String(TVval),"4"),2);
                    doPbar();
                pBar.reset("Processing E03 Files", (group3.length*2));
                for(var c in group3){
                    setEV(group3[c],2);
                    open(group3[c]);
                    var Name = decodeURI(group3[c].name).replace(/\.[^\.]+$/, '');
                    Name = Name.replace(/e03$/i,'');
                    var TVval = TVsel;
                    if (win.g50.cb1.value) TVval = getEV(group2[c]);
                    var exportFile = new File( OutputFolder + "/" + Name + "E06.jpg" );
                    SaveForWeb(exportFile,100);
                    app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
                    putXMPData(exportFile,ExifEV(String(TVval),"16"),4);
                    doPbar();
                    setEV(group3[c],4);
                    open(group3[c]);
                    var exportFile = new File( OutputFolder + "/" + Name + "E07.jpg" );
                    SaveForWeb(exportFile,100);
                    doPbar();
                    app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
                    putXMPData(exportFile,ExifEV(String(TVval),"64"),6);
                pBar.close();
            } else
            if (win.g30.dd1.selection == 2) {
                var pBar = new progressBar("5 RAWs by 2 EV to 9 JPEGs by 2 EV");
                pBar.reset("Processing E01 Files", (group1.length*2));
                for(var a in group1){
                    setEV(group1[a],-4);
                    open(group1[a]);
                    var Name = decodeURI(group1[a].name).replace(/\.[^\.]+$/, '');
                    Name = Name.replace(/e01$/i,'');
                    var TVval = TVsel;
                    if (win.g50.cb1.value) TVval = getEV(group3[a]);
                    var exportFile = new File( OutputFolder + "/" + Name + "E01.jpg" );
                    SaveForWeb(exportFile,100);
                    app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
                    putXMPData(exportFile,ExifEV(String(TVval),"1/256"),-8);
                    doPbar();
                pBar.reset("Processing E02 Files", (group2.length*3));
                for(var b in group2){
                    setEV(group2[b],-4);
                    open(group2[b]);
                    var Name = decodeURI(group2[b].name).replace(/\.[^\.]+$/, '');
                    Name = Name.replace(/e02$/i,'');
                    var TVval = TVsel;
                    if (win.g50.cb1.value) TVval = getEV(group3[b]);
                    var exportFile = new File( OutputFolder + "/" + Name + "E02.jpg" );
                    SaveForWeb(exportFile,100);
                    app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
                    putXMPData(exportFile,ExifEV(String(TVval),"1/64"),-6);
                    doPbar();
                    setEV(group2[b],-2);
                    open(group2[b]);
                    var exportFile = new File( OutputFolder + "/" + Name + "E03.jpg" );
                    SaveForWeb(exportFile,100);
                    app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
                    putXMPData(exportFile,ExifEV(String(TVval),"1/16"),-4);
                    doPbar();
                pBar.reset("Processing E03 Files", (group3.length*3));
                for(var c in group3){
                    setEV(group3[c],-2);
                    open(group3[c]);
                    var Name = decodeURI(group3[c].name).replace(/\.[^\.]+$/, '');
                    Name = Name.replace(/e03$/i,'');
                    var TVval = TVsel;
                    if (win.g50.cb1.value) TVval = getEV(group3[c]);
                    var exportFile = new File( OutputFolder + "/" + Name + "E04.jpg" );
                    SaveForWeb(exportFile,100);
                    app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
                    putXMPData(exportFile,ExifEV(String(TVval),"1/4"),-2);
                    doPbar();
                    setEV(group3[c],0);
                    open(group3[c]);
                    var exportFile = new File( OutputFolder + "/" + Name + "E05.jpg" );
                    SaveForWeb(exportFile,100);
                    app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
                    putXMPData(exportFile,TVval,0);
                    doPbar();
                    setEV(group3[c],2);
                    open(group3[c]);
                    var exportFile = new File( OutputFolder + "/" + Name + "E06.jpg" );
                    SaveForWeb(exportFile,100);
                    app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
                    putXMPData(exportFile,ExifEV(String(TVval),"4"),2);
                    doPbar();
                pBar.reset("Processing E04 Files", (group4.length*3));
                for(var d in group4){
                    setEV(group4[d],2);
                    open(group4[d]);
                    var Name = decodeURI(group4[d].name).replace(/\.[^\.]+$/, '');
                    Name = Name.replace(/e04$/i,'');
                    var TVval = TVsel;
                    if (win.g50.cb1.value) TVval = getEV(group3[d]);
                    var exportFile = new File( OutputFolder + "/" + Name + "E07.jpg" );
                    SaveForWeb(exportFile,100);
                    app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
                    putXMPData(exportFile,ExifEV(String(TVval),"16"),4);
                    doPbar();
                    setEV(group4[d],4);
                    open(group4[d]);
                    var exportFile = new File( OutputFolder + "/" + Name + "E08.jpg" );
                    SaveForWeb(exportFile,100);
                    app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
                    putXMPData(exportFile,ExifEV(String(TVval),"64"),6);
                    doPbar();
                pBar.reset("Processing E05 Files", (group3.length*2));
                for(var e in group5){
                    setEV(group5[e],4);
                    open(group5[e]);
                    var Name = decodeURI(group5[e].name).replace(/\.[^\.]+$/, '');
                    Name = Name.replace(/e05$/i,'');
                    var TVval = TVsel;
                    if (win.g50.cb1.value) TVval = getEV(group3[e]);
                    var exportFile = new File( OutputFolder + "/" + Name + "E09.jpg" );
                    SaveForWeb(exportFile,100);
                    app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
                    putXMPData(exportFile,ExifEV(String(TVval),"256"),8);
                    doPbar();
                pBar.close();
            var desc2 = new ActionDescriptor();
            desc2.putString(0, Prefs.toSource());
            app.putCustomOptions('0bafbed0-0bc7-11e1-be50-0800200c9a66', desc2, true );
            win.close(0);
            }catch(e){alert(e + " - " +e.line);}
        win.center();
        win.show();
        app.displayDialogs = DialogModes.NO;
    function ExifEV(Input,Multiplier) {
        var EVval = Math.abs(eval(Input)*eval(Multiplier)); // Positive Decimal
        var EVvalN = 1; // Numerator
        var EVvalD = 1; // Denominator
        if (EVval < 0.5) EVvalD = Math.floor(1/EVval); else // For values less than 1/2
        // For values greater than 1/2 or values less than 1-1/2, returns 1000ths
        if (EVval < 1 || EVval > 1) {
            EVvalN = Math.floor(EVval*1000);
            EVvalD = 1000;
        } else                                   
        if (EVval > 1.5) EVvalN = Math.floor(EVval); // For values greater than 1-1/2
        return String(EVvalN + "/" + EVvalD); // Return fraction
    function getEV(thumb){
        var Name = decodeURI(thumb.name).replace(/\.[^\.]+$/, '');
        var file = new File(thumb.path + "/" + Name + ".xmp");
        try{
            if (ExternalObject.AdobeXMPScript == undefined) ExternalObject.AdobeXMPScript = new ExternalObject("lib:AdobeXMPScript");
            if(file.exists){
                file.open('r');
                file.encoding = "UTF8";
                file.lineFeed = "unix";
                file.open("r", "TEXT", "????");
                var xmpStr = file.read();
                file.close();
            }else{
                var xmpStr='';
            var xmp = new XMPMeta( xmpStr );
            var exposureTime = xmp.getProperty(XMPConst.NS_EXIF, 'ExposureTime');
            if(exposureTime  == undefined) exposureTime = 1;
        }catch(e){alert(e+"-"+e.line);}
        return exposureTime;
    function setEV(thumb,evValue){
        var Name = decodeURI(thumb.name).replace(/\.[^\.]+$/, '');
        var file = new File(thumb.path + "/" + Name + ".xmp");
        try{
            if (ExternalObject.AdobeXMPScript == undefined) ExternalObject.AdobeXMPScript = new ExternalObject("lib:AdobeXMPScript");
            if(file.exists){
                file.open('r');
                file.encoding = "UTF8";
                file.lineFeed = "unix";
                file.open("r", "TEXT", "????");
                var xmpStr = file.read();
                file.close();
            }else{
                var xmpStr='';
            var xmp = new XMPMeta( xmpStr );
            var exposureValue = xmp.getProperty(XMPConst.NS_CAMERA_RAW, "Exposure");
            xmp.deleteProperty(XMPConst.NS_CAMERA_RAW, "Exposure");
            xmp.setProperty(XMPConst.NS_CAMERA_RAW, "Exposure",Number(evValue));
            file.open('w');
            file.encoding = "UTF8";
            file.lineFeed = "unix";
            file.write( xmp.serialize() );
            file.close();
            if(exposureValue  == undefined) exposureValue = 0;
        }catch(e){alert(e+"-"+e.line);}
        return exposureValue;
    function putXMPData(fileName,exposureTime,evValue){
        if (ExternalObject.AdobeXMPScript == undefined) ExternalObject.AdobeXMPScript = new ExternalObject('lib:AdobeXMPScript');
        var xmpf = new XMPFile(fileName.fsName, XMPConst.FILE_UNKNOWN, XMPConst.OPEN_FOR_UPDATE | XMPConst.OPEN_USE_SMART_HANDLER );
        var xmp = xmpf.getXMP();
        try{
            xmp.setProperty(XMPConst.NS_TIFF, 'Make', 'Canon');
            xmp.setProperty(XMPConst.NS_TIFF, 'Model', 'Canon EOS REBEL T1i');
            xmp.setProperty(XMPConst.NS_EXIF, 'ExposureTime', exposureTime);
            xmp.setProperty(XMPConst.NS_EXIF, 'FNumber', '63/10');
            xmp.setProperty(XMPConst.NS_CAMERA_RAW, 'Exposure',Number(evValue));
            if (xmpf.canPutXMP(xmp)) {
                    xmpf.putXMP(xmp);
                }else{
                    alert(e.message);
                xmpf.closeFile(XMPConst.CLOSE_UPDATE_SAFELY);
        }catch(e){}
    function SaveForWeb(saveFile,jpegQuality) {
        var sfwOptions = new ExportOptionsSaveForWeb();
        sfwOptions.format = SaveDocumentType.JPEG;
        sfwOptions.includeProfile = false;
        sfwOptions.interlaced = 0;
        sfwOptions.optimized = true;
        sfwOptions.quality = jpegQuality;
        activeDocument.exportDocument(saveFile, ExportType.SAVEFORWEB, sfwOptions);
    The script seems to work decent, so I plan on adding the other conversions I mentioned earlier, to it.  If there is a way of getting the exposure time directly from the raw file, please let me know.

  • Will After Effects execute a batch process on video?

    I apologize for posting this  question in more than one forum (I also posted in the Premier forum),  I'm just not sure which forum this questoin is suppose go in.
    What I'm trying to  do is batch  process a few hundred 10-30 minute videos and cut them  up into smaller 3 minute clips. I'm not familiar with After Effects and so I'm not  entirely sure that this is an After Effects task...
    Anyhow,  the source files are primarily WMV and  MPG with some AVIs in there, and we want to export to FLV. Since you  can batch process images from bridge using photoshop actions, I was  hoping there was something similar that could be done using After Effects.
    Thanks,
    Dave

    "Look, I don't mean to sound like a jerk, but you're going about this all wrong. Since you're obviously not video savvy, you need to start at the end and work backwards."
    You are correct, I'm not a video guy. My forte is print, graphics and web layouts and I have very little profesional-level video experience. The reason for FLV files is very simple, consitancy. It was decided that we're going to use the FLV format a while back so that our flash guys could more easily incorporate them into "flash toys" later on (no, we don't know what that means yet). I don't know that the specifics within the FLV format are pertinant at this time, and I don't see what would stop us from re-encoding them later if needed.
    "That can be batched but the editing canot, that is strictly a manual operation."
    This is exaclty why I'm posting on lots of different forums trying to find a solution, because as of right now, we are manually splitting these videos up and it's a significant drain on our department resources. The new workstation is already a go (and no, it's not my money) so that's happening no matter what, now we're just trying to automate as much as posible so our guys are free to do "real" work instead of defining 3 minute clips, over, and over, and over, and over again.
    I understand what you're saying about multiple source formats causing problems, but I think you may be misunderstanding what we actually need. We already have a simple freeware ecoding program (Any Video Converter 3.0.2) that has handled every format we've thrown at it so far and batch processes them into FLVs no problem. Unfortunately it doesn't "chop" them up as well, which we need. If a freeware program has no problem doing this, I find it hard to believe the big boy apps will choke, unless they're being used incorrectly.
    "Try to relax and investigate this thoroughly." "You're going to be money ahead by hiring a consultant."
    Again, that's why I'm posting messages on forums. And thanks for the help, but I'm pretty positive we don't need to hire a consultant.

  • Better use for Fireworks CS6, other than animated gifs and batch process?

    I started using fireworks in the much earlier days of web design back in 2000. Now with Illustrator and Photoshop being the law of the land, fireworks has begun to fade and take a back seat.  Primarily right now i use fireworks just for creating animated gifs and batch process if i have a bunch of images that i would like to re-export or format to my liking.  Does anyone have any other better uses for this program?  detPhx
    I am just looking to utilize this more, since i install it.

    For the web, exported PNG compression is better in FW than PS.
    CS6 FW can now generate code  for CSS3 borders, gradients, Sprites, etc...
    FW can be used for jQuery Mobile Theme skinning
    http://tv.adobe.com/show/learn-fireworks-cs6/
    I still use AI for vector graphics & PS for photo & image manipulation, but FW has some nice features for web designers.
    Nancy O.

  • In Bridge CS6, the "Tools" tab is missing the "Photoshop" option to batch process image

    Hello!
    Does anyone know why in Bridge cs6 under the "Tools" tab, my "Photoshop" option is missing?  That is how I have always batch processed images.  In Bridge, I choose the images to process, go to the "Tools" tab, down to the "Photoshop" option then to "Image Processor" and process.  Now when I go into my "Tools" tab it only has the options: Batch Rename, 4 kinds of Metadata related options and Cache.  Can someone tell me why this has happened and how to fix it?  Thank you!!!
    Eric

    Hello Omke,
    This problem lasted for two days.  I tried many suggestions but nothing worked immediately.  Suddenly I turned my computer on last night and it was fixed...inexplicably.  Not sure what worked but something did.  I appreciate you taking the time to offer advice. 
    Best,
    Eric

  • How to display custom error message in Job log for batch processing

    Hi All,
    I am rexecuting one R/3 report in batch mode and i want to display all the custom error i have handled in job log when its executed from SM36,SM37. The custom error are like 'Delovery/Shipmet doe not exits' or others which we can display in online mode like message e100(ZFI) or any other way and accordingly we can handle the program control like come out of the program ro leave to transaction'Zxxx' or anything. But i want my program to be executed completely and accumulate all the error in job log of batch processing.
    Can anyone tell me how can i do so...
    Thanks,
    Amrita

    Hi,
    Thats what i have done from the begining. I have written message like this:
    Message i100(ZFI).
    I was hoping to see this message in the log. But i cant see. Can you help me pleae...

  • Batch process to add Javascript to PDF files

    Hi All,
    I have written a small piece of Javascript for my PDF files. The idea is to add a date stamp to each page of the document before printing. To do this, I have added the following code to the "Document Will Print" action:
    for (var pageNumber = 0; pageNumber < this.numPages; pageNumber++)
    var dateStamp = this.addField("Date","text",pageNumber,[700,10,500,40]);
    dateStamp.textSize=8;
    dateStamp.value = "Date Printed: " + util.printd("dd/mmm/yyyy",new Date());
    My question is this: Does anyone know of a way to batch process a whole directory (of around 600 PDF's) to insert my Javascript into the "Document Will Print" action of each file?
    Many thanks for any information you may have.
    Kind regards,
    Aaron

    > Can I just confirm a few things please? Firstly, should I be going into "Batch Sequences" -> "New Sequence" and selecting "Execute JavaScript" as my sequence type?
    Yes, you are creating new batch sequence that will use JavaScript.
    > My second question is, how can I insert my body of script into the variable "cScript"? I have quotation marks and other symbols that I imagine I will have to escape if I wish to do this?
    You ca either use different quotation marks or us the JavaScript escape character '\' to insert quotation marks
    Your will print code will only work for a full version of Acrobat and not Reader, because Reader will not allow the addition of fields. Also each time you print you will be creating duplicate copies of the field. So it might be better to add the form field only in the batch process and then just add the script to populate the date field in the WillPrint action.
    // add form field to each page of the PDF
    for (var pageNumber = 0; pageNumber < this.numPages; pageNumber++)
    var dateStamp = this.addField("Date","text",pageNumber,[700,10,500,40]);
    dateStamp.textSize=8;
    this.setAction("WillPrint", "dateStamp.value = \"Date Printed: \" + util.printd(\"dd/mmm/yyyy\",\new Date());");

  • Opening and closing files very slowly -MAC - Batch processing broke illustrator...

    I have been batch processing between 15 and 30 thousand svg files over the past few days(simply centreing the orbjects on the art board mergring overlapping objects and saving as AI's) - the individual files are very small 20kb max. this was working fine for a while but suddenly illustrator now takes nearly 30 seconds to open any one individual file - svg or otherwise - and also when I look at illustrator in activity monitor as files are opened illustrator uses 100% of the CPU.
    I have no Idea if this is related to all of the batch processing Ive been doing lately but Its the last thing Ive done so...
    Also I have run disk utility on my machine uninstalled and reinstalled illustrator with no success..
    Anyone have any thoughts?
    Thanks!!

    Have you tried at least restarting AI or rebooting the computer?

  • Please Help, Issues when batch processing Multi Frame images in Fireworks

    I hope someone will know how to do this and tell me where I am going wrong.
    Objective 1
    I have a large number of images that all have the exact same number of frames (4) and are all exactly the same size that I want to get resized, cropped and water marked (when I say 'watermarked I mean have my websites logo pasted in a specificlocation on each frame, I have my websites logo as a seperate .png file which I copy from).
    Current Process
    I create a command which will crop the image then paste my companys url/log onto the first frame, move it to the correct location on the frame then copy it again and then paste it onto each of the other frames, the command then resizes the image tot he exact proportions I want.
    I start a batch process and use my command, making sure that I also export from the .png to animated gif (and I edit the settings to make it 256 animated gif).
    Error 1
    The process described above resizes and crops my images however it does NOT put the watermark in the correct place, it seems to put it int he right place on the first frame and then in a different place on all the followingn frames thus giving the effect of the watermark jumping around. Which is obviously NOT what I want.
    Question 1
    Please let me know what process I should be following to correct the Error 1 above.
    Objective & Question 2
    I want to do exactly the same thing as shown above but this time the files have a varying number of frames (from 2 to 45 frames (or instances as CS4 seems to call them)). Is there a way to paste my logo to the to the exact same location on ALL frames?
    Other information
    I have tried WHXY Paste extension and I can not see how to use that to solve the issue. I have also tried 'Paste in Place' however I can not see how to use the Paste In Place extension as it is not appering in my list of commands.
    Many thanks in advance for your help.
    Andy

    Andy, you could start a batch process which will do most of the things you are asking for. THe batch process can be done using Fireworks. The right way to start is going to Archivo / Procesar por Lotes and then follow all the different option this tool has to offer.  Yes, I know I gave you the names in Spanish but that is the way I use Adobe Fireworks.
    I hope this was usefull for you!
    Best regards,
    Frank Meier | Curso Arreglos Florales

  • How to extract data from offline PDF files as batch processing

    Hello.
    I want to use Adobe Interactive forms as batch processing.
    For instances,
    1. Users download offline PDF files.
    2. Users inputs data on their local PCs.
    3. Users upload these PDF files in one folder.
    4. Program can read data form PDF files on that folder. and put data to ERP at night.
    I' d like to know how to implement a program with Java or ABAP.
    Regards.
    Koji.

    Hi,
    It's possible to do it but first be sure that the SAP system can read the directory while your program is executed in background .
    Then you have to read the content of the directory and process each file you found.
    Look at this standard ABAP object cl_gui_frontend_services , you will find method for browsing a directory and retrieve list of file .
    Afterwards you have to process each file , for this have a look at this wiki code sample i wrote for processing inbound mail with adobe interactive form, it should help you [Sample Code for processing Inbound Mail with Adobe Interactive Forms|https://www.sdn.sap.com/irj/sdn/wiki?path=/display/snippets/sampleCodeforprocessingInboundMailwithAdobeInteractive+Forms]
    Hope this help you .
    Best regards.

  • Report as batch process?

    Can we run a Z program or report as background process or batch process? if yes, how?

    Hi,
    1.  Go to SE38 give the program name and then from Menu path Program->Execute->Background. You need create the variant for selection screen
    2. Go to SE38 give the program name and then execute on the selection screen goto Menu path Program->Execute->Background.

Maybe you are looking for

  • No Daily Sales/Trend Report for today?

    Has anyone received your iTunes Connect Daily Sales/Trend Report for today (1/25/10)? I have not received mine yet. First time it hasn't been up at this hour. It usually arrives at 2:30am (it's 9:30am here now) or if it's delayed, usually in another

  • Adding a signature field takes a lot of time

    Case: I have a Microsoft excel sheet that I save as PDF directly from excel. I use Adobe Acrobat X PRO to create 3 signature fields on this PDF to allow document signing in Adobe Reader. Problem: Adding a signature field in form editing mode are extr

  • Error messages appear while booting Satellite A100

    I tried booting my notebook and this error messages are displayed: system bios shadowed, video bios shadowed, resource conflict-PCI serial bus controller on motherboard Bus:07, Device:06, Function 01 resource conflict-PCI mass storage controller on m

  • Downloading Video from a digital camera

    I am trying to download a video from a digital camera, and iPhoto is not allowing it to, with no reason given. Does anyone know of an upgrade or a program where i can download the video? Thanks

  • ITunes won't open automatically after connecting iPhone

    Maybe I missed the discussion on this but I did search first.  I just bought an iPhone 4s and had already upgraded to iTunes 10.5.  iTunes will not open when the iPhone is initially plugged in.  I can manually open iTunes and it works fine.  'Open iT