Automated Printing via Photoshop

by Ben Long

While Aperture includes a fairly robust printing architecture, there will still be times when you want to print images in your Aperture library from Photoshop. Whether this is because you want to print using driver-generated color, (something Aperture doesn't allow) or because you prefer the color that Photoshop generates, or because you need access to a special printing feature, sometimes Photoshop-based printing is the only way to get the results you want. To ease your Aperture to Photoshop print workflow, I've created a simple AppleScript that you can use for speedy Photoshop-based printing of your Aperture images.

Download this AppleScript, unzip it, and place it in Library > Scripts > Folder Action Scripts. Note that I'm referring to the root-level, global Library folder, not the one that's in your Home folder.

Now create a folder on your Desktop and call it Print from Photoshop. Right-click on the folder (Control-click if you don't have a two-button mouse) and choose Enable Folder Actions. Then right-click again and choose Attach a Folder Action. A dialog box should appear that's already pointing to the Folder Action Scripts folder where you placed the Print from Photoshop script. Select Print from Photoshop and hit Choose.

Folder Actions are nothing more than AppleScripts that execute as soon as something is placed in the folder to which the action is attached. So, when you place any document in your Print from Photoshop folder, the Print from Photoshop script automatically runs. It, in turn, opens that placed document in Photoshop, and executes the Print command.

For this to be useful, there are a few more things you need to configure. First, because the script doesn't offer any resizing options, you need to make certain that your images are properly sized when you export them from Aperture. In Aperture, go to Aperture > Presets > Image Export. Let's assume you want to print an 8 x 10. Create a new Export Preset by clicking the + button beneath the list of Export Presets. Call it TIFF - Fit within 8 x 10".

With the new Preset selected, change the Image Format pop-up menu to TIFF, change Size to: to Fit Within (Inches), change the Width field to 8 and the Height field to 10. Set DPI to 300 and then change the ColorSync Profile to Adobe RGB (1998).


Click OK to save the Preset.

Now pick an image that you want to print. This whole scheme assumes that your images are in portrait orientation, so if the image isn't, rotate it 90° by pressing either [ or ].

Now choose Export > File > Export Version. Change the Export Preset to TIFF - Fit Within 8 x 10 and then save the document into your Print from Photoshop folder.

After the export, Photoshop should activate, (or launch, if it wasn't already running) your document should open, and the Print dialog should automatically appear. Configure the Print dialog as needed, and click Print.

To further speed printing, consider creating a preset in the Print dialog box. For example, when printing black and white prints to my Epson R2400, I want to activate the printer's built-in black and white printing features, since these do a far better job than either Aperture- or Photoshop-managed color. So, I configure the Print dialog accordingly - black and white settings and paper type - and then save a Preset, so that I can easily choose these options with a single menu choice.

Different printer drivers communicate with Photoshop in different ways. Unfortunately, the Print command in Photoshop CS3's AppleScript library doesn't bring up the standard Photoshop Print dialog box, but rather the OS-level box. With some printers, such as the HP DesignJet B9180, the Print dialog will be locked into Application-controlled color, and the menu option to change to driver-controlled color will be greyed out, meaning you'll have no way to regain control.

If you find this is the case with your printer, then try using this script instead. Install it like the previous script, and attach it to a folder. This script works by exploiting an AppleScript feature called GUI Scripting, which is a bit of a hack. It lets you script actual interface events, so this script simulates the selection of the Print command from Photoshop CS3's File menu. For it to work, you must go to System Preferences, and then choose Universal Access. Check the box that says "Enable access for assisted devices." Your Mac is now gui scriptable.

This script works just like the other script, but will show you the Photoshop Print dialog box. Bear in mind that both of these work only with CS3. Also note that they only support printing one document at a time. If you're interested in one that can print multiples, just let me know. It's an easy enough change to make.


Ellen Anon
2007-08-14 12:49:07
Ben, in some ways this seems cool, but one of the main reasons I sometimes print from PS rather than Aperture is to be able to sharpen based on output size, and/or to do targeted sharpening. Do you find that exporting a version and having it open in PS is faster than just opening the version in PS from Aperture?


Ben Long
2007-08-14 12:55:50
Ellen, you're right that if you have any other editing to do in Photoshop, you should just use the Open in External Editor command. You can, of course, also use that command just for printing. However, if all you're interested in doing is printing, and you use Open in External Editor, then Aperture might create a new master file, which you'll then need to delete after printing is done. One thing i like about this plan is that it automatically invokes the Print dialog for me, and it doesn't clutter up my Aperture library with any extra stuff. After printing, I just empty out the Print from Photoshop folder.
Ellen Anon
2007-08-14 13:42:48
Thanks Ben - that makes sense. Deleting versions that Aperture creates when you use the Open in External Editor can be a nuisance since the original master file is also selected by default.