From: SourceForge.net <no...@so...> - 2004-12-24 16:45:51
|
Patches item #1089195, was opened at 2004-12-21 12:22 Message generated for change (Comment added) made by thekingant You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=300235&aid=1089195&group_id=235 Category: None Group: None >Status: Closed Resolution: Accepted Priority: 5 Submitted By: Graham Cole (chickens) Assigned to: Mark Doliner (thekingant) Summary: Avatar format conversion causes unnecessary quality loss Initial Comment: Here is a bug I've discovered with the way gaim converts buddy icon images to be in the correct format for the protocol: Steps to reproduce: 1. Open the preferences window for an account that supports buddy icons, e.g. an MSN account 2. Open an image to set as your icon, which although acceptable to the protocol in size, is not in the correct file format (e.g. a 96x96 JPEG image, where MSN only supports PNG) Expected result: Image is losslessly converted to the PNG format and displayed *Actual* result: Image is converted, but is very noticeably blurred --- This is caused by an apparent bug in gdk_pixbuf_scale_simple. Although it would seem safe to ask the library to scale something to the same size, it behaves oddly doing this when the chosen method of scaling is GDK_INTERP_HYPER. As the image is already the correct size in this case, I would propose simply avoiding the attempt to scale the image altogether! Attached is my attempt at a patch for oldstatus - unfortunately I'm unable to test it beyond compiling at this point in (Christmas) time,... so take it with a few handfuls of salt ;-) ---------------------------------------------------------------------- >Comment By: Mark Doliner (thekingant) Date: 2004-12-24 11:45 Message: Logged In: YES user_id=20979 Whoops, thanks. Should be fixed now. ---------------------------------------------------------------------- Comment By: Graham Cole (chickens) Date: 2004-12-24 06:18 Message: Logged In: YES user_id=759914 The fix applied is not *quite* right: It should not allow scaling when the size is equal to the max or min values. This is especially important if the max and min values are the same, as in MSN (not checked any others) Patch to correct this attached ---------------------------------------------------------------------- Comment By: Mark Doliner (thekingant) Date: 2004-12-23 20:33 Message: Logged In: YES user_id=20979 I applied this to head. And I inverted your logic some, but it should have the same effect. You might want to check to make sure I got it right, though. Thanks for the patch. ---------------------------------------------------------------------- Comment By: Graham Cole (chickens) Date: 2004-12-22 17:02 Message: Logged In: YES user_id=759914 Sorry if this wasn't crystal clear the first time round... I'm not talking about scaling images which are too large/too small, that's certainly very necessary (and works as expected, from what I can tell). I'm talking about a tiny detail in the logic of the gaim code, whereby images which are *already* the correct size are still sent to be scaled, to their original size no less! These come out the same size but blurred, due to the GTK bug. When you have an image that doesn't actually need anything done to it, might as well leave it alone instead of putting it through the blurrifier :) I did indeed post to the GTK bugzilla about this problem, though kinda as an aside to an older bug... http://bugzilla.gnome.org/show_bug.cgi?id=80927 ... maybe I'll have a go at it myself sometime soonish :o) ---------------------------------------------------------------------- Comment By: Luke Schierer (lschiere) Date: 2004-12-22 09:58 Message: Logged In: YES user_id=28833 i am against accepting this patch. i think you should report this to gtk, and it shoudl be fixed there. not scaling images is not a good solution, 1)its not how the official client behaves 2)some people pick massive images for their avatar, resulting in usably large dialogs (for any value of desktop size). ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=300235&aid=1089195&group_id=235 |