JJMack's Image Visualization
Photoshop Actions and Scripts

Files Included in this package

    Documentation Files

  1. ReadMe.txt
  2. ReadMe.html
  3. Examples

    Text and HTML write up "this file" and a directory containing example that have been resized for the web. The animated GIF files were created using Photoshop's Animation palette to demonstrate how layers are added by the actions in this package. To view them in your browser open index.html in the Examples directory or use this link Examples.

    The package itself is very large distributed in three downloadable zip files of which only the first is required to be download. That zip file must be unpacked and the unpacked files must be move into place following the instructions below. The additional downloads are optional the files add no function. These zip files may be downloaded from Action Central or from my Web server using the below download URLs.

    • Required files       12 MB in size.
    • Documentation     13 MB optional this document, the above examples and the actions text listing.
    • Large Template   70 MB optional very large colorful three slot precut mat template PSD file.

    Two Photoshop Action Set

  4. JJmack's Image Visualization.atn
  5. JJmack's Photo Collage Toolkit Scripts.atn

    This file contains JJMack's Image Visualization Actions Set. Drag and Drop this file on Photoshop or use the Action Palette Fly-out menu item "Load Actions" select this file to load these actions into Photoshop's Actions Palette.

    Twenty Photoshop Scripts

  6. AspectRatioSelection.jsx
  7. ConvertBackground.jsx
  8. ExifData.jsx
  9. LongSidePrintLength.jsx
  10. NewDocFromSelection.jsx
  11. OneInchMiteredLeftEdgeSelection.jsx
  12. orient.jsx
  13. RandomColors.jsx
  14. SaveAndRestoreColors.jsx
  15. SaveAndRestoreResolution.jsx
  16. SelectBackground.jsx
  17. SelectEllipse.jsx
  18. SelectVignette.jsx
  19. SelectVignetteBorder.jsx
  20. StampExif.jsx
  21. BatchOneImageCollage.jsx
  22. BatchMultiImageCollage.jsx
  23. InteractivePopulateCollage.jsx
  24. HelpPhotoCollageToolkit.jsx
  25. TestCollageTemplate.jsx

    These Photoshop Scripts are used by some of the included actions. These Script must be in the directory "C:\Program Files\Adobe\Adobe Photoshop Scripts\My Scripts\". That is where I install Photoshop Scripts that I write. This is not one of Adobe's directories. I have placed a shortcut to "C:\Program Files\Adobe\Adobe Photoshop Scripts\" into the CS3 Preset Scripts directory. Once the shortcut is added scripts installed into this tree will show up in Photoshop. The shortcut is optional. The actions will still work if the shortcut is not added. The scripts full file path "C:\Program Files\Adobe\Adobe Photoshop Scripts\My Scripts\..." is recorded into the actions. If you put these script elsewhere you need to re-record the script steps in these actions. Highlight the script you need to re record use the Action palette fly-out menu and select "record again...". Hopefully if the script being recorded is one of the two plug-in script the dialog settings recorded will show up and be correct in the plug-in dialog.

    Three Photoshop Style Collection

  26. Oval Frame Styles.asl
  27. Photo Collage Styles.asl
  28. Photo Collage Text Styles.asl

    This contains two Layer Styles used by the Oval Frame actions. Drag and Drop this file on Photoshop or use menu Edit>Preset Manager, and use the pull-down menu to select patterns. Then use the Load button to select this file to load this set of layer styles into Photoshop's loaded styles. The Oval Framing actions defaults to styles in this set. The Photo Collage Styles set styles and Photo Collage Text Styles set are use by the photo collage toolkit.

    Two Photoshop Custom Shape Collection

  29. Golden_Guides.csh
  30. ProofMark.csh

    These are sets of Photoshop custom shapes. The first contain Image composition outlines for the golden rules of thirds. Drag and Drop these files on Photoshop or use menu Edit>Preset Manager, and use the pull-down menu to select Shapes. Then use the Load button to select this file to load this set of custom shapes into Photoshop's loaded custom shapes. The Rule of Thirds Shape layers Action requires the custom shapes in this file. The seconded is a Sample Custom Shape to use as a Proof Mark or a Logo. Delete the sample Shape and add one of your own with the same name. There is a PSD template for the sample Proof Mark in the shape file.

    Two Photoshop Pattern Collections

  31. Corkboard.pat
  32. Frame Patterns.pat

    These two Photoshop patterns sets that are used by the Framing and Matting actions. Drag and Drop these files on Photoshop or use menu Edit>Preset Manager and use the pull-down menu to select patterns. Then use the Load button to select these files and click load to load them into Photoshop's loaded patterns. Some of the actions default patterns are in these sets.

    Eleven Photoshop PSD file

  33. ProofMark.psd
  34. 1ImageOvalTemplate.psd
  35. Dummy.psd
  36. pb3_14x11B2_6x4.psd
  37. pb3_14x11BL_TR_6x4.psd
  38. pb3_14x11L2_6x4.psd
  39. pb3_14x11R2_6x4.psd
  40. pb3_14x11T2_6x4.psd
  41. pb3_14x11TL_BR_6x4.psd
  42. time cover.psd
  43. Baseball Card.psd

    ProofMark.psd is a sample Proof Mark/Logo file to help create a custom shape named "ProofMark". It must have that name for the Proof Mark action to work. The remaining PSD files are photo collage templates. These photo collage templates must be in folder "C:\Program Files\Adobe\Adobe Photoshop Templates\Collage" for the photo collage actions to work. This directory is not one of Adobe's. It is one I created to store photo collage templates.

