Paparazzi! 1.0b2

Release Notes


New Features
  • Paparazzi! is now a universal binary! Woohoo!
  • Disabled the disk cache completely, as we always want the most recent copy of the page.


  • Fixed a crash that could occur if a Safari bookmark item had no title element.
  • Removed the duplicate Info.plist file from the Resources subdirectory. Why was that in there?!
New Features
  • Paparazzi! now allows capturing of HTTPS sites with “bad” certificates. To do: let the user know that the site has a “bad” certificate, though this is probably unnecessary.
  • Menu items for imported bookmarks now display their URLs as a tool tip when hovered over.
  • Fixed linebreak count after the 0.4.1 changelog in the changelog file on the disk image.


  • Fixed a trivial glitch in which the order of the toolbar items in the Preferences window could be reversed. (I forgot that -[NSDictionary allKeys] is ordered ambiguously.)
New Features
  • Added a system service, “Capture with Paparazzi!”.
  • Strings that start with “/” or “~” are now treated as file paths.


  • Fixed an error that could occur on a zero-second client-side redirect, causing the WebView to be resized to 0×0, totally messing things up. (NSImage can't cache 0×0 images? Who would have guessed?)
  • Fixed saving of backgrounds when saving as PDF.
  • Fixed the “URL History” setting so Paparazzi! actually shows the number specified instead of the number plus one.
  • Set the WebView’s host window to the main Paparazzi! window, for authentication sheets, etc.
New Features
  • Basic (very basic) AppleScript support! Yay! Just drag Paparazzi! onto Script Editor to see what (little) you can do. A bit limited, and subject to change drastically in the future, but there it is! Some properties that are currently read-only will be read/write in later versions. Also, the error handling isn’t very good yet.
  • Basic update-checking support. By default, Paparazzi! now checks for new versions at application launch, and can be toggled in the preferences. I will probably change this to a more scheduled check (with its own view in the preferences window) in a later version. One can also choose “Check for Updates…” from the Paparazzi! application menu. This sends the version of Paparazzi! and your system version to the server, but no personal data.
  • Added size preset popups for min./crop size (editable in the preferences).
  • Added Web Archive (10.3.9+) and (X)HTML/SHTML extensions/mime-types to Paparazzi!’s Info.plist so one can use the Finder’s “Open With” contextual menu item.
  • Users can now check for new versions of Paparazzi! from within the application.
  • Basic bookmark import from Safari and Camino (can be toggled in the preferences).
  • Safari-like user style sheet support.
  • Added optional thumbnail icon saving.
  • I’m now including the BNF-style paparazzi: URL format document in the .dmg, as it doesn't seem to be apparent that one can do more with paprazzi: URLs than pass the current page URL.
  • Added “Open File…” (⌘O) and “Open Any File…” (⌥⌘O). “Open File…” only allows common appropriate file types to be opened (images and various text formats).
  • Redid the “default filename format” interface to use a popup menu that inserts at the current cursor location. This saves space, and is more useful (I think).
  • Changed the Preferences window from an NSPanel to an NSWindow, and moved the main window stuff to a new object, to get rid of inappropriate firstResponder bleedthrough (e.g., pressing ⌘V while the prefs window is open only to have text pasted in the main window). Escape will still close the window.
  • “Open URL…” is now called “Open Location…” and now uses ⌘L as its key equivalent.
  • The image preview now uses “promised” pasteboard data for the images, which means that I don't have to write both TIFF and PDF data to the pasteboard on each drag. An application generally only wants one of these (or none!) at a time.
  • The image preview now uses its current rendering as the basis for the drag image, instead of scaling it anew; this results in significantly more responsive drags, especially on slower machines (like mine).
  • Moved the core capturing code to a new class (CaptureController) to ease addition of a batch mode.
  • The NSString MD5 method now uses an array on the stack instead of mallocing.


  • Captures of file:// URLs are now possible to save even if the “localhost” hostname is missing. (Credit: Splunge.)
  • The preview image will no longer grow above its actual size in the preview area.
  • URLs with a client-side redirect now work properly. As a side effect, the URL field now updates on any redirect, as a standard browser would do. (Credit: Vasilis van Gemert)
New Features
  • Paparazzi! can now save as PDF, which means all text is real, selectable text. Unfortunately, the setMediaType: method only works on OS X 10.3.9 or later, so media="screen" CSS won't be applied if Paparazzi! is run on something earlier (but you should update to 10.3.9 if you’re running 10.3.x, anyway). (Hat tip: Darrel Knutson.)
  • Added a paparazzi: URL scheme, so you can easily capture an URL from your browser by prepending paparazzi: to it (e.g., paparazzi: Perfect for a bookmarklet.
  • The last n URLs captured are saved (defaults to 10).
  • The default save filename can now be customized (in the Preferences window) with various printf-style tokens.
  • An optional thumbnail can be saved, with a user-defined scale value (in the save dialog). The format of the thumbnail will be the same as the format of the full-size image; selecting PDF output will disable thumbnail output (for now).
  • Added fields for crop size.
  • Added a field for “delay between load and capture”. This allows proper capture of Flash sites. (Saving as PDF won't show the Flash content, however, for some reason.)
  • Added a “Capture From” menu to the File menu, which behaves just like the Dock menu does (and still supports only Safari and Camino).
  • Added a “Send Feedback…” menu item to the Help menu.
  • “Width” and “Min. Height” are now combined into one row, labeled “Min. Size”.
  • The URL in the URL field now changes during load in case of a redirect (as regular browsers do).
  • The window’s minimum size is a bit wider to accomidate the extra fields.







New Features




New Features



0.1.5 - 0.1.8 (JS)

0.1 - 0.1.5 (JS)