exception);
if (cmyk_image == (Image *) NULL)
break;
- if (SetImageStorageClass(cmyk_image,DirectClass) == MagickFalse)
+ if (SetImageStorageClass(cmyk_image,DirectClass,exception) == MagickFalse)
break;
- (void) SetImageColorspace(cmyk_image,CMYKColorspace);
+ (void) SetImageColorspace(cmyk_image,CMYKColorspace,exception);
image_view=AcquireCacheView(images);
cmyk_view=AcquireCacheView(cmyk_image);
for (y=0; y < (ssize_t) images->rows; y++)
% o exception: return any errors or warnings in this structure.
%
*/
+
static inline ssize_t MagickRound(MagickRealType x)
{
/*
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
-
crop_image=NewImageList();
next=NewImageList();
flags=ParseGravityGeometry(image,crop_geometry,&geometry,exception);
-
if ((flags & AreaValue) != 0)
{
- /*
- MagickBooleanType
- proceed;
-
- MagickProgressMonitor
- progress_monitor;
-
- MagickOffsetType
- i;
-
- MagickSizeType
- number_images;
- */
- size_t
- height,
- width;
-
PointInfo
delta,
offset;
RectangleInfo
crop;
+ size_t
+ height,
+ width;
+
/*
- Crop into NxM tiles (@ flag)
+ Crop into NxM tiles (@ flag).
*/
width=image->columns;
height=image->rows;
}
delta.x=(double) width/geometry.width;
delta.y=(double) height/geometry.height;
- /*proceed=MagickTrue;
- i=0;
- number_images=geometry.width*geometry.height;*/
for (offset.y=0; offset.y < (double) height; )
{
if ((flags & AspectValue) == 0)
{
- crop.y=(ssize_t) MagickRound((MagickRealType)
- (offset.y-(geometry.y > 0 ? 0 : geometry.y)));
+ crop.y=(ssize_t) MagickRound((MagickRealType) (offset.y-
+ (geometry.y > 0 ? 0 : geometry.y)));
offset.y+=delta.y; /* increment now to find width */
- crop.height=(size_t) MagickRound((MagickRealType)
- (offset.y+(geometry.y < 0 ? 0 : geometry.y)));
+ crop.height=(size_t) MagickRound((MagickRealType) (offset.y+
+ (geometry.y < 0 ? 0 : geometry.y)));
}
else
{
- crop.y=(ssize_t) MagickRound((MagickRealType)
- (offset.y-(geometry.y > 0 ? geometry.y : 0)));
+ crop.y=(ssize_t) MagickRound((MagickRealType) (offset.y-
+ (geometry.y > 0 ? geometry.y : 0)));
offset.y+=delta.y; /* increment now to find width */
crop.height=(size_t) MagickRound((MagickRealType)
- (offset.y+(geometry.y < 0 ? geometry.y : 0)));
+ (offset.y+(geometry.y < -1 ? geometry.y : 0)));
}
crop.height-=crop.y;
crop.y+=image->page.y;
for (offset.x=0; offset.x < (double) width; )
{
- /*progress_monitor=SetImageProgressMonitor(image,
- (MagickProgressMonitor) NULL,image->client_data);*/
if ((flags & AspectValue) == 0)
{
- crop.x=(ssize_t) MagickRound((MagickRealType)
- (offset.x-(geometry.x > 0 ? 0 : geometry.x)));
- offset.x+=+delta.x; /* increment now to find height*/
- crop.width=(size_t) MagickRound((MagickRealType)
- (offset.x+(geometry.x < 0 ? 0 : geometry.x)));
+ crop.x=(ssize_t) MagickRound((MagickRealType) (offset.x-
+ (geometry.x > 0 ? 0 : geometry.x)));
+ offset.x+=delta.x; /* increment now to find height */
+ crop.width=(size_t) MagickRound((MagickRealType) (offset.x+
+ (geometry.x < 0 ? 0 : geometry.x)));
}
else
{
crop.x=(ssize_t) MagickRound((MagickRealType) (offset.x-
(geometry.x > 0 ? geometry.x : 0)));
- offset.x+=+delta.x; /* increment now to find height */
- crop.width=(size_t) MagickRound((MagickRealType)
- (offset.x+(geometry.x < 0 ? geometry.x : 0)));
+ offset.x+=delta.x; /* increment now to find height */
+ crop.width=(size_t) MagickRound((MagickRealType) (offset.x+
+ (geometry.x < 0 ? geometry.x : 0)));
}
crop.width-=crop.x;
crop.x+=image->page.x;
next=CropImage(image,&crop,exception);
- /*(void) SetImageProgressMonitor(image,progress_monitor,
- image->client_data);
- proceed=SetImageProgress(image,CropImageTag,i++,number_images);
- if (proceed == MagickFalse)
- break;
- */
if (next == (Image *) NULL)
break;
- /*(void) SetImageProgressMonitor(next,progress_monitor,
- next->client_data);*/
AppendImageToList(&crop_image,next);
}
if (next == (Image *) NULL)
break;
- /*if (proceed == MagickFalse)
- break;*/
}
+ ClearMagickException(exception);
return(crop_image);
}
}
return(crop_image);
}
-
- if ((image->columns > geometry.width) ||
- (image->rows > geometry.height))
+ if ((image->columns > geometry.width) || (image->rows > geometry.height))
{
- /*
- MagickBooleanType
- proceed;
-
- MagickProgressMonitor
- progress_monitor;
-
- MagickOffsetType
- i;
+ RectangleInfo
+ page;
- MagickSizeType
- number_images;
- */
size_t
height,
width;
x,
y;
- RectangleInfo
- page;
-
/*
Crop into tiles of fixed size WxH.
*/
if (height == 0)
height=page.height;
next=NewImageList();
- /*proceed=MagickTrue;
- i=0;
- number_images=0;
- for (y=0; y < (ssize_t) page.height; y+=(ssize_t) height)
- for (x=0; x < (ssize_t) page.width; x+=(ssize_t) width)
- number_images++;
- */
for (y=0; y < (ssize_t) page.height; y+=(ssize_t) height)
{
for (x=0; x < (ssize_t) page.width; x+=(ssize_t) width)
{
- /*progress_monitor=SetImageProgressMonitor(image,
- (MagickProgressMonitor) NULL,image->client_data);*/
geometry.width=width;
geometry.height=height;
geometry.x=x;
geometry.y=y;
next=CropImage(image,&geometry,exception);
- /*(void) SetImageProgressMonitor(image,progress_monitor,
- image->client_data);
- proceed=SetImageProgress(image,CropImageTag,i++,number_images);
- if (proceed == MagickFalse)
- break;
- */
if (next == (Image *) NULL)
break;
- /*(void) SetImageProgressMonitor(next,progress_monitor,
- next->client_data);*/
AppendImageToList(&crop_image,next);
}
if (next == (Image *) NULL)
break;
- /*if (proceed == MagickFalse)
- break;*/
-
}
return(crop_image);
}
- /*
- Action of crop results in no change in image!
- This is not an error so return a clone of the image!
- */
return(CloneImage(image,0,0,MagickTrue,exception));
}
\f
exception);
if (extent_image == (Image *) NULL)
return((Image *) NULL);
- if (SetImageStorageClass(extent_image,DirectClass) == MagickFalse)
+ if (SetImageStorageClass(extent_image,DirectClass,exception) == MagickFalse)
{
- InheritException(exception,&extent_image->exception);
extent_image=DestroyImage(extent_image);
return((Image *) NULL);
}
image->rows+splice_geometry.height,MagickTrue,exception);
if (splice_image == (Image *) NULL)
return((Image *) NULL);
- if (SetImageStorageClass(splice_image,DirectClass) == MagickFalse)
+ if (SetImageStorageClass(splice_image,DirectClass,exception) == MagickFalse)
{
- InheritException(exception,&splice_image->exception);
splice_image=DestroyImage(splice_image);
return((Image *) NULL);
}