Garmin not so long ago added ability to view geocache images directly on the GPS unit (more details). The functionality is not limited to caches from opencaching.com and can be used by anyone.
Since currently the most popular way of downloading photos from geocaching.com is using SpoilerSync, I created a small application that converts the output from SpoilerSync into structure that is supported by Garmin devices.
Download the application (5Kb). You will need .NET Framework 4.0 to run it.
To run it, open a console window and run SpoilerSync2Garmin.exe “C:\Where\SpoilerSync\Saved\The\Images” “G:\”
The first parameter is the folder where SpoilerSync saved all the pictures (it will have a lot of images, the file names starting with GC12345 style codes).
The second parameter is the drive letter where the Garmin GPS (must be the internal storage; for now the SD card does not work for photos) is located.
The application can also resize the images but that most probably will not be used since you can specify the size in SpoilerSync. If you need the resize, add resize 240x400 before the folder parameters. First value is width in pixels, the second – height in pixels (240x400 is the screen size for Oregon 450).
Note that GeoTransformer will soon support this out of the box.