Back to Top

About this Package

This Package was created by John J. McAssey (JJMack) and contains Photoshop Actions he designed, recorded and edited. As well as scripts that he hacked. Most of the scripts were create using Photoshop Scripts supplied by Adobe or found as freeware on the Web. They were used as models and a source of code syntax. This Packages also contains Photoshop Styles, Custom Shape and Patterns collected from the Web and which were labeled freeware. This Package requires Photoshop CS3 because two of the scripts included are Photoshop Plug-ins. Photoshop Script Plug-in support was added in Photoshop version CS3.

I would like to thank Penny Deutz for proof reading this document to help make it better. I have changed sections after she help me out. If you find parts of this document difficult your most likely in a section modified after her edits. Thanks again Penny.

About the Action Set

All the actions in this set were designed to work with Print Sized Images. You need not worry about image orientation Landscape or Portrait. Images are never resampled or flattened by any of these actions.

The intent here is to help the user to visualize their finalized image. There are also actions here that can be used with Photoshop's Batch and Image Processing facilities to do the conventional center crop and resize for printing without resampling.

While you can print the matted or the matted and framed images created with these actions, they were created mainly as visualization aid for Mounting, Matting and Framing Images is expensive. See before you spend.

Crop your images any creatively any way you want with or without the aid of the cropping action found here. Use the other actions to see what your finalized image can look like.

These actions can create photo realistic mats and frames around your cropped image. Images can have any aspect ratios and the mats created can as well. Standard and non standard finished sizes are supported. Rectangle and Oval mats and frame can be visualized and you can mat mats and frame frames. All Mats and frames are on their own layer. So you can change their colors, textures and styles after these action run.

Back to Top

The action set has grouped actions

Action Grouping is as follows

---------------------- Please Read -----------------------------

  • Info

-------------------- Visualization Aids ------------------------

  • Rule of Thirds Guides Lines
  • Rule of Thirds Shape Layers
  • 4:6 Center Select
  • 5:7 Center Select
  • 8:10 Center Select
  • 8.5:11 Center Select
  • 11:14 Center Select
  • 13:19 Center Select
  • 16:20 Center Select
  • 16:9 Center Select
  • 16:10 Center Select
  • Aspect Ratio Center Selection Interactive
  • Ellipse 4:6 Center Select
  • Ellipse 5:7 Center Select
  • Ellipse 8:10 Center Select
  • Ellipse 8.5:11 Center Select
  • Ellipse 11:14 Center Select
  • Ellipse 13:19 Center Select
  • Ellipse 16:20 Center Select
  • Ellipse 16:9 Center Select
  • Ellipse 16:10 Center Select
  • Ellipse Current Aspect Ratio Select
  • Aspect Ratio Elliptical Center Selection Interactive
  • Stroke Standard Aspect Ratios
  • Stroke Standard Aspect Ratios Ellipse
  • Stroke Rectangle + Ellipse

