If you don't mind paying for drivers (some people don't like paying, but I have no problem doing that if it enables me to use Linux and my printers to their full extent), then TurboPrint for Linux ( http://www.turboprint.info/printers.html
) works quite well. I bought a driver for my then brand new Canon i9900 8 color inkjet printer a few years ago, and it has survived quite well through F8 - F11 so far. It supports everything, including even the amount of ink left.
If you are looking for a color laser printer, the Konica-Minolta product series has worked well for me and is completely supported (they have Linux drivers and source on their website). I have the 2430-DL (which is now included in the default drivers in Fedora under Minolta).