You are right on the resampling thing, though the purpose of my post was only to address the OP requirements. You people have already taken the resampling discussion in great detail and I didn't feel the need to discuss it any further.

Resampling should be done in conjunction to calling that function, if possible, to speed up the preloading of images.

So,
1. First determine which images you want to preload.
2. If they are not the same size as the original, then resample them. I prefer a cache folder for them so that if same image is being requested again and again, we don't need to resample them every time; Instead we pick from the cache folder
3. Then call the method I suggested.