------------------------- Utility Actions ----------------------

  • Make JJMack's Action Set Groups
  • Use a Rule of Thirds to Crop
  • Sharping Adjustment Layer Interactive smart sharpen
  • DodgeBurn
  • Show All Exif Info slow
  • Stamp Exif
  • Proof Mark
  • Copyright Text Layer
  • Random Textured Layer
  • Quick Painting
  • Feivel Gothic Glow +
  • Feivel C.O.I. Glow +
  • Set Image Print Size
  • Soft Proof

----------- Add Vignette before you Mat and Frame -------------

  • Vignette Darken
  • Vignette Heavy Darken
  • Vignette Lighten

----------- Interactive Custom Matting Actions -----------------

  • Custom Quick Mat
  • Custom Quick Oval Mat
  • Custom Mat Gray Bevel
  • Custom Double Mat Gray Bevels
  • Custom Mat Colored Bevel
  • Custom Double Mat Colored Bevels
  • Custom Oval Mat Gray Bevel
  • Custom Double Oval Mat Gray Bevels
  • Custom Oval Mat Color Bevel
  • Custom Double Oval Mat Color Bevels

---------------- Interactive Framing Actions -------------------

  • Add Photo Board and Photo Corners
  • Mitered Frame 365 px
  • Mitered Frame 464 px
  • Oval Frame 1 Inch Metal
  • Oval Frame 1 Inch Wood

------- Standard Crop Actions Interactive Positioning -----------

  • 4 x 6 Interactive
  • 5 x 7 Interactive
  • 8 x 10 Interactive
  • 8.5 x 11 Interactive
  • 11 x 14 Interactive
  • 13 x 19 Interactive
  • 16 x 20 Interactive
  • 16 x 9 Interactive
  • 16 x 10 Interactive
  • Aspect Ratio Crop + Print Size
  • Aspect Ratio Crop, + Corkboard Oval Mat + Print Size

------------------ Cropping Action Templates --------------------

  • How to use these Action Templates
  • Interactive Crop + Print Size Template
  • Crop + Print Size Template
  • Crop + Print Size + Corkboard Oval Mat Template

---------- Standard Crop Actions for Batch Processing -----------

  • 4 x 6
  • 5 x 7
  • 8 x 10
  • 8.5 x 11
  • 11 x 14
  • 13 x 19
  • 16 x 20
  • 16 x 9
  • 16 x 10
  • 4 x 6 + Corkboard Oval Mat
  • 5 x 7 + Corkboard Oval Mat
  • 8 x 10 + Corkboard Oval Mat
  • 8.5 x 11 + Corkboard Oval Mat
  • 11 x 14 + Corkboard Oval Mat
  • 13 x 19 + Corkboard Oval Mat
  • 16 x 20 + Corkboard Oval Mat
  • 16 x 9 + Corkboard Oval Mat
  • 16 x 10 + Corkboard Oval Mat

-------------------------- Old Actions --------------------------

  • Old Custom Mat
  • Thin Mat
  • Narrow Mat
  • Mat
  • Wide Mat
  • Cork Mat
  • Frame Foreground Color
Back to Top

Actions Groups

---------------------- Please Read -----------------------------

A brief description about the intent of this Action set.

-------------------- Visualization Aids -----------------------

Action in this group work well in button mode. These actions will help with your image composition. Play the first action to show rule of third guide lines. Clicking play a second time will clear all Photoshop guide lines on this image. The second action provides different rules of third mapping in shape layers. These shape layers are placed within a layer group. The basic rule of third visibility is on by default. Just expanding the layer group and clicking on each of the vector layer mask one after the other to reveal something about your image's composition. You can switch between rule of third mapping move the guide around and use free transform on these layers to change the mapping Aspect Ratio and size. Other Actions in this group will quickly select centered Aspect Ratio selections both rectangular and elliptical. These selections can be move and transformed. While transforming these remember to hold the Shift key depressed if you want to maintain the selections Aspect Ratio. Additionally you can hold down the Alt(option) key. When both the Shift key and the Alt(option) key is held depress the transformation will be from the center of the selection. Coupling these selection with menu Image>Crop is useful. The last three actions in this group will create new layers and stroke outlines of different aspect ratio selections. These stroke actions take a long time to execute therefor they are not very useful. They exist only because the Plug-in Script I wrote made such actions possible.

