How to use third party image editors from within Picasa

! Warning: this post hasn't been updated in over three years and so may contain out of date information.

Google Picasa logo

Google’s Picasa is a pretty good photo management tool. It’s free for a start and it offers a decent feature set, including the ability to geo-tag pictures and have them appear in Google Earth. However, one aspect of it is utterly bizarre: the way in which it integrates with other programs. I don’t know about you, but the normal way I’d expect a program to integrate with 3rd party tools would either be via preferences, or via a simple, easy to edit, configuration file. I’d expect to specify the path to the application and maybe supply a PNG if the program supported some sort of toolbar.

Picasa takes a very different approach to 3rd party application integration. To make Picasa aware of a 3rd party tool, one must create a zip file which contains an XML file that defines the buttons behaviour, and a Photoshop file that defines the button’s appearance. To then make Picasa aware of this file, one needs to deliver it via a web link or by entering a complex URL into a web browser. Google have produced a button API, which describes the process of adding a new button fairly well. As I discovered though, there are some “gotchas” to be aware of. I use Paint Shop Pro (PSP) as my image editing tool of choice. Also, as I have a Sony Alpha digital SLR camera, I use Sony’s RAW image editor to process the photos I take. I wanted Picasa to therefore support both of these programs.

PSP Button ImageI started by creating a .pbz (the zip file) for Paint Shop Pro. I followed the API’s advice and used a GUID to give my .pbf (the XML file) and .psd (the Photoshop image) unique names. As Paint Shop Pro doesn’t store its executable location in the registery, I hard-coded the path and ended up with the following XML:

If you refer to the API documentation, you’ll see that I’ve defined a new button that will save any edits to the selected images and a make a copy of those images. It then launches PSP, and passes the set of temporary files to that application. Also the file defines the inelegantly named – but statistically unique – {68bd7eb6-3ad1-4036-92f0-8c896a754a75}.psd, which contains the button’s image.

Next, I used PSP to create the Photoshop image for the button, zipped it all up and FTP’ed it to my blog’s server and created a test page with the appropriate link in it. I loaded up the test page, clicked on the link, watched Picasa launch and ask me if I wanted to import the buttons. Then the disappointment set in, as the button’s text was all displayed correctly, but it had no image. I checked and rechecked everything, tinkered with PSP’s settings and tried again and again, but to no avail. I couldn’t get an image to appear. I happen to have a trial copy of Adobe Fireworks on my machine at the moment though, so I tried editing the Photoshop image I’d created in that. The layer’s name appeared quite different to what I’d set it as in PSP. So I fixed it, saved it and tried again. The image appeared on the button just fine.

This left me irritated with both Corel and Google. First of all with Corel: why support the saving to file formats like Photoshop if you aren’t going to implement it properly? And with Google: there are well-supported, open, image formats such as PNG that they could have used. So why did they choose a proprietary file format (especially as it’s not even their own proprietary file format!)?

sony-raw-buttonHaving overcome the image problem with my PSP button, I expected the Sony RAW tool to be fairly straightforward, and it almost was. The tool appears in the registry, so I was able to use that path, rather than hard-coding a file path as I’d done with PSP. Aside from that, I copied the XML file, changed the wording and tried using it. It installed correctly, with the correct image (courtesy of Fireworks). However, when I then selected an image and clicked in the new button, the tool complained that it was being given a JPEG file. This is fairly useless for a RAW image editing tool!

All was not lost though. After some experimentation, I removed the export tag from the file and it sprang into life. I had missed the fact that it doesn’t just create temporary copies of the images, it creates temporary JPEG images, regardless of the original file type. So the final XML for my Sony RAW button was:

At the end of the process, I now have my two buttons working well. Getting there was a painful process, but hopefully this post will save others time in creating their own buttons.

If you want to use either button in Picasa, click on the Paint Shop Pro X2 installer or on the Sony Image Data Converter SR installer links to import them into Picasa.

Alternatively, you can download the button zip files for Paint Shop Pro X2 and Sony Image Data Converter SR here.

4 thoughts on “How to use third party image editors from within Picasa

  1. I can get this working for Photoshop, but not Fireworks. Same exact method. Drives me crazy and slows down my workflow. Why don’t they just add a dialog where you can define external editors?

  2. I was able to use this to get get files from Picasa into Photoshop Elements. Thanks for the information. Tom

Comments are closed.