Re: Thumbnail service



On Wed, 20 Jun 2001, Federico Mena Quintero wrote:
> I don't want to have a mess of locking files and ad-hoc mechanisms
> defined; I want
>
> 	interface ThumbnailListener;
>
> 	interface ThumbnailService : Bonobo::Unknown {
> 		/* You ask for a thumbnail with this, get notified
> 		 * later when it is ready.
> 		 */
> 		void requesthumbnail (in string filename, in ThumbnailListener listener);
>
> 		/* You unconditionally discard a cached thumbnail with this */
> 		void discardThumbnail (in string filename);
>
> 		/* Allows the GIMP to create its own stuff */
> 		void putThumbnail (in string filename, in YourFavPictureFormat image);
> 	}
>
> 	interface ThumbnailListener : Bonobo::Unknown {
> 		void notifyThumbnailReady (in string filename, in YourFavPictureFormat image);
> 	}
>
> The ThumbnailService would also have the PropertyBag interface with
> things like thumbnail width/height and the maximum size of the thumbnail
> cache.

While I worked on my thumbnail proposal I noticed the real big problem:
What size do thumbnails have? Especially if you want to support multiple
sizes (small, medium, large or 72x72, 96x96 and 120x120), where the size
is adjustable by the user. The nautilus people pointed out that they plan
to add support for this in the future and I can imagine that it is also
usefull for other applications (even for EOG).

I see two possible concepts to solve this:

a) Every program creates thumbnails in its most appropriate size. If
another program requests a thumb for the same image, but in a different
size, the thumbnail will be transparently scaled to this or if the size is
too different, creates another thumbnail from this image. If you have
multiple thumbs for one image take the one with the smallest difference in
width and heigth (according to the request) and scales it then.

b) We define a standard which allow some possible thumbnail sizes (like
XS, S, M, L, XL, XXL, the exact dimensions must be discussed). Every
program is only allowed to save and request thumbs with one of these
sizes.

Well, a) is the most flexibel, b) the most easiest solution, which gives
always the best thumbnail quality.

What do you think on this issue?

 Jens





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]