------------------------- Utility Actions ----------------------

The first action is a action group will create Action sets in the action palette that you can move these action groups into so these groups can be collapsed in the action palette. This is followed by a few Actions to help identify your images as yours. There is a lighter weight version of my sharpening action which does not use smart filters and objects. Smart Filter swill slow down many Photoshop processes such as Rotate Image because every smart object and smart filter needs to be redone during these processes. Set Image Print Size is an interactive action that will set an image print size without going into the Image size dialog.

----------- Add Vignette before you Mat and Frame -------------

There are three simple actions to add a vignette layer over you image. The vignette is created mostly by the layers layer mask. Painting on the layer mask is useful for fine-tunning the effect and so is adjusting the layers opacity.

Note: Before running any one of the matting or framing action for the first time you should first set the image's print size using Image Size with resample not checked. Set the actual size you want the image to print not the mat size or frame size. Of course the size should be smaller then the total size of the mat(s) you want to create. When Canvas size is increased the added canvas will be size by using the DPI that was set by your use of Image Size without resampling. Be careful because these actions use Canvas Size and most of the time you will be given control of the Canvas Size setting. Canvas Size can crop as well as increase the canvas size. With these actions you want to be sure you are adding canvas area for the mats and frames. Your not trying to crop you image so be sure to use a good setting in the Canvas Size Dialog.

----------- Interactive Custom Matting Actions -----------------

Actions in this group let you creatively mat you images. All actions in this section run the same way. "Quick" mat actions run somewhat faster because they lack certain steps that add texture and better bevels. Mats added will automatically be cut out and sized for the images current aspect ratio plus any mats already added. The mats created can be any size and have any aspect ratio. You can also mat mats. Single and double mat actions are supplied for both rectangular and elliptical mats. These actions are interactive. You will have control in the "Canvas Size" steps where you set the mats size relatively, Absolute settings can also be made if desired. You should always be adding canvas. If you see the canvas size anchor point arrows pointing inwardly (toward the anchor point) you are doing something wrong. You will also receive control in a texturizer steps that lets you alter the texture of the mats surfaces. The inner mat on the double mat actions will be 1/8" black. Outer mats and single mats will take on the color Photoshop's foreground color was set to when the action was started.

Single mat actions contain two stop messages The first message a reminder that allows you to stop the action if you have forgotten to perform the requires prerequisites. "Did you set the Foreground Color first ? Before adding any mat did you resize the image to a known size without resampling? If both answers are yes Press Continue otherwise Press Stop. Fix the problem and then press Play in the "Action Palette". Actions can not use logic but you can. The second message reminds you a bit about how to use the canvas size dialog. "In Canvas size dialog leave Anchor (white) square centered. To maintain the current Aspect Ratio check relative and enter the same % in width and height. To change the Aspect Ratio un check relative and enter the width and height". You can use the action as many time as you want. After you create your mats you can use the action again to add a frame around them, such as a 1" black mat relative to the width and height. If your memory is better then mine you can turn these stop messages off. You will still get control in the Canvas size dialog.

If you are matting a 16 bit image you will get an error message texturizer not available. Ignore the message and click continue. Maybe some release of Photoshop will add 16 bit support to all Photoshop filters. You can fill 16 bit color mat layers with a pattern to add a texture. You never know what patterns are loaded, therefore I did not use fill to add texture. You can always change the mats layers colors and textures after the action is run.

Double mat actions are somewhat like running the a single mat action twice however you can not maintain the images current aspect ratio. The inner mat will be a Black 1/8 inch mat all around the image which changes the images from its current aspect ratio. If you want to maintain the current Aspect ratio you need to use the single mat action twice. Double mat actions also have two Stop messages. The second message "In Canvas size dialog leave Anchor (white) square centered. The current image Aspect Ratio was changed by the addition of an inner 1/8 inch black mat. Set the width and height size to the size you want the outer mat to have.". The comments on the 16-bit mat layers applies to double mat actions as well..

---------------- Interactive Framing Actions -------------------

First action is a simple action to add a Photo Board and Photo Corners. Photo Corners take on the aspect ratio of the image. If the image has a real Photoshop "Background" layer, then that layer will be converted so the Photo Board layer can be placed below it.

