14 Comments

Summary:

Taking screenshots on Windows used to a laborious process, consisting of performing a print screen then editing the result in Photoshop. Leopard (and indeed, earlier editions of OS X) goes a long way to simplifying the process with different key combinations to achieve different results. It […]

Taking screenshots on Windows used to a laborious process, consisting of performing a print screen then editing the result in Photoshop. Leopard (and indeed, earlier editions of OS X) goes a long way to simplifying the process with different key combinations to achieve different results. It is possible to grab the whole screen, a single window, or a user defined area of the screen. However, I commonly find myself needing to take a screenshot of an entire webpage — not just the portion that is viewable in my browser window.

This is where WebKit2PNG and Paparazzi come in. The former is a command line utility for OS X which uses the WebKit engine (the software powering Safari) to generate full page screenshots. The latter is a piece of software which offers a user friendly interface to the command line utility, making it much easier to use. I’ll focus on the features of Paparazzi first before going a little technical to explain some of the extra features offered by WebKit2PNG.

Paparazzi

Paparazzi Screenshot Utility

Using Paparazzi is simple. Open up the application and enter your URL. You can choose the size of the window that you’re emulating and also choose to crop the resulting image. It takes a few seconds to download the screenshot, then there are several export options to different image formats.

The advantage of using this method over the in-built screenshot tool is that it takes the full length image of an entire webpage. The various export options also let you immediately compress the image, rather than being required to import into Photoshop to make changes.

WebKit2PNG

If you would like a higher degree of customization in your screenshot, or need to automate the process, you’ll need to delve a little deeper into WebKit2PNG. This is a command line tool which allows you to either take a standard cropped screenshot, or the longer variety as produced by Paparazzi.

One of the requirements to run the tool is PyObjC 1.1. This is bundled by default with Leopard, but if you’re missing it for any reason it will need installing before you proceed. It simply provides a method for executing the Python code which WebKit2PNG is built upon.

WebKit2PNG

The process of taking a screenshot can be as simple as typing:

python webkit2png-0.4.sh http://theappleblog.com

This would produce three images in the current directory. One is a cropped 200x150px thumbnail, another is a full length thumbnail at 240px wide, and the final one consists of the full width, full length screenshot. The great thing about this tool is the level of customization available, some of which options are as follows:

-W WIDTH, –width=WIDTH : initial (and minimum) width of browser (default: 800)
-H HEIGHT, –height=HEIGHT : initial (and minimum) height of browser (default: 600)
–clipwidth=WIDTH : width of clipped thumbnail (default: 200)
–clipheight=HEIGHT : height of clipped thumbnail (default: 150)
-s SCALE, –scale=SCALE : scale factor for thumbnails (default: 0.25)
-o NAME, –filename=NAME : save images as NAME.png,NAME-thumb.png etc
-F, –fullsize : only create fullsize screenshot
-T, –thumb : only create thumbnail sreenshot
-C, –clipped : only create clipped thumbnail screenshot
-d, –datestamp : include date in filename
-D DIR, –dir=DIR : directory to place images into

The variety of options available allow you to essentially create any size and layout of screenshot you require. The script could even be built into an Automator workflow to process a batch of files at once, or upload them to an FTP server after the script has finished running — the possibilities are endless!

A few other screenshot tools

Whilst these two tools are great at creating full page screen captures, there are a few other notable tools out there for taking advanced screenshots on your Mac:

  • Snapz Pro – Takes various screenshot styles and can also record video
  • Screenshot Plus – A fairly full featured Dashboard widget
  • SnapNDrag – Click a button and drag the screenshot… very simple!

Are there any other tools or techniques you use for taking screenshots? Let me know in the comments — I’d be intrigued to hear about them.

By David Appleyard

You're subscribed! If you like, you can update your settings

  1. Sharpshooter is a pretty nifty screen shot helper.

    http://www.kerlmax.com/products/sharpshooter/

    Share
  2. Thats crazy ;) I just downloaded Paperazzi and a second later my rss feed makes a sound with this article.

    Crazy stuff oO

    Share
  3. A beta of Paparazzi! 0.5 is also available for download. This version contains a lot of fixes and additions; please use this version to report bugs on! This version will crash on launch under Mac OS X 10.5 (Leopard). I will fix this as soon as I can, but I don’t have Leopard at home yet.

    Share
  4. The quote marks have disappeared from the above : it is taken from the developer’s site, so Leopard users beware. It further seems development has stalled for some time now …

    Share
  5. A final thought : Firefox users can use this fine extension : http://www.screengrab.org/

    Share
  6. I commonly find myself needing to take a screenshot of an entire webpage — not just the portion that is viewable in my browser window.

    You could always just print the web page to PDF.

    Share
  7. Is there a way to take screenshots of protected webapps with Paparazzi? I can login to the webapp I want to take shots of in Safari, and then move that URL over to Paparazzi, but my session doesn’t go with it. Any idea on how to get that to work?

    Share
    1. Use the Mozilla Firefox extension, it works perfectly.

      https://addons.mozilla.org/en-US/firefox/addon/1146

      Share
  8. @DJFelix
    That was my biggest gripe about Paparazzi.

    WebSnapper can take screenshots of password protected pages.

    http://www.tastyapps.com/

    Share
  9. [...] TheAppleBlog:Full Page Screenshots On a Mac(文中的终端命令行写法不可参考) [...]

    Share

Comments have been disabled for this post