Thnx, will do. Just realized I'm looking at the resample size, rather
than the original image size to determine the speed.. I'll make a
better patch when I wake up =p.
On 14 Dec 2007, at 01:16, Youness Alaoui wrote:
> /me agrees
> looks good
> just make the default to 0 if the SMART_RESIZE is unset
>> + int resampleMode = 0;
>
> KaKaRoTo
>
> On Thu, Dec 13, 2007 at 11:18:33PM +0000, Tom Hennigan wrote:
>> I propose this diff to make resizing larger images faster, and making
>> resizing smaller images result in a better quality thumb. Please let
>> me know your thoughts, I will commit the patch (if there are no
>> comments, or suggestions) when I get libjpeg and libpng built as
>> universal binaries so they can be distributed with the aMSN bundle
>> (on
>> OS X).
>>
>> Index: utils/TkCximage/src/TkCximage.h
>> ===================================================================
>> --- utils/TkCximage/src/TkCximage.h (revision 9115)
>> +++ utils/TkCximage/src/TkCximage.h (working copy)
>> @@ -55,6 +55,9 @@
>>
>> #define ENABLE_LOGS 0
>> #define ANIMATE_GIFS 1
>> +#ifndef SMART_RESIZE
>> + #define SMART_RESIZE 1
>> +#endif
>>
>>
>>
>> Index: utils/TkCximage/src/procs.cpp
>> ===================================================================
>> --- utils/TkCximage/src/procs.cpp (revision 9115)
>> +++ utils/TkCximage/src/procs.cpp (working copy)
>> @@ -219,7 +219,24 @@
>> if(alpha == 0 )
>> image.AlphaDelete();
>>
>> - if(!image.Resample(width, height, 2)) {
>> + /* Modes:
>> + 0 - Bilinear (Slow[er])
>> + 1 - Nearest Pixel (Fast[er])
>> + 2 - Bicubic Spline (Accurate) */
>> + int resampleMode = 2;
>> + #if SMART_RESIZE == 1
>> + if(width <= 800 && height <= 800) {
>> + // Use a higher quality resample for small/medium images.
>> + resampleMode = 0;
>> + } else if(width >= 1024 && height >= 1024) {
>> + // Fastest mode for "huge" images.
>> + resampleMode = 1;
>> + } else {
>> + // Fast but accurate for large images.
>> + resampleMode = 2;
>> + }
>> + #endif
>> + if(!image.Resample(width, height, resampleMode)) {
>> Tcl_AppendResult(interp, image.GetLastError(), NULL);
>> return TCL_ERROR;
>> }
>>
>>
>>
>> -------------------------------------------------------------------------
>> SF.Net email is sponsored by:
>> Check out the new SourceForge.net Marketplace.
>> It's the best place to buy or sell services
>> for just about anything Open Source.
>> http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
>> _______________________________________________
>> Amsn-devel mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/amsn-devel
>
> -------------------------------------------------------------------------
> SF.Net email is sponsored by:
> Check out the new SourceForge.net Marketplace.
> It's the best place to buy or sell services
> for just about anything Open Source.
> http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
> _______________________________________________
> Amsn-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/amsn-devel
-------------------------------------------------------------------------
SF.Net email is sponsored by:
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services
for just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
_______________________________________________
Amsn-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/amsn-devel