Quartz 2D Graphics

Quartz 2D Graphics for Mac OS X(R) DevelopersI haven’t finished the book yet, I’m about half way through. But so-far it’s a great book about an excellent part of Mac OSX.

The book details how you should use Quartz 2D and Core Image. Quartz 2D is a central piece in the graphics development on Mac OSX. The thing with Quartz 2D is the fact that it is resolution and color independent. And this book really hammers it down. The interesting thing to me is the fact that Graphics 2D in Java is also resolution and color independent. This resolution and color independence makes it possible to program in a device independent manner. The “device” can be the screen, a memory bitmap, a PDF file/memory structure, a printer or anything else which is capable of displaying or producing graphics. The end result of this is that you only have to write your drawing code once without any device specific intricacies. There are a few things to keep in mind in a few exceptional cases, but that’s usually not a problem at all.

The book doesn’t seem to contain a lot of code. Most of the time it shows a few snippets to get a point across. But every listing comes with a number which references a file on the accompanying compact disk. Excellent stuff, you see something interesting, you want to fiddle with it in an editor anyway. So why waste precious page space? I personally hate it when books are half code, half actual text. Quartz 2D graphics on the other hand strikes just the right balance to me.

This books also goes into Core Image. Core Image is a framework on OSX which allows programming of the systems graphics card. If the graphics card does not support such actions Core Image provides a soft alternative, which is a lot slower offcourse.