5 Replies Latest reply on Mar 20, 2017 7:31 PM by JJMack

    Insert watermark

    malcolmc29190491 Level 1

      Hi. I'm a complete novice and am looking for a step by step guide to inserting a watermark into my photos. Can anyone help, please?

        • 1. Re: Insert watermark
          davescm Adobe Community Professional

          Make the Watermark with a text or shape layer (I've used white text below)

           

          Reduce the fill value of the layer so the background shows through (I've used 16% in the example). Reducing the fill value makes the centre transparent but retains any layer styles which I will add next.

           

          Right click on the text layer, choose Blending Options then under the Layer Styles menu tick Bevel & Emboss

           

           

          Dave

          3 people found this helpful
          • 2. Re: Insert watermark
            c.pfaffenbichler Level 9

            As for applying it in bulk one can record the creation of the watermark as an Action and use File > Automate > Batch or File > Scripts > Image Processor.

            But in this case different image orientations or image dimensions can necessitate some finagling.

            3 people found this helpful
            • 3. Re: Insert watermark
              Benjamin Root MVP & Adobe Community Professional

              davescm and c.pfaffenbichler have already given you all the details you need to get started. If you'd like to get a bit more advanced with batch watermarking, see this tutorial: Automate Watermarking Images in Photoshop CC - YouTube

              2 people found this helpful
              • 4. Re: Insert watermark
                Ericadyson Level 1

                Excellent. Thanks a lot. Very helpful and useful!

                • 5. Re: Insert watermark
                  JJMack Most Valuable Participant

                  A simple script to place a watermark sized for  your document size  in the lower right corner. The Watermark file is hard codes as is the resize  and placement margin size.  With variables the you can easily in the beginning of the script..

                  #target photoshop;  
                  app.bringToFront();  
                  var logoFile = "~/Desktop/JJMack.png"; // Watermark file should be large for resize down works better than up
                  var LogoSize = 10; // percent of document height to resize Watermark to
                  var LogoMargin = 1;                                         // percent of Document height the Watermark should have as a margin
                  
                  
                  placeWatermark(logoFile, LogoSize, LogoMargin);             // Place Watermark  into the bottom right of document
                  
                  
                  function placeWatermark(Image,Size,Margin){  
                    if(!documents.length) return;   // if no document return
                    try{  
                    var doc = app.activeDocument; // set Doc object to active document
                    app.displayDialogs = DialogModes.NO; // Dialog off 
                    var strtRulerUnits = app.preferences.rulerUnits; // Save Users ruler units 
                    var strtTypeUnits = app.preferences.typeUnits; // Save Users Type units 
                    app.preferences.rulerUnits = Units.PIXELS; // work with pixels 
                    app.preferences.typeUnits = TypeUnits.PIXELS; // work with pixels 
                    var fileObj = new File(Image);                 // the passed file
                    if(!fileObj.exists){   // If file does not exits tell user 
                    alert(fileObj.name  + " does not exist!");  
                    return;  
                    }  
                    placeFile(fileObj); // Place in file the Watermark png file
                    activeDocument.activeLayer.resize(100 ,100,AnchorPosition.MIDDLECENTER); // Insure Place did not scale layer  
                    var SB = activeDocument.activeLayer.bounds; // get layers bounds 
                    var layerHeight = SB[3] - SB[1]; // get layers height  
                    var resizePercent = (100/layerHeight)*(Size/100*doc.height.value); // Percent to resize by 
                    activeDocument.activeLayer.resize(resizePercent ,resizePercent,AnchorPosition.MIDDLECENTER);  // Resize width and height by percentage 
                    SB = activeDocument.activeLayer.bounds; // get resized layers bounds  
                    activeDocument.activeLayer.translate(-SB[0].value,-SB[1].value); // Move resized layer to top left canvas corner 
                    var LayerWidth = (SB[2].value - SB[0].value);  
                    var LayerHeight = (SB[3].value - SB[1].value);  
                    marginSize = Margin/100*doc.height.value; // move resized watermark into the document lower right corner with some margin
                    activeDocument.activeLayer.translate((doc.width.value -marginSize - LayerWidth),( doc.height.value -marginSize - LayerHeight));
                    }
                    catch(e) { alert(e + ': on line ' + e.line); } // inform user of error  
                    finally{  
                    app.preferences.rulerUnits = strtRulerUnits; // Restore user ruler units  
                    app.preferences.typeUnits = strtTypeUnits; // Restore user type units    
                    };  
                  }; 
                  
                  function placeFile(placeFile) {  
                      var desc21 = new ActionDescriptor();  
                      desc21.putPath( charIDToTypeID('null'), new File(placeFile) );  
                      desc21.putEnumerated( charIDToTypeID('FTcs'), charIDToTypeID('QCSt'), charIDToTypeID('Qcsa') );  
                      var desc22 = new ActionDescriptor();  
                      desc22.putUnitDouble( charIDToTypeID('Hrzn'), charIDToTypeID('#Pxl'), 0.000000 );  
                      desc22.putUnitDouble( charIDToTypeID('Vrtc'), charIDToTypeID('#Pxl'), 0.000000 );  
                      desc21.putObject( charIDToTypeID('Ofst'), charIDToTypeID('Ofst'), desc22 );  
                      executeAction( charIDToTypeID('Plc '), desc21, DialogModes.NO );  
                  };  
                  
                  2 people found this helpful