=================== BUG #4749: FULL BUG SNAPSHOT =================== http://savannah.gnu.org/bugs/?func=detailbug&bug_id=4749&group_id=99 Submitted by: None Project: GNUstep Submitted on: Sat 08/16/2003 at 06:58 Category: Application Severity: 5 - Major Bug Group: Bug Resolution: None Assigned to: None Status: Open Summary: GWorkspace thumbnail views are not correct
Original Submission: When I thumbnail an image file in GWorkspace, the resulting thumbnail does not adequately represent the original image.
I am running a CVS version of GWorkspace from 20030813 on NetBSD/i386.
While the thumbnail image might be considered attractive in an impressionist way, the image cannot be used to identify the contents of the file.
This is an almost old problem, so let me give a little explication.
I wrote the thumbnailer Service keeping in mind that it had to be something capable to generate thumbnails for many file types, not only for images. The objects that generate the thumbnails are, or bundles, as the ImageThumbnailer, or any application, tool, what you want, that registers itself as a thumbnailer provider using the thumbnailer's -registerExternalProvider: method. This part (the most important) works well and I'm very glad of this :-)
Done this, I've written the only actually available bundle, that is, the imageThumbnailer.
Theorically, this had to be very easy, doing something like this:
{
NSImage* bigImage = [[NSImage alloc] initWithContentsOfFile: path];
NSSize size = TMBSIZE;
NSImage* thumbImage = [[NSImage alloc] initWithSize: size];
NSBitmapImageRep* rep;[bigImage setScalesWhenResized: YES]; [bigImage setSize: size];
[thumbImage lockFocus];
[bigImage compositeToPoint: NSZeroPoint operation: NSCompositeSourceOver];
rep = [[NSBitmapImageRep alloc]
initWithFocusedViewRect: NSMakeRect(0, 0, size.width, size.height)];[thumbImage unlockFocus];
RELEASE (bigImage); RELEASE (thumbImage);
return (AUTORELEASE (rep)); }
But NSBitmapImageRep doesn't implement -initWithFocusedViewRect:, so, since I've had already written the service itself, I've had to find a provvisional solution. The solution was to "resize" the image data itself, using some methods taken from ToyViewer.
Here, this seems to work with almost all the tiff ang jpeg files but has problems with many xpm, png and gif files.
Anyway, I'm not going to try to fix this part of the code anymore, because I think that the right way is to implement -initWithFocusedViewRect: in NSBitmapImageRep.
_______________________________________________ Bug-gnustep mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/bug-gnustep
