So the magic command for printing Emacs buffers with color syntax highlighting is:
C-u M-x ps-print-buffer-with-faces
That prompts you for a .ps file name, which you can then use ps2pdf on and open with Preview.app.

Setup can be done in .emacs -- for example, to get two-column printing:

   (setq ps-paper-type 'letter
     ps-font-size 8.0
     ps-print-header nil
     ps-landscape-mode t
     ps-number-of-columns 2)
and re-evaluate the .emacs buffer with M-x eval-buffer if you don't want to restart emacs.

More documentation can be found in the ps-print.el file, which is deeply buried where you can't find it with Spotlight:

/Applications/Emacs.app/Contents/Resources/lisp/ps-print.el.gz
and also: http://www.gnu.org/software/emacs/manual/html_node/emacs/PostScript.html