I have the Epson Stylus CX5000 and it does an excellent job with photos!
If you think that one does an excellent job you should give one made for printing photographs a try.
Any all-in-one will do none of those "all"'s actually very good, acceptable is more the word.
The Epson model is a few generations newer than an old R300 I have which still works well...when used. My kids use it mostly for their stuff now adays.
I am not too familiar with the exact models your looking at but a few things you will want too look at:
1. can you get profiles for different papers
2. total cost of getting new cartridges (compare the ml also so per ml)
3. How many different cartridges there are...the more the better
4. Max paper size
Canon and Epson both make good products, either will more than likely work well.