From 065f8beaaf329a79ab95e99b4104d0d1c0f81e8d Mon Sep 17 00:00:00 2001 From: cristy Date: Sat, 16 Oct 2010 00:21:58 +0000 Subject: [PATCH] --- ChangeLog | 2 ++ magick/resample.c | 10 +++++----- magick/resize.c | 6 ++++++ 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index 756fb2655..c20f49c8d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,7 @@ 2010-10-14 6.6.5-1 Cristy * Ignore PS bounding box offsets if -page is set. + * Associate a resize filter for each of the horizontal and vertical passes + when resizing. 2010-10-12 6.6.5-0 Anthony Thyssen * Added "filter:sigma" expert setting defining the 'sigma' for the Gaussian diff --git a/magick/resample.c b/magick/resample.c index e1f21fdba..1c450e135 100644 --- a/magick/resample.c +++ b/magick/resample.c @@ -1028,13 +1028,13 @@ MagickExport MagickBooleanType ResamplePixelColor( CacheView *average_view; - GetMagickPixelPacket(resample_filter->image, - (MagickPixelPacket *)&(resample_filter->average_pixel)); - resample_filter->average_defined = MagickTrue; + GetMagickPixelPacket(resample_filter->image,(MagickPixelPacket *) + &resample_filter->average_pixel); + resample_filter->average_defined=MagickTrue; /* Try to get an averaged pixel color of whole image */ - average_image=ScaleImage(resample_filter->image,1,1, - resample_filter->exception); + average_image=ResizeImage(resample_filter->image,1,1,BoxFilter,1.0, + resample_filter->exception); if (average_image == (Image *) NULL) { *pixel=resample_filter->average_pixel; /* FAILED */ diff --git a/magick/resize.c b/magick/resize.c index 953bf6d75..23efed838 100644 --- a/magick/resize.c +++ b/magick/resize.c @@ -2572,6 +2572,9 @@ MagickExport Image *ResizeImage(const Image *image,const size_t columns, span=(MagickSizeType) (filter_image->columns+rows); status=HorizontalFilter(resize_filter,image,filter_image,x_factor,span, &offset,exception); + resize_filter=DestroyResizeFilter(resize_filter); + resize_filter=AcquireResizeFilter(filter_image,filter_type,blur, + MagickFalse,exception); status&=VerticalFilter(resize_filter,filter_image,resize_image,y_factor, span,&offset,exception); } @@ -2580,6 +2583,9 @@ MagickExport Image *ResizeImage(const Image *image,const size_t columns, span=(MagickSizeType) (filter_image->rows+columns); status=VerticalFilter(resize_filter,image,filter_image,y_factor,span, &offset,exception); + resize_filter=DestroyResizeFilter(resize_filter); + resize_filter=AcquireResizeFilter(filter_image,filter_type,blur, + MagickFalse,exception); status&=HorizontalFilter(resize_filter,filter_image,resize_image,x_factor, span,&offset,exception); } -- 2.50.1