A number of people who have upgraded their iPhones to iOS 4 have found that previously stored pictures will appear grainy, as if a lower-quality version is being used. This seems to affect only pictures that were on the phone before updating; new pictures taken with the phone or uploaded to it seem fine.
MacFixIt reader "Gee" asks:
I just upgrade to OS4 and now my photos are all blurry and I can no longer attach them to my text messages. I have an iPhone 3GS. What's up with that?
This problem may be an issue with how the iPhone is managing previews for the pictures that have previously been imported to the phone. Instead of showing and handling the photo itself, the preview for the image is being used to display and attach to e-mail messages.
If this happens to your iPhone, first try a basic resync of your photos with iTunes. A number of people affected have found that this is a simple and straightforward solution to the problem. If it does not work, then do a more in-depth resynchronization by the following procedure:
Delete and unsync photos from the iPhone, and reset the phone.
Ensure the volume containing your photo library (network, external, or otherwise) is mounted.
Using iTunes, resync your photos to the phone.
If you are using Aperture to manage your photos, an Apple discussion user "Seegem" has suggested a possibility for clearing this problem.
Aperture has more control over preview handling than iPhoto, so if you use Aperture you can set a limit to the preview sizes. If the sizes are set too small, the previews on the iPhone may show a blurry and low-resolution image.
To ensure previews are big enough for viewing on the iPhone, go to Aperture's preferences and change the preview size settings so the preview is at least 320x480 pixels. Then rebuild the previews for your photos by selecting all photos, hold the Option key and right-click them. Choose "delete previews" and then quit and relaunch Aperture.
When the previews have been rebuilt, remove all current photos from the phone and then go to iTunes and resync the library with new previews to the phone.