This comes up frequently. The usual answer is the Arduino is challenged to do this by being so slow and not having enough memory. On some cameras, like the one you linked to, you can take a picture, and then busily read the image and store it directly to the SD card, but it can be rather slow.
So what can you do?
One approach is just to use a camera that writes to the SD card in the first place. With higher end cameras, you can have the Arduino simulate the camera's wired/wireless shutter release, and tell the camera to take a picture. For cheaper cameras, you could use a servo to press the shutter. Or if you didn't mind modding the camera, you could do it this way: http://www.instructables.com/id/Time-Lapse-Photography/step3/Press-my-buttons/
One place that talks about modifying cameras to take pictures for a given trigger is: http://www.diytrailcams.com/