The action contains two stop messages. These can be turned off or removed they are just reminders. The first message is a reminder that the current foreground color will be used when adding the Photo board. The second stop message is to reminds you that it is easy to reposition the Photo Corners using free transform. On the 4 Corners layer press and hold the Alt+Shift keys while moving a corner to maintain the current aspect ratio and position all four corners at once. You can always change the photo board color after you run the action add a texture to it or adjust its color using the color balance adjustment layer.

I downloaded the Photoshop Frame patterns from the Adobe Exchange. These were created by George S Dingwall (http://www.georgedingwall.co.uk/index.html). Some actions and scripts can be downloaded from the Adobe Exchange and some from his site. He created these for his Nikon D70 and D200 cameras images. He had some predefined ideas how he wanted to print and mat his images. He created three set of patterns each set contain a set of frame patterns for his D70 and an identical set for his D200. I have combined his three sets into one for this package. I liked his patterns and thought the 464 and 365 pixel width were good sizes.

The Mitered Frame Actions add frames that are xx pixel wide on all sides of the image. You will be given control in "Fill" steps. The fill will default to one of the patterns in the supplied pattern set. You can choose any other pattern in the set. If you hold the mouse cursor over a pattern its name and size will be displayed. Use patterns with the correct xx pixel width for the action being played. You can add your own patterns for frames to Photoshop.

Oval mats actions give you the opportunity to change Photoshop's foreground color which will be used for the wall color. There are only two styles of oval frames one shiny metal and one wood. These frame get their appearance from two things a creative layer style and the layers underlying fill pixels. You can always play with these after you run the actions. The shiny metal style came from Adobe Exchange I renamed it "Oval Metal" and made a variant of it and called it "Oval Wood".

------- Standard Crop Actions Interactive Positioning ---------

These are interactive actions for better cropping control. After the action sets a selection for a standard center crop you will be in control in a Transform Selection step. You can move the selected area using the arrow keys or the mouse. You can also Transform and move the selected area with the mouse. If you transform the selection you must hold the "Shift" Key or the "Shift" and "Alt" Keys to constrain the selection to its current Aspect Ratio. Note: If you mess up and change the Aspect Ratio while doing the Transform hit the "Esc" Key to cancel the transform instead of committing the transform with the "Enter" key. The Action will stop at that point and revert back to the center selection. Press the Play button in the action palette and you will be back in the Transform step and you can try again remembering to use the "Shift" and "Alt" keys this time.

-------------------- Cropping Action Templates -----------------

You copy these actions and then rename the copy for the Aspect Ratio actions you want to create. You then use "Record Again..." from the Action Palette fly-out menu to re-record the first and last script steps in renamed action. You record the aspect ratio crops you want and also the print size. You then move the new action the group they belong in the save the action set.

---------- Standard Crop Actions for Batch Processing ----------

These actions will do an automatic center crop selection in the correct aspect ratio, crop the image and then set the images print size. These actions are intended to be used with Photoshop's Batch and Image Processor functions. Actions in the Standard Crop Actions Interactive Positioning group can also be used in the Batch and Image Processor functions, however User intervention is required with those actions. That will really slow down any batch processing being done, but you will have great control over the cropping. Still I think the interactive actions are best used outside of batch processing.

---------------- JJMack's Photo Collage Toolkit ----------------

Photo Collage Toolkit

-------------------- Old Actions ------------------------------

Some old action from my old package just in case anyone was fond of them.

Back to Top

About my Actions

I like to create Actions that will work on Layered Documents, preserve the layers, work all the time and not produce error messages. These action were created to work on large image files. While most will work on web size file the results may be bizarre. It does not make sense to add 700 to 900 pixel to the width and height of a web size image which is what the Miter Frame actions do. The Mat Actions trim 20 pixel all around its inner opening for the Mat bevel. That would be too large for a web size Image, and may even delete all pixels in a mat causing the texturizer step to fail. If you want to user these Frames and mats on the Web resize the image for the Web after using these actions on print sized files. The Photo Corners action will most likely work on any size image because every thing it does is done relatively.

Many of the included actions use Photoshop Scripts I created to make these actions more user friendly and easier to use. Some of the included actions would be impossible to record or even create without these scripts. This package is a bit more advanced than the ordinary actions created by users. While the action themselves are quite easy and simple there is a heavy reliance on two included Photoshop Scripts That Scripts behave like a Photoshop Plug-ins. They will appear in Photoshop's Automate menu i.e.. File>Automate>Aspect Ratio Selection... and File>Automate>Long Side Print Length... if you put a shortcut into Photoshop Script folder linking it to my Photoshop Script Folder "C:\Program Files\Adobe\Adobe Photoshop Scripts\".

Because these Scripts work like Photoshop Plug-ins when their "use" is recorded by Photoshop's Action recorder the recorder will record the parameters set into the script's dialog by the action creator. When the action is played back no dialog will be displayed and the recorder parameters will be passed to the script. Like any Photoshop action step that has a dialog the dialog can be activated in the script step by clicking the second box in the action step. If you would like to use the scripts in your own actions you need to link Photoshop's script directory to mine or menu>File>Scripts>Browse browse to my directory and select the script.

When Actions are recorded if they use a script that Script's full path is recorded within the action so these actions will work even it you do not link Photoshop's script directory to mine. Having my own Script directory outside of Adobe's normal path allows my actions that use my scripts to be used from one Photoshop release to an others without having to edit the action and record again the script steps. One might even forget what setting the used when the originally recorded the action.

These scripts allow action creators to easily create actions that work on images and not have to worry much about which orientation an image has (Landscape or Portrait). If you wish to create you own actions that use these scripts remember to copy the link shortcut into Photoshop's script directory. Then the Aspect Ratio Selection script and the Long Side Print Length Scripts will be in Photoshop's menu File>Automate>Script Name and available for use.

Some details about some of the actions

The Add Photo Board and Photo Corners action needs to place a new layer on the bottom of the layer stack and then enlarged the canvas size. You can not do this if there is a real Photoshop "Background" layer. If there is one it must be converted to a normal layer. If one record a convert Background to normal layer it can be done. However if you play such an action when there is no background layer an error message Object Background not available Continue ? or Stop ? will occur. User intervention is required to continue the action and it would work but they could as easily stop the action. So I hacked a script which will convert the background layer to a normal layer if there is one and target it. If there is no background the script will target the bottom layer. There will be no error massage.

The Mat actions originally relied on the Document having a background layer for the Mat bevels styles to fall on, where the Canvas added was gray. If there is no background layer when canvas is added by Photoshop, Photoshop adds transparent canvas. This cause the Mat layers bevel to be transparent. You can fix this by addling a 50% Gray layer and moving it to the bottom of the stack. Still I considered this a bug so I hacked a script that added a new background layer if the document did not already have a background layer. However then I noticed a second problem with the mats bevels. Outer mats bevels were being mixed with layer style from inner mats. I needed to hide these lower layer style that were being cut off because there was no more canvas for them to fall on. I needed to add a layer for the Mats bevel to fall on and also hide any inner mat layer style. So I added the needed action steps and removed the script that took me a while to hack for it was no longer needed.

On the Mitered Frame actions I originally created, the user interface bothered me. The user needed to select the frame pattern for both Vertical and Horizontal frame pieces. I wanted to create all four sides with one selection from a single filled piece. In order to do this I needed to select and fill a mitered selection of the images longer side. So I needed to fix the bugs in a script I had down loaded. The Script is designed to be used twice in an action. The first time the script is used it will rotate Portrait images to Landscape and mark the meta-data to rotate back. The second time the script is used, if the image meta-data says to rotate back the script will rotate the image back and remove the mete-data marking. You now only need to select the frame pattern once. The down side of this update is that Portrait images are now rotated four times not just twice which add time to the execution.

Back to Top

About Photoshop Scripting

Photoshop Scripts though I hack at these I do not really know Object orientated programming Java or Javascript

If you want to learn a bit about Photoshop Action, Scripts and shortcuts I would highly recommend that you visit Trevor Morris Web Site http://morris-photographics.com/photoshop/index.html There you will find a few short, well-written introductory tutorials that address Photoshop Actions and Scripts. You will receive great tips and learn some very good practices. There are also more then a dozen free well-written Photoshop Scripts you can download. There you will also find a complete list of shortcuts for Photoshop versions 5 through CS3 and his presets for CS, CS2 and CS3. These were a godsend when writing my actions.

Scripts can use logic to manipulate a Photoshop Document using Scripting Programming Languages (AppleScript, VBScript and JavaScript) through the Adobe Photoshop Scripting Interface. Script can retrieve document data and information like attributes, sizes, layers, meta-data EXIF and others. Adobe also provides a Plug-in called the Script Listener that will record Photoshop Scripts in the same vein as Photoshop's Action Palette records Action. However like Action there is no logic in these Scripts just step, step, step. You also have no recording controls once the Plug-in is installed Photoshop will record every thing that is recordable until you remove the plug-in, then you must extract the step you did and add the logic you want. There are some thing that the Script Listener can record that can not be done using Adobe's normal Scripting functions. The Script Listener uses a special object model that is used with the Action Manager. The Script Listener steps are well delimited but not easy to read. You can replace some constants recorded in the Listener steps with script variable and create script functions from these. If you're looking at a Photoshop script and come to a section the you can't seem to read or understand. the author most likely used the Script Listener for that function.

About the included Scripts

These scripts perform simple logical steps for actions.

ConvertBackground.jsx

This Script simply targets the bottom layer and ensures that it is a Normal layer. While it is easy to target the bottom Layer in a action by recording the short cut "Alt(option)+," you do not know if the layer is normal layer or the unique Photoshop background layer. If you record a convert background step in an action and that action is played with a document that does not have a real background layer error message "Object Background not Available Continue or Stop?" will occur and the user must make a choice. This script solves the problem. This script is used by the Add Photo Board and Photo Corners action.

NewDocFromSelection.jsx

Creates a new Document containing the selected part of the current actives layers will fail if the selected area is empty contains no pixels or needs to be rasterized like text, fill 0 shape layer style, etc.

OneInchMiteredLeftEdgeSelection.jsx

This Script simply retrieves the document current resolution DPI and its height in pixels. Then it makes a 1" wide vertical selection on the left side of the document with mitered 45 degree end cuts. This script is used by the Mitered Framing actions.

orient.jsx

This script I downloaded from the Web it was hacked from an old Adobe sample script. The original designer/hacker made some logic error and omissions in implementing his design. I fixed these problems. The script is designed to be run twice in an action. Sometime when you create an action you would like to know the documents orientation Landscape or Portrait. Running this script for the first time in an action will ensure that the document is in landscape orientation. The document will be rotated to landscape and marked that it was rotated if need be. The second time the action runs this script, it will find that the document is marked as rotated, so will rotate it back and remove the "rotate" marker from the document. This script is used by the miter framing actions to enable them to create a full frame from a single filled selection.

RandomColors.jsx

Sets Photoshop's Foreground and Background colors randomly.

SaveAndRestoreColors.jsx

This script records Photoshop's current Foreground and Background swatch colors into the images metadata on the first run. During the second usage the script retrieves and removes from the documents metadata the saved colors and set Photoshop's Foreground and Background colors to the saved colors.

SaveAndRestoreResolution.jsx

The script is designed to be run twice in an action. Sometime when you create an action you would like to know the documents dimensions remember them change them temporary resize without resampling do something then restore the original dimensions. Using this script twice in an action lets you do that. Running this script for the first time will see that it the first time and will insert into documents metadata file info instruction field the documents current resolution. The second time the script is run from the action the script will see that this is the second time it is being run and will insure the dimensions are the same as the when first run by resizing the document to the original resolution without resampling and remove the saved resolution from the metadata. The documents metadata file info instruction field original data is preserved a similar update was made to the orient.jsx script so the are save to run in the same action. This script also saves and restores Photoshops preferences units (ruler and type) settings.

SelectBackground.jsx

Sound like an easy thing to do, but it is not so easy when there is no background layer. A document may have many layers with the name "Background" and none of these has to be a real Photoshop Background layer. The Background layer sits at the bottom of the layer stack . No layer can be moved below it and it does no support transparency. When Canvas gets added to a Background layer it will always have a color. This script targets the bottom layer if the target is not a background layer the script add a new Layer moves it to the bottom of the stack and converts it into a real Photoshop Background layer. I created the script for use with the Mat actions, Then I ran into an other problems with the mat actions. Solving those problem negated the need for a background layer. So I removed this script from the action, but still the script may com in handy some day.

SelectVignette.jsx and SelectVignetteBorder.jsx

Make a feathered elliptical selection that has the same aspect ratio as the image. Used by the Vignette actions.

SelectEllipse.jsx

Makes elliptical selections that have the same aspect ration as the image. Used by the oval mat and oval frame actions.

ExifData.jsx

This add a text layer with all the Cameras EXIF data. For some unknown reason Photoshop's script text interface performs very slowly when setting the text paragraph contents.

StampExif.jsx

This scripts acts like the ExifData script but the text added is not a paragraph and only some of the EXIF is in the text layer. The script also tries to retrieve lens information the may be in the images XML data. There are also two variables "Biz" and "Owner" are business and name. You should change them set to your name and business unless you're so embarrassed by you images you want to blame their existence on me!

BatchOneImageCollage.jsx

Batch Populate One Image Photo Collage Templates.

BatchMultiImageCollage.jsx

Batch Populate any Photo Collage Template.

Two scripts included were modeled after a script that ships with Photoshop CS3 "Fit Image". Fit Image will resample an image and constrain its size to fit within some Pixel size. This script is very handy when you create actions for making Web size images. My two scripts do not change any of the image's pixels. Aspect Ratio Selection script just sets a selection of the requested aspect ratio fitted to the current image. It is up to the user of the script to do the actual crop. The Long Side Print Length Scripts only changes the current documents DPI setting to so it will print the requested size.

The Aspect Ratio Selection script and the Long Side Print Length Scripts can be found in Photoshop's menu File>Automate>Script Name if Photoshop's script directory is linked to my Photoshop script directory. These Scripts can be used within a Photoshop action. Setting used in the scripts dialog while recording the action will be recorded and used when the action is played back without showing any dialog. You of course can turn the Dialog Back on within the action to make it interactive.

AspectRatioSelection.jsx

The Aspect Selection Script is like using the Rectangle and Elliptical Marquee Tools with a couple of twist thrown in. The selection will automatically be sized to fit the image and can be centered. All the normal features of the marquee tools have been implemented. You can feather and anti-alias the selection. The selection mode can be new||replace, diminish||subtract, extend||add, and intersect. The selection can also be shrunk to allow a 25% border around it. Most of these features are not used by these actions. Maybe you can come up with some uses for them.

LongSidePrintLength.jsx

The Long Side Print Length Scripts only changes the current documents DPI setting to so it will print the requested size. Though this is a very simple function the script is quite involved. To be able to pass parameters to a script the script needs to be coded in a very complex way and act as a Photoshop plug-in. The amount of work involved to do such a simple "If" then "do" else "do" turned out to be a file well over 400 line long. Thankfully most were stolen from Photoshop's "Fit Image" script. You've got to love software reuse!

Finally a note regarding the script code in these two Photoshop plug-in scripts. The code uses some strange strings that look like some kind of registration numbers. I do not know how one would get such a thing. So I use the ones that belong to "Fit Image" and changed two string by on number. I changed the one "Fit Image" used to record and retrieve its parameters, and the string that identifies the script as "Fit Image". My scripts work and do not interfere with "Fit Image". However I do not know if using numbers like "Fit Image's" registration numbers will not cause any problem sometime in the future. Later, Xbytor informed me the things that looks like a registration code is actually a UUID. There are several places on the net to have a unique on generated for you. I get mine at http://www.famkruithof.net/uuid/uuidgen. Now I know what it is, however I'm not going to change the strings that I have used unless there is a conflict. I think there is a small chance that this will happen, for the actions have been recorder and many users are using them. I do not know if getting my own UUID and changing the scripts to use them will affect the installed base script.

Back to Top

Footnote

I wish there was a way in Photoshop's Action Palette to have nested Action Sets to help organize Actions within the action palette. With the limited space of the Action palette it would very helpful to be able to collapse areas and do less scrolling to get to the action one wants to use. This Action set has a large number of actions, so it is hard to navigate within the package. So I grouped the action and recorded an action you can run to make action sets with the group name then drag the actions groups here into them.

[ Action Palette ]

Back to Top