I'd imagine Preview's thumbnail drawer is done by applying an NSAffineTransform and then compositing the page images. I haven't really looked at WebKit, though, so I couldn't tell you the best way to go thumbnailing its content. Basically, though, there are two ways of scaling things in Cocoa: Using NSAffineTransform directly, or changing an NSView's coordinate system (i.e. with setBoundsSize:). And generally, NSAffineTransform is what you're looking for.