Plugin a specific cache functionality?

Most of WordPress caching functionality is set up with text (serialized if needed) in mind. Since you need to store binary data it is probably better to maintain own cache.

As for location of cache I think it depends:

  • for single personal installation I would pick directory that is short and makes nice URL, for example I store icons at /images/icons/ (/images/ being my directory for all images)
  • for something that might be used across different installations or by other users I think /plugins/myplugin/mycache/ makes most sense if functionality is packaged as plugin (same but in theme directory, if part of theme)