<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% CloneImageView() makes a copy of the specified pixel view.
+% CloneImageView() makes a copy of the specified image view.
%
% The format of the CloneImageView method is:
%
-% ImageView *CloneImageView(const ImageView *pixel_view)
+% ImageView *CloneImageView(const ImageView *image_view)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel view.
+% o image_view: the image view.
%
*/
-MagickExport ImageView *CloneImageView(const ImageView *pixel_view)
+MagickExport ImageView *CloneImageView(const ImageView *image_view)
{
ImageView
*clone_view;
- assert(pixel_view != (ImageView *) NULL);
- assert(pixel_view->signature == MagickSignature);
+ assert(image_view != (ImageView *) NULL);
+ assert(image_view->signature == MagickSignature);
clone_view=(ImageView *) AcquireAlignedMemory(1,sizeof(*clone_view));
if (clone_view == (ImageView *) NULL)
ThrowFatalException(ResourceLimitFatalError,"MemoryAllocationFailed");
(void) ResetMagickMemory(clone_view,0,sizeof(*clone_view));
clone_view->exception=AcquireExceptionInfo();
- InheritException(clone_view->exception,pixel_view->exception);
- clone_view->view=CloneCacheView(pixel_view->view);
- clone_view->region=pixel_view->region;
- clone_view->number_threads=pixel_view->number_threads;
- clone_view->debug=pixel_view->debug;
+ InheritException(clone_view->exception,image_view->exception);
+ clone_view->view=CloneCacheView(image_view->view);
+ clone_view->region=image_view->region;
+ clone_view->number_threads=image_view->number_threads;
+ clone_view->debug=image_view->debug;
clone_view->signature=MagickSignature;
return(clone_view);
}
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% DestroyImageView() deallocates memory associated with a pixel view.
+% DestroyImageView() deallocates memory associated with a image view.
%
% The format of the DestroyImageView method is:
%
-% ImageView *DestroyImageView(ImageView *pixel_view,
-% const size_t number_wands,const size_t number_threads)
+% ImageView *DestroyImageView(ImageView *image_view)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel view.
-%
-% o number_wand: the number of pixel wands.
-%
-% o number_threads: number of threads.
+% o image_view: the image view.
%
*/
-MagickExport ImageView *DestroyImageView(ImageView *pixel_view)
+MagickExport ImageView *DestroyImageView(ImageView *image_view)
{
- assert(pixel_view != (ImageView *) NULL);
- assert(pixel_view->signature == MagickSignature);
- pixel_view->view=DestroyCacheView(pixel_view->view);
- pixel_view->exception=DestroyExceptionInfo(pixel_view->exception);
- pixel_view->signature=(~MagickSignature);
- pixel_view=(ImageView *) RelinquishMagickMemory(pixel_view);
- return(pixel_view);
+ assert(image_view != (ImageView *) NULL);
+ assert(image_view->signature == MagickSignature);
+ image_view->view=DestroyCacheView(image_view->view);
+ image_view->exception=DestroyExceptionInfo(image_view->exception);
+ image_view->signature=(~MagickSignature);
+ image_view=(ImageView *) RelinquishMagickMemory(image_view);
+ return(image_view);
}
\f
/*
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% DuplexTransferImageViewIterator() iterates over three pixel views in
+% DuplexTransferImageViewIterator() iterates over three image views in
% parallel and calls your transfer method for each scanline of the view. The
% source and duplex pixel region is not confined to the image canvas-- that is
% you can include negative offsets or widths or heights that exceed the image
-% dimension. However, the destination pixel view is confined to the image
+% dimension. However, the destination image view is confined to the image
% canvas-- that is no negative offsets or widths or heights that exceed the
% image dimension are permitted.
%
%
% A description of each parameter follows:
%
-% o source: the source pixel view.
+% o source: the source image view.
%
-% o duplex: the duplex pixel view.
+% o duplex: the duplex image view.
%
-% o destination: the destination pixel view.
+% o destination: the destination image view.
%
% o transfer: the transfer callback method.
%
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% GetImageViewPixels() returns the pixel view authentic indexes.
+% GetImageViewAuthenticIndexes() returns the image view authentic indexes.
%
% The format of the GetImageViewAuthenticPixels method is:
%
-% IndexPacket *GetImageViewAuthenticIndexes(const ImageView *pixel_view)
+% IndexPacket *GetImageViewAuthenticIndexes(const ImageView *image_view)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel view.
+% o image_view: the image view.
%
*/
MagickExport IndexPacket *GetImageViewAuthenticIndexes(
- const ImageView *pixel_view)
+ const ImageView *image_view)
{
- assert(pixel_view != (ImageView *) NULL);
- assert(pixel_view->signature == MagickSignature);
- return(GetCacheViewAuthenticIndexQueue(pixel_view->view));
+ assert(image_view != (ImageView *) NULL);
+ assert(image_view->signature == MagickSignature);
+ return(GetCacheViewAuthenticIndexQueue(image_view->view));
}
\f
/*
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% GetImageViewPixels() returns the pixel view authentic pixels.
+% GetImageViewAuthenticPixels() returns the image view authentic pixels.
%
% The format of the GetImageViewAuthenticPixels method is:
%
-% PixelPacket *GetImageViewAuthenticPixels(const ImageView *pixel_view)
+% PixelPacket *GetImageViewAuthenticPixels(const ImageView *image_view)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel view.
+% o image_view: the image view.
%
*/
MagickExport PixelPacket *GetImageViewAuthenticPixels(
- const ImageView *pixel_view)
+ const ImageView *image_view)
{
- assert(pixel_view != (ImageView *) NULL);
- assert(pixel_view->signature == MagickSignature);
- return(GetCacheViewAuthenticPixelQueue(pixel_view->view));
+ assert(image_view != (ImageView *) NULL);
+ assert(image_view->signature == MagickSignature);
+ return(GetCacheViewAuthenticPixelQueue(image_view->view));
}
\f
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% GetImageViewException() returns the severity, reason, and description of any
-% error that occurs when utilizing a pixel view.
+% error that occurs when utilizing a image view.
%
% The format of the GetImageViewException method is:
%
-% char *GetImageViewException(const PixelImage *pixel_view,
+% char *GetImageViewException(const PixelImage *image_view,
% ExceptionType *severity)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel pixel_view.
+% o image_view: the pixel image_view.
%
% o severity: the severity of the error is returned here.
%
*/
-MagickExport char *GetImageViewException(const ImageView *pixel_view,
+MagickExport char *GetImageViewException(const ImageView *image_view,
ExceptionType *severity)
{
char
*description;
- assert(pixel_view != (const ImageView *) NULL);
- assert(pixel_view->signature == MagickSignature);
+ assert(image_view != (const ImageView *) NULL);
+ assert(image_view->signature == MagickSignature);
assert(severity != (ExceptionType *) NULL);
- *severity=pixel_view->exception->severity;
+ *severity=image_view->exception->severity;
description=(char *) AcquireQuantumMemory(2UL*MaxTextExtent,
sizeof(*description));
if (description == (char *) NULL)
ThrowFatalException(ResourceLimitFatalError,"MemoryAllocationFailed");
*description='\0';
- if (pixel_view->exception->reason != (char *) NULL)
+ if (image_view->exception->reason != (char *) NULL)
(void) CopyMagickString(description,GetLocaleExceptionMessage(
- pixel_view->exception->severity,pixel_view->exception->reason),
+ image_view->exception->severity,image_view->exception->reason),
MaxTextExtent);
- if (pixel_view->exception->description != (char *) NULL)
+ if (image_view->exception->description != (char *) NULL)
{
(void) ConcatenateMagickString(description," (",MaxTextExtent);
(void) ConcatenateMagickString(description,GetLocaleExceptionMessage(
- pixel_view->exception->severity,pixel_view->exception->description),
+ image_view->exception->severity,image_view->exception->description),
MaxTextExtent);
(void) ConcatenateMagickString(description,")",MaxTextExtent);
}
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% GetImageViewHeight() returns the pixel view height.
+% GetImageViewHeight() returns the image view height.
%
% The format of the GetImageViewHeight method is:
%
-% size_t GetImageViewHeight(const ImageView *pixel_view)
+% size_t GetImageViewHeight(const ImageView *image_view)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel view.
+% o image_view: the image view.
%
*/
-MagickExport size_t GetImageViewHeight(const ImageView *pixel_view)
+MagickExport size_t GetImageViewHeight(const ImageView *image_view)
{
- assert(pixel_view != (ImageView *) NULL);
- assert(pixel_view->signature == MagickSignature);
- return(pixel_view->region.height);
+ assert(image_view != (ImageView *) NULL);
+ assert(image_view->signature == MagickSignature);
+ return(image_view->region.height);
+}
+\f
+/*
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% %
+% %
+% %
+% G e t I m a g e V i e w I m a g e %
+% %
+% %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% GetImageViewImage() returns the image associated with the image view.
+%
+% The format of the GetImageViewImage method is:
+%
+% MagickCore *GetImageViewImage(const ImageView *image_view)
+%
+% A description of each parameter follows:
+%
+% o image_view: the image view.
+%
+*/
+MagickExport Image *GetImageViewImage(const ImageView *image_view)
+{
+ assert(image_view != (ImageView *) NULL);
+ assert(image_view->signature == MagickSignature);
+ return(image_view->image);
}
\f
/*
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% GetImageViewIterator() iterates over the pixel view in parallel and calls
+% GetImageViewIterator() iterates over the image view in parallel and calls
% your get method for each scanline of the view. The pixel region is
% not confined to the image canvas-- that is you can include negative offsets
% or widths or heights that exceed the image dimension. Any updates to
%
% A description of each parameter follows:
%
-% o source: the source pixel view.
+% o source: the source image view.
%
% o get: the get callback method.
%
% %
% %
% %
-% G e t I m a g e V i e w W a n d %
-% %
-% %
-% %
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% GetImageViewImage() returns the magick wand associated with the pixel view.
-%
-% The format of the GetImageViewImage method is:
-%
-% MagickCore *GetImageViewImage(const ImageView *pixel_view)
-%
-% A description of each parameter follows:
-%
-% o pixel_view: the pixel view.
-%
-*/
-MagickExport Image *GetImageViewImage(const ImageView *pixel_view)
-{
- assert(pixel_view != (ImageView *) NULL);
- assert(pixel_view->signature == MagickSignature);
- return(pixel_view->image);
-}
-\f
-/*
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% %
-% %
-% %
% G e t I m a g e V i e w V i r t u a l I n d e x e s %
% %
% %
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% GetImageViewPixels() returns the pixel view virtual indexes.
+% GetImageViewVirtualIndexes() returns the image view virtual indexes.
%
-% The format of the GetImageViewVirtualPixels method is:
+% The format of the GetImageViewVirtualIndexes method is:
%
% const IndexPacket *GetImageViewVirtualIndexes(
-% const ImageView *pixel_view)
+% const ImageView *image_view)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel view.
+% o image_view: the image view.
%
*/
MagickExport const IndexPacket *GetImageViewVirtualIndexes(
- const ImageView *pixel_view)
+ const ImageView *image_view)
{
- assert(pixel_view != (ImageView *) NULL);
- assert(pixel_view->signature == MagickSignature);
- return(GetCacheViewVirtualIndexQueue(pixel_view->view));
+ assert(image_view != (ImageView *) NULL);
+ assert(image_view->signature == MagickSignature);
+ return(GetCacheViewVirtualIndexQueue(image_view->view));
}
\f
/*
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% GetImageViewPixels() returns the pixel view virtual pixels.
+% GetImageViewVirtualPixels() returns the image view virtual pixels.
%
% The format of the GetImageViewVirtualPixels method is:
%
-% const PixelPacket *GetImageViewVirtualPixels(const ImageView *pixel_view)
+% const PixelPacket *GetImageViewVirtualPixels(const ImageView *image_view)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel view.
+% o image_view: the image view.
%
*/
MagickExport const PixelPacket *GetImageViewVirtualPixels(
- const ImageView *pixel_view)
+ const ImageView *image_view)
{
- assert(pixel_view != (ImageView *) NULL);
- assert(pixel_view->signature == MagickSignature);
- return(GetCacheViewVirtualPixelQueue(pixel_view->view));
+ assert(image_view != (ImageView *) NULL);
+ assert(image_view->signature == MagickSignature);
+ return(GetCacheViewVirtualPixelQueue(image_view->view));
}
\f
/*
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% GetImageViewWidth() returns the pixel view width.
+% GetImageViewWidth() returns the image view width.
%
% The format of the GetImageViewWidth method is:
%
-% size_t GetImageViewWidth(const ImageView *pixel_view)
+% size_t GetImageViewWidth(const ImageView *image_view)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel view.
+% o image_view: the image view.
%
*/
-MagickExport size_t GetImageViewWidth(const ImageView *pixel_view)
+MagickExport size_t GetImageViewWidth(const ImageView *image_view)
{
- assert(pixel_view != (ImageView *) NULL);
- assert(pixel_view->signature == MagickSignature);
- return(pixel_view->region.width);
+ assert(image_view != (ImageView *) NULL);
+ assert(image_view->signature == MagickSignature);
+ return(image_view->region.width);
}
\f
/*
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% GetImageViewX() returns the pixel view x offset.
+% GetImageViewX() returns the image view x offset.
%
% The format of the GetImageViewX method is:
%
-% ssize_t GetImageViewX(const ImageView *pixel_view)
+% ssize_t GetImageViewX(const ImageView *image_view)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel view.
+% o image_view: the image view.
%
*/
-MagickExport ssize_t GetImageViewX(const ImageView *pixel_view)
+MagickExport ssize_t GetImageViewX(const ImageView *image_view)
{
- assert(pixel_view != (ImageView *) NULL);
- assert(pixel_view->signature == MagickSignature);
- return(pixel_view->region.x);
+ assert(image_view != (ImageView *) NULL);
+ assert(image_view->signature == MagickSignature);
+ return(image_view->region.x);
}
\f
/*
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% GetImageViewY() returns the pixel view y offset.
+% GetImageViewY() returns the image view y offset.
%
% The format of the GetImageViewY method is:
%
-% ssize_t GetImageViewY(const ImageView *pixel_view)
+% ssize_t GetImageViewY(const ImageView *image_view)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel view.
+% o image_view: the image view.
%
*/
-MagickExport ssize_t GetImageViewY(const ImageView *pixel_view)
+MagickExport ssize_t GetImageViewY(const ImageView *image_view)
{
- assert(pixel_view != (ImageView *) NULL);
- assert(pixel_view->signature == MagickSignature);
- return(pixel_view->region.y);
+ assert(image_view != (ImageView *) NULL);
+ assert(image_view->signature == MagickSignature);
+ return(image_view->region.y);
}
\f
/*
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% IsImageView() returns MagickTrue if the the parameter is verified as a pixel
-% view container.
+% IsImageView() returns MagickTrue if the the parameter is verified as a image
+% view object.
%
% The format of the IsImageView method is:
%
-% MagickBooleanType IsImageView(const ImageView *pixel_view)
+% MagickBooleanType IsImageView(const ImageView *image_view)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel view.
+% o image_view: the image view.
%
*/
-MagickExport MagickBooleanType IsImageView(const ImageView *pixel_view)
+MagickExport MagickBooleanType IsImageView(const ImageView *image_view)
{
- if (pixel_view == (const ImageView *) NULL)
+ if (image_view == (const ImageView *) NULL)
return(MagickFalse);
- if (pixel_view->signature != MagickSignature)
+ if (image_view->signature != MagickSignature)
return(MagickFalse);
return(MagickTrue);
}
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% NewImageView() returns a pixel view required for all other methods in the
-% Pixel View API.
+% NewImageView() returns a image view required for all other methods in the
+% Image View API.
%
% The format of the NewImageView method is:
%
MagickExport ImageView *NewImageView(Image *image)
{
ImageView
- *pixel_view;
+ *image_view;
assert(image != (Image *) NULL);
assert(image->signature == MagickSignature);
- pixel_view=(ImageView *) AcquireAlignedMemory(1,sizeof(*pixel_view));
- if (pixel_view == (ImageView *) NULL)
+ image_view=(ImageView *) AcquireAlignedMemory(1,sizeof(*image_view));
+ if (image_view == (ImageView *) NULL)
ThrowFatalException(ResourceLimitFatalError,"MemoryAllocationFailed");
- (void) ResetMagickMemory(pixel_view,0,sizeof(*pixel_view));
- pixel_view->exception=AcquireExceptionInfo();
- pixel_view->image=image;
- pixel_view->view=AcquireCacheView(pixel_view->image);
- pixel_view->region.width=image->columns;
- pixel_view->region.height=image->rows;
- pixel_view->number_threads=GetOpenMPMaximumThreads();
- pixel_view->debug=IsEventLogging();
- pixel_view->signature=MagickSignature;
- return(pixel_view);
+ (void) ResetMagickMemory(image_view,0,sizeof(*image_view));
+ image_view->exception=AcquireExceptionInfo();
+ image_view->image=image;
+ image_view->view=AcquireCacheView(image_view->image);
+ image_view->region.width=image->columns;
+ image_view->region.height=image->rows;
+ image_view->number_threads=GetOpenMPMaximumThreads();
+ image_view->debug=IsEventLogging();
+ image_view->signature=MagickSignature;
+ return(image_view);
}
\f
/*
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% NewImageViewRegion() returns a pixel view required for all other methods
-% in the Pixel View API.
+% NewImageViewRegion() returns a image view required for all other methods
+% in the Image View API.
%
% The format of the NewImageViewRegion method is:
%
const ssize_t y,const size_t width,const size_t height)
{
ImageView
- *pixel_view;
+ *image_view;
assert(image != (Image *) NULL);
assert(image->signature == MagickSignature);
- pixel_view=(ImageView *) AcquireAlignedMemory(1,sizeof(*pixel_view));
- if (pixel_view == (ImageView *) NULL)
+ image_view=(ImageView *) AcquireAlignedMemory(1,sizeof(*image_view));
+ if (image_view == (ImageView *) NULL)
ThrowFatalException(ResourceLimitFatalError,"MemoryAllocationFailed");
- (void) ResetMagickMemory(pixel_view,0,sizeof(*pixel_view));
- pixel_view->exception=AcquireExceptionInfo();
- pixel_view->view=AcquireCacheView(pixel_view->image);
- pixel_view->image=image;
- pixel_view->region.width=width;
- pixel_view->region.height=height;
- pixel_view->region.x=x;
- pixel_view->region.y=y;
- pixel_view->number_threads=GetOpenMPMaximumThreads();
- pixel_view->debug=IsEventLogging();
- pixel_view->signature=MagickSignature;
- return(pixel_view);
+ (void) ResetMagickMemory(image_view,0,sizeof(*image_view));
+ image_view->exception=AcquireExceptionInfo();
+ image_view->view=AcquireCacheView(image_view->image);
+ image_view->image=image;
+ image_view->region.width=width;
+ image_view->region.height=height;
+ image_view->region.x=x;
+ image_view->region.y=y;
+ image_view->number_threads=GetOpenMPMaximumThreads();
+ image_view->debug=IsEventLogging();
+ image_view->signature=MagickSignature;
+ return(image_view);
}
\f
/*
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% SetImageViewIterator() iterates over the pixel view in parallel and calls
+% SetImageViewIterator() iterates over the image view in parallel and calls
% your set method for each scanline of the view. The pixel region is
% confined to the image canvas-- that is no negative offsets or widths or
% heights that exceed the image dimension. The pixels are initiallly
%
% A description of each parameter follows:
%
-% o destination: the pixel view.
+% o destination: the image view.
%
% o set: the set callback method.
%
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% TransferImageViewIterator() iterates over two pixel views in parallel and
+% TransferImageViewIterator() iterates over two image views in parallel and
% calls your transfer method for each scanline of the view. The source pixel
% region is not confined to the image canvas-- that is you can include
% negative offsets or widths or heights that exceed the image dimension.
-% However, the destination pixel view is confined to the image canvas-- that
+% However, the destination image view is confined to the image canvas-- that
% is no negative offsets or widths or heights that exceed the image dimension
% are permitted.
%
%
% A description of each parameter follows:
%
-% o source: the source pixel view.
+% o source: the source image view.
%
-% o destination: the destination pixel view.
+% o destination: the destination image view.
%
% o transfer: the transfer callback method.
%
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% UpdateImageViewIterator() iterates over the pixel view in parallel and calls
+% UpdateImageViewIterator() iterates over the image view in parallel and calls
% your update method for each scanline of the view. The pixel region is
% confined to the image canvas-- that is no negative offsets or widths or
% heights that exceed the image dimension are permitted. Updates to pixels
%
% A description of each parameter follows:
%
-% o source: the source pixel view.
+% o source: the source image view.
%
% o update: the update callback method.
%
register IndexPacket
*restrict indexes;
- register ssize_t
- id;
-
register PixelPacket
*restrict pixels;
+ register ssize_t
+ id;
+
if (status == MagickFalse)
continue;
id=GetOpenMPThreadId();
source->region.width,1,exception);
if (pixels == (PixelPacket *) NULL)
{
- InheritException(source->exception,GetCacheViewException(
- source->view));
+ InheritException(source->exception,GetCacheViewException(source->view));
status=MagickFalse;
continue;
}
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% CloneWandView() makes a copy of the specified pixel view.
+% CloneWandView() makes a copy of the specified wand view.
%
% The format of the CloneWandView method is:
%
-% WandView *CloneWandView(const WandView *pixel_view)
+% WandView *CloneWandView(const WandView *wand_view)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel view.
+% o wand_view: the wand view.
%
*/
-WandExport WandView *CloneWandView(const WandView *pixel_view)
+WandExport WandView *CloneWandView(const WandView *wand_view)
{
WandView
*clone_view;
register ssize_t
i;
- assert(pixel_view != (WandView *) NULL);
- assert(pixel_view->signature == WandSignature);
- if (pixel_view->debug != MagickFalse)
- (void) LogMagickEvent(WandEvent,GetMagickModule(),"%s",pixel_view->name);
+ assert(wand_view != (WandView *) NULL);
+ assert(wand_view->signature == WandSignature);
+ if (wand_view->debug != MagickFalse)
+ (void) LogMagickEvent(WandEvent,GetMagickModule(),"%s",wand_view->name);
clone_view=(WandView *) AcquireAlignedMemory(1,sizeof(*clone_view));
if (clone_view == (WandView *) NULL)
ThrowWandFatalException(ResourceLimitFatalError,"MemoryAllocationFailed",
- pixel_view->name);
+ wand_view->name);
(void) ResetMagickMemory(clone_view,0,sizeof(*clone_view));
clone_view->id=AcquireWandId();
(void) FormatMagickString(clone_view->name,MaxTextExtent,"%s-%.20g",
WandViewId,(double) clone_view->id);
clone_view->exception=AcquireExceptionInfo();
- InheritException(clone_view->exception,pixel_view->exception);
- clone_view->view=CloneCacheView(pixel_view->view);
- clone_view->region=pixel_view->region;
- clone_view->number_threads=pixel_view->number_threads;
- for (i=0; i < (ssize_t) pixel_view->number_threads; i++)
+ InheritException(clone_view->exception,wand_view->exception);
+ clone_view->view=CloneCacheView(wand_view->view);
+ clone_view->region=wand_view->region;
+ clone_view->number_threads=wand_view->number_threads;
+ for (i=0; i < (ssize_t) wand_view->number_threads; i++)
clone_view->pixel_wands[i]=ClonePixelWands((const PixelWand **)
- pixel_view->pixel_wands[i],pixel_view->region.width);
- clone_view->debug=pixel_view->debug;
+ wand_view->pixel_wands[i],wand_view->region.width);
+ clone_view->debug=wand_view->debug;
if (clone_view->debug != MagickFalse)
(void) LogMagickEvent(WandEvent,GetMagickModule(),"%s",clone_view->name);
clone_view->signature=WandSignature;
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% DestroyWandView() deallocates memory associated with a pixel view.
+% DestroyWandView() deallocates memory associated with a wand view.
%
% The format of the DestroyWandView method is:
%
-% WandView *DestroyWandView(WandView *pixel_view,
-% const size_t number_wands,const size_t number_threads)
+% WandView *DestroyWandView(WandView *wand_view)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel view.
-%
-% o number_wand: the number of pixel wands.
-%
-% o number_threads: number of threads.
+% o wand_view: the wand view.
%
*/
return(pixel_wands);
}
-WandExport WandView *DestroyWandView(WandView *pixel_view)
+WandExport WandView *DestroyWandView(WandView *wand_view)
{
- assert(pixel_view != (WandView *) NULL);
- assert(pixel_view->signature == WandSignature);
- pixel_view->pixel_wands=DestroyPixelsThreadSet(pixel_view->pixel_wands,
- pixel_view->region.width,pixel_view->number_threads);
- pixel_view->view=DestroyCacheView(pixel_view->view);
- pixel_view->exception=DestroyExceptionInfo(pixel_view->exception);
- pixel_view->signature=(~WandSignature);
- RelinquishWandId(pixel_view->id);
- pixel_view=(WandView *) RelinquishMagickMemory(pixel_view);
- return(pixel_view);
+ assert(wand_view != (WandView *) NULL);
+ assert(wand_view->signature == WandSignature);
+ wand_view->pixel_wands=DestroyPixelsThreadSet(wand_view->pixel_wands,
+ wand_view->region.width,wand_view->number_threads);
+ wand_view->view=DestroyCacheView(wand_view->view);
+ wand_view->exception=DestroyExceptionInfo(wand_view->exception);
+ wand_view->signature=(~WandSignature);
+ RelinquishWandId(wand_view->id);
+ wand_view=(WandView *) RelinquishMagickMemory(wand_view);
+ return(wand_view);
}
\f
/*
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% DuplexTransferWandViewIterator() iterates over three pixel views in
+% DuplexTransferWandViewIterator() iterates over three wand views in
% parallel and calls your transfer method for each scanline of the view. The
% source and duplex pixel region is not confined to the image canvas-- that is
% you can include negative offsets or widths or heights that exceed the image
-% dimension. However, the destination pixel view is confined to the image
+% dimension. However, the destination wand view is confined to the image
% canvas-- that is no negative offsets or widths or heights that exceed the
% image dimension are permitted.
%
%
% A description of each parameter follows:
%
-% o source: the source pixel view.
+% o source: the source wand view.
%
-% o duplex: the duplex pixel view.
+% o duplex: the duplex wand view.
%
-% o destination: the destination pixel view.
+% o destination: the destination wand view.
%
% o transfer: the transfer callback method.
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% GetWandViewException() returns the severity, reason, and description of any
-% error that occurs when utilizing a pixel view.
+% error that occurs when utilizing a wand view.
%
% The format of the GetWandViewException method is:
%
-% char *GetWandViewException(const PixelWand *pixel_view,
+% char *GetWandViewException(const PixelWand *wand_view,
% ExceptionType *severity)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel pixel_view.
+% o wand_view: the pixel wand_view.
%
% o severity: the severity of the error is returned here.
%
*/
-WandExport char *GetWandViewException(const WandView *pixel_view,
+WandExport char *GetWandViewException(const WandView *wand_view,
ExceptionType *severity)
{
char
*description;
- assert(pixel_view != (const WandView *) NULL);
- assert(pixel_view->signature == WandSignature);
- if (pixel_view->debug != MagickFalse)
- (void) LogMagickEvent(WandEvent,GetMagickModule(),"%s",pixel_view->name);
+ assert(wand_view != (const WandView *) NULL);
+ assert(wand_view->signature == WandSignature);
+ if (wand_view->debug != MagickFalse)
+ (void) LogMagickEvent(WandEvent,GetMagickModule(),"%s",wand_view->name);
assert(severity != (ExceptionType *) NULL);
- *severity=pixel_view->exception->severity;
+ *severity=wand_view->exception->severity;
description=(char *) AcquireQuantumMemory(2UL*MaxTextExtent,
sizeof(*description));
if (description == (char *) NULL)
ThrowWandFatalException(ResourceLimitFatalError,"MemoryAllocationFailed",
- pixel_view->name);
+ wand_view->name);
*description='\0';
- if (pixel_view->exception->reason != (char *) NULL)
+ if (wand_view->exception->reason != (char *) NULL)
(void) CopyMagickString(description,GetLocaleExceptionMessage(
- pixel_view->exception->severity,pixel_view->exception->reason),
+ wand_view->exception->severity,wand_view->exception->reason),
MaxTextExtent);
- if (pixel_view->exception->description != (char *) NULL)
+ if (wand_view->exception->description != (char *) NULL)
{
(void) ConcatenateMagickString(description," (",MaxTextExtent);
(void) ConcatenateMagickString(description,GetLocaleExceptionMessage(
- pixel_view->exception->severity,pixel_view->exception->description),
+ wand_view->exception->severity,wand_view->exception->description),
MaxTextExtent);
(void) ConcatenateMagickString(description,")",MaxTextExtent);
}
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% GetWandViewHeight() returns the pixel view height.
+% GetWandViewHeight() returns the wand view height.
%
% The format of the GetWandViewHeight method is:
%
-% size_t GetWandViewHeight(const WandView *pixel_view)
+% size_t GetWandViewHeight(const WandView *wand_view)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel view.
+% o wand_view: the wand view.
%
*/
-WandExport size_t GetWandViewHeight(const WandView *pixel_view)
+WandExport size_t GetWandViewHeight(const WandView *wand_view)
{
- assert(pixel_view != (WandView *) NULL);
- assert(pixel_view->signature == WandSignature);
- return(pixel_view->region.height);
+ assert(wand_view != (WandView *) NULL);
+ assert(wand_view->signature == WandSignature);
+ return(wand_view->region.height);
}
\f
/*
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% GetWandViewIterator() iterates over the pixel view in parallel and calls
+% GetWandViewIterator() iterates over the wand view in parallel and calls
% your get method for each scanline of the view. The pixel region is
% not confined to the image canvas-- that is you can include negative offsets
% or widths or heights that exceed the image dimension. Any updates to
%
% A description of each parameter follows:
%
-% o source: the source pixel view.
+% o source: the source wand view.
%
% o get: the get callback method.
%
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% GetWandViewPixels() returns the pixel view pixel_wands.
+% GetWandViewPixels() returns the wand view pixel_wands.
%
% The format of the GetWandViewPixels method is:
%
-% PixelWand *GetWandViewPixels(const WandView *pixel_view)
+% PixelWand *GetWandViewPixels(const WandView *wand_view)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel view.
+% o wand_view: the wand view.
%
*/
-WandExport PixelWand **GetWandViewPixels(const WandView *pixel_view)
+WandExport PixelWand **GetWandViewPixels(const WandView *wand_view)
{
ssize_t
id;
- assert(pixel_view != (WandView *) NULL);
- assert(pixel_view->signature == WandSignature);
+ assert(wand_view != (WandView *) NULL);
+ assert(wand_view->signature == WandSignature);
id=GetOpenMPThreadId();
- return(pixel_view->pixel_wands[id]);
+ return(wand_view->pixel_wands[id]);
}
\f
/*
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% GetWandViewWand() returns the magick wand associated with the pixel view.
+% GetWandViewWand() returns the magick wand associated with the wand view.
%
% The format of the GetWandViewWand method is:
%
-% MagickWand *GetWandViewWand(const WandView *pixel_view)
+% MagickWand *GetWandViewWand(const WandView *wand_view)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel view.
+% o wand_view: the wand view.
%
*/
-WandExport MagickWand *GetWandViewWand(const WandView *pixel_view)
+WandExport MagickWand *GetWandViewWand(const WandView *wand_view)
{
- assert(pixel_view != (WandView *) NULL);
- assert(pixel_view->signature == WandSignature);
- return(pixel_view->wand);
+ assert(wand_view != (WandView *) NULL);
+ assert(wand_view->signature == WandSignature);
+ return(wand_view->wand);
}
\f
/*
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% GetWandViewWidth() returns the pixel view width.
+% GetWandViewWidth() returns the wand view width.
%
% The format of the GetWandViewWidth method is:
%
-% size_t GetWandViewWidth(const WandView *pixel_view)
+% size_t GetWandViewWidth(const WandView *wand_view)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel view.
+% o wand_view: the wand view.
%
*/
-WandExport size_t GetWandViewWidth(const WandView *pixel_view)
+WandExport size_t GetWandViewWidth(const WandView *wand_view)
{
- assert(pixel_view != (WandView *) NULL);
- assert(pixel_view->signature == WandSignature);
- return(pixel_view->region.width);
+ assert(wand_view != (WandView *) NULL);
+ assert(wand_view->signature == WandSignature);
+ return(wand_view->region.width);
}
\f
/*
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% GetWandViewX() returns the pixel view x offset.
+% GetWandViewX() returns the wand view x offset.
%
% The format of the GetWandViewX method is:
%
-% ssize_t GetWandViewX(const WandView *pixel_view)
+% ssize_t GetWandViewX(const WandView *wand_view)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel view.
+% o wand_view: the wand view.
%
*/
-WandExport ssize_t GetWandViewX(const WandView *pixel_view)
+WandExport ssize_t GetWandViewX(const WandView *wand_view)
{
- assert(pixel_view != (WandView *) NULL);
- assert(pixel_view->signature == WandSignature);
- return(pixel_view->region.x);
+ assert(wand_view != (WandView *) NULL);
+ assert(wand_view->signature == WandSignature);
+ return(wand_view->region.x);
}
\f
/*
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% GetWandViewY() returns the pixel view y offset.
+% GetWandViewY() returns the wand view y offset.
%
% The format of the GetWandViewY method is:
%
-% ssize_t GetWandViewY(const WandView *pixel_view)
+% ssize_t GetWandViewY(const WandView *wand_view)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel view.
+% o wand_view: the wand view.
%
*/
-WandExport ssize_t GetWandViewY(const WandView *pixel_view)
+WandExport ssize_t GetWandViewY(const WandView *wand_view)
{
- assert(pixel_view != (WandView *) NULL);
- assert(pixel_view->signature == WandSignature);
- return(pixel_view->region.y);
+ assert(wand_view != (WandView *) NULL);
+ assert(wand_view->signature == WandSignature);
+ return(wand_view->region.y);
}
\f
/*
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% IsWandView() returns MagickTrue if the the parameter is verified as a pixel
-% view container.
+% IsWandView() returns MagickTrue if the the parameter is verified as a wand
+% view object.
%
% The format of the IsWandView method is:
%
-% MagickBooleanType IsWandView(const WandView *pixel_view)
+% MagickBooleanType IsWandView(const WandView *wand_view)
%
% A description of each parameter follows:
%
-% o pixel_view: the pixel view.
+% o wand_view: the wand view.
%
*/
-WandExport MagickBooleanType IsWandView(const WandView *pixel_view)
+WandExport MagickBooleanType IsWandView(const WandView *wand_view)
{
size_t
length;
- if (pixel_view == (const WandView *) NULL)
+ if (wand_view == (const WandView *) NULL)
return(MagickFalse);
- if (pixel_view->signature != WandSignature)
+ if (wand_view->signature != WandSignature)
return(MagickFalse);
length=strlen(WandViewId);
- if (LocaleNCompare(pixel_view->name,WandViewId,length) != 0)
+ if (LocaleNCompare(wand_view->name,WandViewId,length) != 0)
return(MagickFalse);
return(MagickTrue);
}
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% NewWandView() returns a pixel view required for all other methods in the
-% Pixel View API.
+% NewWandView() returns a wand view required for all other methods in the
+% Wand View API.
%
% The format of the NewWandView method is:
%
WandExport WandView *NewWandView(MagickWand *wand)
{
WandView
- *pixel_view;
+ *wand_view;
assert(wand != (MagickWand *) NULL);
assert(wand->signature == MagickSignature);
- pixel_view=(WandView *) AcquireAlignedMemory(1,sizeof(*pixel_view));
- if (pixel_view == (WandView *) NULL)
+ wand_view=(WandView *) AcquireAlignedMemory(1,sizeof(*wand_view));
+ if (wand_view == (WandView *) NULL)
ThrowWandFatalException(ResourceLimitFatalError,"MemoryAllocationFailed",
GetExceptionMessage(errno));
- (void) ResetMagickMemory(pixel_view,0,sizeof(*pixel_view));
- pixel_view->id=AcquireWandId();
- (void) FormatMagickString(pixel_view->name,MaxTextExtent,"%s-%.20g",
- WandViewId,(double) pixel_view->id);
- pixel_view->exception=AcquireExceptionInfo();
- pixel_view->wand=wand;
- pixel_view->view=AcquireCacheView(pixel_view->wand->images);
- pixel_view->region.width=wand->images->columns;
- pixel_view->region.height=wand->images->rows;
- pixel_view->number_threads=GetOpenMPMaximumThreads();
- pixel_view->pixel_wands=AcquirePixelsThreadSet(pixel_view->region.width,
- pixel_view->number_threads);
- if (pixel_view->pixel_wands == (PixelWand ***) NULL)
+ (void) ResetMagickMemory(wand_view,0,sizeof(*wand_view));
+ wand_view->id=AcquireWandId();
+ (void) FormatMagickString(wand_view->name,MaxTextExtent,"%s-%.20g",
+ WandViewId,(double) wand_view->id);
+ wand_view->exception=AcquireExceptionInfo();
+ wand_view->wand=wand;
+ wand_view->view=AcquireCacheView(wand_view->wand->images);
+ wand_view->region.width=wand->images->columns;
+ wand_view->region.height=wand->images->rows;
+ wand_view->number_threads=GetOpenMPMaximumThreads();
+ wand_view->pixel_wands=AcquirePixelsThreadSet(wand_view->region.width,
+ wand_view->number_threads);
+ if (wand_view->pixel_wands == (PixelWand ***) NULL)
ThrowWandFatalException(ResourceLimitFatalError,"MemoryAllocationFailed",
GetExceptionMessage(errno));
- pixel_view->debug=IsEventLogging();
- pixel_view->signature=WandSignature;
- return(pixel_view);
+ wand_view->debug=IsEventLogging();
+ wand_view->signature=WandSignature;
+ return(wand_view);
}
\f
/*
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% NewWandViewRegion() returns a pixel view required for all other methods
-% in the Pixel View API.
+% NewWandViewRegion() returns a wand view required for all other methods
+% in the Wand View API.
%
% The format of the NewWandViewRegion method is:
%
const ssize_t y,const size_t width,const size_t height)
{
WandView
- *pixel_view;
+ *wand_view;
assert(wand != (MagickWand *) NULL);
assert(wand->signature == MagickSignature);
- pixel_view=(WandView *) AcquireAlignedMemory(1,sizeof(*pixel_view));
- if (pixel_view == (WandView *) NULL)
+ wand_view=(WandView *) AcquireAlignedMemory(1,sizeof(*wand_view));
+ if (wand_view == (WandView *) NULL)
ThrowWandFatalException(ResourceLimitFatalError,"MemoryAllocationFailed",
GetExceptionMessage(errno));
- (void) ResetMagickMemory(pixel_view,0,sizeof(*pixel_view));
- pixel_view->id=AcquireWandId();
- (void) FormatMagickString(pixel_view->name,MaxTextExtent,"%s-%.20g",
- WandViewId,(double) pixel_view->id);
- pixel_view->exception=AcquireExceptionInfo();
- pixel_view->view=AcquireCacheView(pixel_view->wand->images);
- pixel_view->wand=wand;
- pixel_view->region.width=width;
- pixel_view->region.height=height;
- pixel_view->region.x=x;
- pixel_view->region.y=y;
- pixel_view->number_threads=GetOpenMPMaximumThreads();
- pixel_view->pixel_wands=AcquirePixelsThreadSet(pixel_view->region.width,
- pixel_view->number_threads);
- if (pixel_view->pixel_wands == (PixelWand ***) NULL)
+ (void) ResetMagickMemory(wand_view,0,sizeof(*wand_view));
+ wand_view->id=AcquireWandId();
+ (void) FormatMagickString(wand_view->name,MaxTextExtent,"%s-%.20g",
+ WandViewId,(double) wand_view->id);
+ wand_view->exception=AcquireExceptionInfo();
+ wand_view->view=AcquireCacheView(wand_view->wand->images);
+ wand_view->wand=wand;
+ wand_view->region.width=width;
+ wand_view->region.height=height;
+ wand_view->region.x=x;
+ wand_view->region.y=y;
+ wand_view->number_threads=GetOpenMPMaximumThreads();
+ wand_view->pixel_wands=AcquirePixelsThreadSet(wand_view->region.width,
+ wand_view->number_threads);
+ if (wand_view->pixel_wands == (PixelWand ***) NULL)
ThrowWandFatalException(ResourceLimitFatalError,"MemoryAllocationFailed",
GetExceptionMessage(errno));
- pixel_view->debug=IsEventLogging();
- pixel_view->signature=WandSignature;
- return(pixel_view);
+ wand_view->debug=IsEventLogging();
+ wand_view->signature=WandSignature;
+ return(wand_view);
}
\f
/*
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% SetWandViewIterator() iterates over the pixel view in parallel and calls
+% SetWandViewIterator() iterates over the wand view in parallel and calls
% your set method for each scanline of the view. The pixel region is
% confined to the image canvas-- that is no negative offsets or widths or
% heights that exceed the image dimension. The pixels are initiallly
%
% A description of each parameter follows:
%
-% o destination: the pixel view.
+% o destination: the wand view.
%
% o set: the set callback method.
%
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% TransferWandViewIterator() iterates over two pixel views in parallel and
+% TransferWandViewIterator() iterates over two wand views in parallel and
% calls your transfer method for each scanline of the view. The source pixel
% region is not confined to the image canvas-- that is you can include
% negative offsets or widths or heights that exceed the image dimension.
-% However, the destination pixel view is confined to the image canvas-- that
+% However, the destination wand view is confined to the image canvas-- that
% is no negative offsets or widths or heights that exceed the image dimension
% are permitted.
%
%
% A description of each parameter follows:
%
-% o source: the source pixel view.
+% o source: the source wand view.
%
-% o destination: the destination pixel view.
+% o destination: the destination wand view.
%
% o transfer: the transfer callback method.
%
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% UpdateWandViewIterator() iterates over the pixel view in parallel and calls
+% UpdateWandViewIterator() iterates over the wand view in parallel and calls
% your update method for each scanline of the view. The pixel region is
% confined to the image canvas-- that is no negative offsets or widths or
% heights that exceed the image dimension are permitted. Updates to pixels
%
% A description of each parameter follows:
%
-% o source: the source pixel view.
+% o source: the source wand view.
%
% o update: the update callback method.
%
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+ <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
</div>
</div>
</div>
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+ <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
</div>
</div>
</div>
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<h2><a name="ada"></a>Ada</h2>
</div>
-<p><a href="https://gna.org/projects/g2f/" target="50521980">G2F</a> implements an Ada 95 binding to a subset of the low-level MagickCore library.</p>
+<p><a href="https://gna.org/projects/g2f/" target="47810688">G2F</a> implements an Ada 95 binding to a subset of the low-level MagickCore library.</p>
<div style="margin: auto;">
<h2><a name="c"></a>C</h2>
<h2><a name="ch"></a>Ch</h2>
</div>
-<p><a href="http://www.imagemagick.org/ChMagick" target="536128769">ChMagick</a> is a <a href="http://www.softintegration.com/" target="187111479">Ch</a> binding to the MagickCore and MagickWand API. Ch is an embeddable C/C++ interpreter for cross-platform scripting.</p>
+<p><a href="http://www.imagemagick.org/ChMagick" target="2090328326">ChMagick</a> is a <a href="http://www.softintegration.com/" target="1672899526">Ch</a> binding to the MagickCore and MagickWand API. Ch is an embeddable C/C++ interpreter for cross-platform scripting.</p>
<div style="margin: auto;">
<h2><a name="com+"></a>COM+</h2>
<h2><a name="c++"></a>C++</h2>
</div>
-<p><a href="http://www.imagemagick.org/Magick++" target="1624759727">Magick++</a> provides an object-oriented C++ interface to ImageMagick. See <a href="http://www.imagemagick.org/Magick++/tutorial/Magick++_tutorial.pdf" target="34527453">A Gentle Introduction to Magick++</a> for an introductory tutorial to Magick++. We include the <a href="http://www.imagemagick.org/Magick++/tutorial/Magick++_tutorial.odt" target="236792520">source</a> if you want to correct, enhance, or expand the tutorial.</p>
+<p><a href="http://www.imagemagick.org/Magick++" target="1644265884">Magick++</a> provides an object-oriented C++ interface to ImageMagick. See <a href="http://www.imagemagick.org/Magick++/tutorial/Magick++_tutorial.pdf" target="796317481">A Gentle Introduction to Magick++</a> for an introductory tutorial to Magick++. We include the <a href="http://www.imagemagick.org/Magick++/tutorial/Magick++_tutorial.odt" target="1778244380">source</a> if you want to correct, enhance, or expand the tutorial.</p>
<div style="margin: auto;">
<h2><a name="java"></a>Java</h2>
</div>
-<p><a href="http://www.jmagick.org" target="368490137">JMagick</a> provides an object-oriented Java interface to ImageMagick. <a href="http://im4java.sourceforge.net" target="663732704">Im4java</a> is a pure-java interface to the ImageMagick command-line.</p>
+<p><a href="http://www.jmagick.org" target="1190666296">JMagick</a> provides an object-oriented Java interface to ImageMagick. <a href="http://im4java.sourceforge.net" target="1207747543">Im4java</a> is a pure-java interface to the ImageMagick command-line.</p>
<div style="margin: auto;">
<h2><a name="labview"></a>LabVIEW</h2>
</div>
-<p><a href="http://forums.lavag.org/downloads-file90.html" target="1744760635">LVOOP ImageMagick</a> is an object-oriented LabVIEW interface to ImageMagick.</p>
+<p><a href="http://forums.lavag.org/downloads-file90.html" target="1108645374">LVOOP ImageMagick</a> is an object-oriented LabVIEW interface to ImageMagick.</p>
<div style="margin: auto;">
<h2><a name="lisp"></a>Lisp</h2>
</div>
-<p><a href="http://common-lisp.net/project/cl-magick/" target="646063090">CL-Magick</a> provides a Common Lisp interface to the ImageMagick library.</p>
+<p><a href="http://common-lisp.net/project/cl-magick/" target="1288812207">CL-Magick</a> provides a Common Lisp interface to the ImageMagick library.</p>
<div style="margin: auto;">
<h2><a name="neko"></a>Neko</h2>
</div>
-<p><a href="http://code.google.com/p/nmagick" target="797490839">NMagick</a> is a port of the ImageMagick library to the haXe and Neko platforms. It provides image manipulation capabilities to both web and desktop applications using Neko.</p>
+<p><a href="http://code.google.com/p/nmagick" target="683562817">NMagick</a> is a port of the ImageMagick library to the haXe and Neko platforms. It provides image manipulation capabilities to both web and desktop applications using Neko.</p>
<div style="margin: auto;">
<h2><a name="dot-net"></a>.NET</h2>
<h2><a name="pascal"></a>Pascal</h2>
</div>
-<p><a href="http://wiki.lazarus.freepascal.org/PascalMagick" target="1630602106">PascalMagick</a> a Pascal binding for the MagickWand API and also the low-level MagickCore library. It works with Free Pascal / Lazarus and Delphi.</p>
+<p><a href="http://wiki.lazarus.freepascal.org/PascalMagick" target="38372465">PascalMagick</a> a Pascal binding for the MagickWand API and also the low-level MagickCore library. It works with Free Pascal / Lazarus and Delphi.</p>
<div style="margin: auto;">
<h2><a name="perl"></a>Perl</h2>
<h2><a name="php"></a>PHP</h2>
</div>
-<p><a href="http://www.magickwand.org/" target="1848247998">MagickWand for PHP</a> a native PHP-extension to the ImageMagick MagickWand API.</p>
+<p><a href="http://www.magickwand.org/" target="1382678625">MagickWand for PHP</a> a native PHP-extension to the ImageMagick MagickWand API.</p>
-<p><a href="http://pecl.php.net/package/imagick" target="1571743593">IMagick</a> is a native PHP extension to create and modify images using the ImageMagick API. Documentation for the extension is available <a href="http://php.net/imagick" target="1276968288">here</a>.</p>
+<p><a href="http://pecl.php.net/package/imagick" target="2134164939">IMagick</a> is a native PHP extension to create and modify images using the ImageMagick API. Documentation for the extension is available <a href="http://php.net/imagick" target="948988437">here</a>.</p>
-<p><a href="http://www.francodacosta.com/phmagick" target="825962415">phMagick</a> is a wrapper class for ImageMagick, wrapping the most common web image manipulation actions in easy to use functions, but allowing full access to ImageMagick's power by issuing system calls to it's command-line programs.</p>
+<p><a href="http://www.francodacosta.com/phmagick" target="1432895023">phMagick</a> is a wrapper class for ImageMagick, wrapping the most common web image manipulation actions in easy to use functions, but allowing full access to ImageMagick's power by issuing system calls to it's command-line programs.</p>
<div style="margin: auto;">
<h2><a name="python"></a>Python</h2>
</div>
-<p><a href="http://www.assembla.com/wiki/show/pythonmagickwand" target="1501142903">PythonMagickWand</a> is an object-oriented Python interface to MagickWand based on ctypes.</p>
+<p><a href="http://www.assembla.com/wiki/show/pythonmagickwand" target="310395953">PythonMagickWand</a> is an object-oriented Python interface to MagickWand based on ctypes.</p>
-<p><a href="http://www.imagemagick.org/download/python/" target="20542185">PythonMagick</a> is an object-oriented Python interface to ImageMagick.</p>
+<p><a href="http://www.imagemagick.org/download/python/" target="1614461733">PythonMagick</a> is an object-oriented Python interface to ImageMagick.</p>
<div style="margin: auto;">
<h2><a name="realbasic"></a>REALbasic</h2>
</div>
-<p>The <a href="http://www.monkeybreadsoftware.de/realbasic/plugin-imagemagick.shtml" target="1850799877">MBS Realbasic ImageMagick</a> is a plugin that utilizes the power of ImageMagick from within the RealBasic environment.</p>
+<p>The <a href="http://www.monkeybreadsoftware.de/realbasic/plugin-imagemagick.shtml" target="1149098175">MBS Realbasic ImageMagick</a> is a plugin that utilizes the power of ImageMagick from within the RealBasic environment.</p>
<div style="margin: auto;">
<h2><a name="ruby"></a>Ruby</h2>
</div>
-<p><a href="http://rmagick.rubyforge.org/" target="1916037389">RMagick</a> is an interface between the Ruby programming language and the <a href="../www/magick-core.html">MagickCore</a> image processing libraries. Get started with RMagick by perusing the <a href="http://www.imagemagick.org/RMagick/doc/" target="1931934059">documentation</a>.</p>
+<p><a href="http://rmagick.rubyforge.org/" target="488208851">RMagick</a> is an interface between the Ruby programming language and the <a href="../www/magick-core.html">MagickCore</a> image processing libraries. Get started with RMagick by perusing the <a href="http://www.imagemagick.org/RMagick/doc/" target="1965733756">documentation</a>.</p>
-<p><a href="http://magickwand.rubyforge.org/" target="940562746">MagickWand for Ruby</a> is an interface between the Ruby programming language and the <a href="../www/magick-wand.html">MagickWand</a> image processing libraries. Get started with MagickWand for PHP by perusing the <a href="http://magickwand.rubyforge.org/" target="263390608">documentation</a>.</p>
+<p><a href="http://magickwand.rubyforge.org/" target="2134342351">MagickWand for Ruby</a> is an interface between the Ruby programming language and the <a href="../www/magick-wand.html">MagickWand</a> image processing libraries. Get started with MagickWand for PHP by perusing the <a href="http://magickwand.rubyforge.org/" target="670930352">documentation</a>.</p>
-<p><a href="http://rubyforge.org/projects/mini-magick" target="123325922">MiniMagick</a> is a Ruby wrapper for ImageMagick command line. MiniMagick gives you convenient access to all the command line options ImageMagick supports.</p>
+<p><a href="http://rubyforge.org/projects/mini-magick" target="414261429">MiniMagick</a> is a Ruby wrapper for ImageMagick command line. MiniMagick gives you convenient access to all the command line options ImageMagick supports.</p>
-<p><a href="http://quickmagick.rubyforge.org/quick_magick" target="42402895">QuickMagick</a> is a gem for easily accessing ImageMagick command line tools from Ruby programs.</p>
+<p><a href="http://quickmagick.rubyforge.org/quick_magick" target="1474611175">QuickMagick</a> is a gem for easily accessing ImageMagick command line tools from Ruby programs.</p>
<div style="margin: auto;">
<h2><a name="tcl"></a>Tcl/Tk</h2>
</div>
-<p><a href="http://tclmagick.sourceforge.net/" target="1648173068">TclMagick</a> a native Tcl-extension to the ImageMagick MagickWand API.</p>
+<p><a href="http://tclmagick.sourceforge.net/" target="1650272146">TclMagick</a> a native Tcl-extension to the ImageMagick MagickWand API.</p>
<div style="margin: auto;">
<h2><a name="xml-rpc"></a>XML RPC</h2>
</div>
-<p><a href="http://code.google.com/p/remotemagick/" target="303868715">RemoteMagick</a> is an XML-RPC web service that creates image thumbnails.</p>
+<p><a href="http://code.google.com/p/remotemagick/" target="763659111">RemoteMagick</a> is an XML-RPC web service that creates image thumbnails.</p>
\r
</div>\r
\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<div class="sponsor">
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
+<div class="sponsor">
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+</div>
</div>
</div>
\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
</div>
</div>
</div>
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+ <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
</div>
</div>
</div>
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+ <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
</div>
</div>
</div>
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
</div>
</div>
</div>
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
\r
<div class="main">\r
\r
-<p class="navigation-index">[<a href="#CloneImageView">CloneImageView</a> • <a href="#DestroyImageView">DestroyImageView</a> • <a href="#DuplexTransferImageViewIterator">DuplexTransferImageViewIterator</a> • <a href="#GetImageViewException">GetImageViewException</a> • <a href="#GetImageViewHeight">GetImageViewHeight</a> • <a href="#GetImageViewIterator">GetImageViewIterator</a> • <a href="#GetImageViewPixels">GetImageViewPixels</a> • <a href="#GetImageViewImage">GetImageViewImage</a> • <a href="#GetImageViewWidth">GetImageViewWidth</a> • <a href="#GetImageViewX">GetImageViewX</a> • <a href="#GetImageViewY">GetImageViewY</a> • <a href="#IsImageView">IsImageView</a> • <a href="#NewImageView">NewImageView</a> • <a href="#NewImageViewRegion">NewImageViewRegion</a> • <a href="#SetImageViewIterator">SetImageViewIterator</a> • <a href="#TransferImageViewIterator">TransferImageViewIterator</a> • <a href="#UpdateImageViewIterator">UpdateImageViewIterator</a>]</p>
+<p class="navigation-index">[<a href="#CloneImageView">CloneImageView</a> • <a href="#DestroyImageView">DestroyImageView</a> • <a href="#DuplexTransferImageViewIterator">DuplexTransferImageViewIterator</a> • <a href="#GetImageViewAuthenticIndexes">GetImageViewAuthenticIndexes</a> • <a href="#GetImageViewAuthenticPixels">GetImageViewAuthenticPixels</a> • <a href="#GetImageViewException">GetImageViewException</a> • <a href="#GetImageViewHeight">GetImageViewHeight</a> • <a href="#GetImageViewImage">GetImageViewImage</a> • <a href="#GetImageViewIterator">GetImageViewIterator</a> • <a href="#GetImageViewVirtualIndexes">GetImageViewVirtualIndexes</a> • <a href="#GetImageViewVirtualPixels">GetImageViewVirtualPixels</a> • <a href="#GetImageViewWidth">GetImageViewWidth</a> • <a href="#GetImageViewX">GetImageViewX</a> • <a href="#GetImageViewY">GetImageViewY</a> • <a href="#IsImageView">IsImageView</a> • <a href="#NewImageView">NewImageView</a> • <a href="#NewImageViewRegion">NewImageViewRegion</a> • <a href="#SetImageViewIterator">SetImageViewIterator</a> • <a href="#TransferImageViewIterator">TransferImageViewIterator</a> • <a href="#UpdateImageViewIterator">UpdateImageViewIterator</a>]</p>
<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
_8c.html" target="source" name="CloneImageView">CloneImageView</a></h2>
<div class="doc-section">
-<p>CloneImageView() makes a copy of the specified pixel view.</p></ol>
+<p>CloneImageView() makes a copy of the specified image view.</p></ol>
<p>The format of the CloneImageView method is:</p>
<pre class="code">
- ImageView *CloneImageView(const ImageView *pixel_view)
+ ImageView *CloneImageView(const ImageView *image_view)
</pre>
<p>A description of each parameter follows:</p></ol>
-<h5>pixel_view</h5>
-<ol><p>the pixel view.</p></ol>
+<h5>image_view</h5>
+<ol><p>the image view.</p></ol>
</div>
<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
_8c.html" target="source" name="DestroyImageView">DestroyImageView</a></h2>
<div class="doc-section">
-<p>DestroyImageView() deallocates memory associated with a pixel view.</p></ol>
+<p>DestroyImageView() deallocates memory associated with a image view.</p></ol>
<p>The format of the DestroyImageView method is:</p>
<pre class="code">
- ImageView *DestroyImageView(ImageView *pixel_view,
- const size_t number_wands,const size_t number_threads)
+ ImageView *DestroyImageView(ImageView *image_view)
</pre>
<p>A description of each parameter follows:</p></ol>
-<h5>pixel_view</h5>
-<ol><p>the pixel view.</p></ol>
-
-<h5>number_wand</h5>
-<ol><p>the number of pixel wands.</p></ol>
-
-<h5>number_threads</h5>
-<ol><p>number of threads.</p></ol>
+<h5>image_view</h5>
+<ol><p>the image view.</p></ol>
</div>
<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
_8c.html" target="source" name="DuplexTransferImageViewIterator">DuplexTransferImageViewIterator</a></h2>
<div class="doc-section">
-<p>DuplexTransferImageViewIterator() iterates over three pixel views in parallel and calls your transfer method for each scanline of the view. The source and duplex pixel region is not confined to the image canvas-- that is you can include negative offsets or widths or heights that exceed the image dimension. However, the destination pixel view is confined to the image canvas-- that is no negative offsets or widths or heights that exceed the image dimension are permitted.</p></ol>
+<p>DuplexTransferImageViewIterator() iterates over three image views in parallel and calls your transfer method for each scanline of the view. The source and duplex pixel region is not confined to the image canvas-- that is you can include negative offsets or widths or heights that exceed the image dimension. However, the destination image view is confined to the image canvas-- that is no negative offsets or widths or heights that exceed the image dimension are permitted.</p></ol>
-<p>Use this pragma:</p>
+<p>Use this pragma if the view is not single threaded:</p>
<pre class="text">
#pragma omp critical
<p>A description of each parameter follows:</p></ol>
<h5>source</h5>
-<ol><p>the source pixel view.</p></ol>
+<ol><p>the source image view.</p></ol>
<h5>duplex</h5>
-<ol><p>the duplex pixel view.</p></ol>
+<ol><p>the duplex image view.</p></ol>
<h5>destination</h5>
-<ol><p>the destination pixel view.</p></ol>
+<ol><p>the destination image view.</p></ol>
<h5>transfer</h5>
<ol><p>the transfer callback method.</p></ol>
</div>
<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
+_8c.html" target="source" name="GetImageViewAuthenticIndexes">GetImageViewAuthenticIndexes</a></h2>
+<div class="doc-section">
+
+<p>GetImageViewAuthenticIndexes() returns the image view authentic indexes.</p></ol>
+
+<p>The format of the GetImageViewAuthenticPixels method is:</p>
+
+<pre class="code">
+ IndexPacket *GetImageViewAuthenticIndexes(const ImageView *image_view)
+</pre>
+
+<p>A description of each parameter follows:</p></ol>
+
+<h5>image_view</h5>
+<ol><p>the image view.</p></ol>
+
+ </div>
+<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
+_8c.html" target="source" name="GetImageViewAuthenticPixels">GetImageViewAuthenticPixels</a></h2>
+<div class="doc-section">
+
+<p>GetImageViewAuthenticPixels() returns the image view authentic pixels.</p></ol>
+
+<p>The format of the GetImageViewAuthenticPixels method is:</p>
+
+<pre class="code">
+ PixelPacket *GetImageViewAuthenticPixels(const ImageView *image_view)
+</pre>
+
+<p>A description of each parameter follows:</p></ol>
+
+<h5>image_view</h5>
+<ol><p>the image view.</p></ol>
+
+ </div>
+<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
_8c.html" target="source" name="GetImageViewException">GetImageViewException</a></h2>
<div class="doc-section">
-<p>GetImageViewException() returns the severity, reason, and description of any error that occurs when utilizing a pixel view.</p></ol>
+<p>GetImageViewException() returns the severity, reason, and description of any error that occurs when utilizing a image view.</p></ol>
<p>The format of the GetImageViewException method is:</p>
<pre class="code">
- char *GetImageViewException(const PixelImage *pixel_view,
+ char *GetImageViewException(const PixelImage *image_view,
ExceptionType *severity)
</pre>
<p>A description of each parameter follows:</p></ol>
-<h5>pixel_view</h5>
-<ol><p>the pixel pixel_view.</p></ol>
+<h5>image_view</h5>
+<ol><p>the pixel image_view.</p></ol>
<h5>severity</h5>
<ol><p>the severity of the error is returned here.</p></ol>
_8c.html" target="source" name="GetImageViewHeight">GetImageViewHeight</a></h2>
<div class="doc-section">
-<p>GetImageViewHeight() returns the pixel view height.</p></ol>
+<p>GetImageViewHeight() returns the image view height.</p></ol>
<p>The format of the GetImageViewHeight method is:</p>
<pre class="code">
- size_t GetImageViewHeight(const ImageView *pixel_view)
+ size_t GetImageViewHeight(const ImageView *image_view)
</pre>
<p>A description of each parameter follows:</p></ol>
-<h5>pixel_view</h5>
-<ol><p>the pixel view.</p></ol>
+<h5>image_view</h5>
+<ol><p>the image view.</p></ol>
+
+ </div>
+<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
+_8c.html" target="source" name="GetImageViewImage">GetImageViewImage</a></h2>
+<div class="doc-section">
+
+<p>GetImageViewImage() returns the image associated with the image view.</p></ol>
+
+<p>The format of the GetImageViewImage method is:</p>
+
+<pre class="code">
+ MagickCore *GetImageViewImage(const ImageView *image_view)
+</pre>
+
+<p>A description of each parameter follows:</p></ol>
+
+<h5>image_view</h5>
+<ol><p>the image view.</p></ol>
</div>
<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
_8c.html" target="source" name="GetImageViewIterator">GetImageViewIterator</a></h2>
<div class="doc-section">
-<p>GetImageViewIterator() iterates over the pixel view in parallel and calls your get method for each scanline of the view. The pixel region is not confined to the image canvas-- that is you can include negative offsets or widths or heights that exceed the image dimension. Any updates to the pixels in your callback are ignored.</p></ol>
+<p>GetImageViewIterator() iterates over the image view in parallel and calls your get method for each scanline of the view. The pixel region is not confined to the image canvas-- that is you can include negative offsets or widths or heights that exceed the image dimension. Any updates to the pixels in your callback are ignored.</p></ol>
-<p>Use this pragma:</p>
+<p>Use this pragma if the view is not single threaded:</p>
<pre class="text">
#pragma omp critical
<p>A description of each parameter follows:</p></ol>
<h5>source</h5>
-<ol><p>the source pixel view.</p></ol>
+<ol><p>the source image view.</p></ol>
<h5>get</h5>
<ol><p>the get callback method.</p></ol>
</div>
<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
-_8c.html" target="source" name="GetImageViewPixels">GetImageViewPixels</a></h2>
+_8c.html" target="source" name="GetImageViewVirtualIndexes">GetImageViewVirtualIndexes</a></h2>
<div class="doc-section">
-<p>GetImageViewPixels() returns the pixel view pixel_wands.</p></ol>
+<p>GetImageViewVirtualIndexes() returns the image view virtual indexes.</p></ol>
-<p>The format of the GetImageViewPixels method is:</p>
+<p>The format of the GetImageViewVirtualIndexes method is:</p>
<pre class="code">
- PixelImage *GetImageViewPixels(const ImageView *pixel_view)
+ const IndexPacket *GetImageViewVirtualIndexes(
+ const ImageView *image_view)
</pre>
<p>A description of each parameter follows:</p></ol>
-<h5>pixel_view</h5>
-<ol><p>the pixel view.</p></ol>
+<h5>image_view</h5>
+<ol><p>the image view.</p></ol>
</div>
<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
-_8c.html" target="source" name="GetImageViewImage">GetImageViewImage</a></h2>
+_8c.html" target="source" name="GetImageViewVirtualPixels">GetImageViewVirtualPixels</a></h2>
<div class="doc-section">
-<p>GetImageViewImage() returns the magick wand associated with the pixel view.</p></ol>
+<p>GetImageViewVirtualPixels() returns the image view virtual pixels.</p></ol>
-<p>The format of the GetImageViewImage method is:</p>
+<p>The format of the GetImageViewVirtualPixels method is:</p>
<pre class="code">
- MagickCore *GetImageViewImage(const ImageView *pixel_view)
+ const PixelPacket *GetImageViewVirtualPixels(const ImageView *image_view)
</pre>
<p>A description of each parameter follows:</p></ol>
-<h5>pixel_view</h5>
-<ol><p>the pixel view.</p></ol>
+<h5>image_view</h5>
+<ol><p>the image view.</p></ol>
</div>
<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
_8c.html" target="source" name="GetImageViewWidth">GetImageViewWidth</a></h2>
<div class="doc-section">
-<p>GetImageViewWidth() returns the pixel view width.</p></ol>
+<p>GetImageViewWidth() returns the image view width.</p></ol>
<p>The format of the GetImageViewWidth method is:</p>
<pre class="code">
- size_t GetImageViewWidth(const ImageView *pixel_view)
+ size_t GetImageViewWidth(const ImageView *image_view)
</pre>
<p>A description of each parameter follows:</p></ol>
-<h5>pixel_view</h5>
-<ol><p>the pixel view.</p></ol>
+<h5>image_view</h5>
+<ol><p>the image view.</p></ol>
</div>
<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
_8c.html" target="source" name="GetImageViewX">GetImageViewX</a></h2>
<div class="doc-section">
-<p>GetImageViewX() returns the pixel view x offset.</p></ol>
+<p>GetImageViewX() returns the image view x offset.</p></ol>
<p>The format of the GetImageViewX method is:</p>
<pre class="code">
- ssize_t GetImageViewX(const ImageView *pixel_view)
+ ssize_t GetImageViewX(const ImageView *image_view)
</pre>
<p>A description of each parameter follows:</p></ol>
-<h5>pixel_view</h5>
-<ol><p>the pixel view.</p></ol>
+<h5>image_view</h5>
+<ol><p>the image view.</p></ol>
</div>
<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
_8c.html" target="source" name="GetImageViewY">GetImageViewY</a></h2>
<div class="doc-section">
-<p>GetImageViewY() returns the pixel view y offset.</p></ol>
+<p>GetImageViewY() returns the image view y offset.</p></ol>
<p>The format of the GetImageViewY method is:</p>
<pre class="code">
- ssize_t GetImageViewY(const ImageView *pixel_view)
+ ssize_t GetImageViewY(const ImageView *image_view)
</pre>
<p>A description of each parameter follows:</p></ol>
-<h5>pixel_view</h5>
-<ol><p>the pixel view.</p></ol>
+<h5>image_view</h5>
+<ol><p>the image view.</p></ol>
</div>
<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
_8c.html" target="source" name="IsImageView">IsImageView</a></h2>
<div class="doc-section">
-<p>IsImageView() returns MagickTrue if the the parameter is verified as a pixel view container.</p></ol>
+<p>IsImageView() returns MagickTrue if the the parameter is verified as a image view object.</p></ol>
<p>The format of the IsImageView method is:</p>
<pre class="code">
- MagickBooleanType IsImageView(const ImageView *pixel_view)
+ MagickBooleanType IsImageView(const ImageView *image_view)
</pre>
<p>A description of each parameter follows:</p></ol>
-<h5>pixel_view</h5>
-<ol><p>the pixel view.</p></ol>
+<h5>image_view</h5>
+<ol><p>the image view.</p></ol>
</div>
<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
_8c.html" target="source" name="NewImageView">NewImageView</a></h2>
<div class="doc-section">
-<p>NewImageView() returns a pixel view required for all other methods in the Pixel View API.</p></ol>
+<p>NewImageView() returns a image view required for all other methods in the Pixel View API.</p></ol>
<p>The format of the NewImageView method is:</p>
_8c.html" target="source" name="NewImageViewRegion">NewImageViewRegion</a></h2>
<div class="doc-section">
-<p>NewImageViewRegion() returns a pixel view required for all other methods in the Pixel View API.</p></ol>
+<p>NewImageViewRegion() returns a image view required for all other methods in the Pixel View API.</p></ol>
<p>The format of the NewImageViewRegion method is:</p>
_8c.html" target="source" name="SetImageViewIterator">SetImageViewIterator</a></h2>
<div class="doc-section">
-<p>SetImageViewIterator() iterates over the pixel view in parallel and calls your set method for each scanline of the view. The pixel region is confined to the image canvas-- that is no negative offsets or widths or heights that exceed the image dimension. The pixels are initiallly undefined and any settings you make in the callback method are automagically synced back to your image.</p></ol>
+<p>SetImageViewIterator() iterates over the image view in parallel and calls your set method for each scanline of the view. The pixel region is confined to the image canvas-- that is no negative offsets or widths or heights that exceed the image dimension. The pixels are initiallly undefined and any settings you make in the callback method are automagically synced back to your image.</p></ol>
-<p>Use this pragma:</p>
+<p>Use this pragma if the view is not single threaded:</p>
<pre class="text">
#pragma omp critical
<p>A description of each parameter follows:</p></ol>
<h5>destination</h5>
-<ol><p>the pixel view.</p></ol>
+<ol><p>the image view.</p></ol>
<h5>set</h5>
<ol><p>the set callback method.</p></ol>
_8c.html" target="source" name="TransferImageViewIterator">TransferImageViewIterator</a></h2>
<div class="doc-section">
-<p>TransferImageViewIterator() iterates over two pixel views in parallel and calls your transfer method for each scanline of the view. The source pixel region is not confined to the image canvas-- that is you can include negative offsets or widths or heights that exceed the image dimension. However, the destination pixel view is confined to the image canvas-- that is no negative offsets or widths or heights that exceed the image dimension are permitted.</p></ol>
+<p>TransferImageViewIterator() iterates over two image views in parallel and calls your transfer method for each scanline of the view. The source pixel region is not confined to the image canvas-- that is you can include negative offsets or widths or heights that exceed the image dimension. However, the destination image view is confined to the image canvas-- that is no negative offsets or widths or heights that exceed the image dimension are permitted.</p></ol>
-<p>Use this pragma:</p>
+<p>Use this pragma if the view is not single threaded:</p>
<pre class="text">
#pragma omp critical
<p>A description of each parameter follows:</p></ol>
<h5>source</h5>
-<ol><p>the source pixel view.</p></ol>
+<ol><p>the source image view.</p></ol>
<h5>destination</h5>
-<ol><p>the destination pixel view.</p></ol>
+<ol><p>the destination image view.</p></ol>
<h5>transfer</h5>
<ol><p>the transfer callback method.</p></ol>
_8c.html" target="source" name="UpdateImageViewIterator">UpdateImageViewIterator</a></h2>
<div class="doc-section">
-<p>UpdateImageViewIterator() iterates over the pixel view in parallel and calls your update method for each scanline of the view. The pixel region is confined to the image canvas-- that is no negative offsets or widths or heights that exceed the image dimension are permitted. Updates to pixels in your callback are automagically synced back to the image.</p></ol>
+<p>UpdateImageViewIterator() iterates over the image view in parallel and calls your update method for each scanline of the view. The pixel region is confined to the image canvas-- that is no negative offsets or widths or heights that exceed the image dimension are permitted. Updates to pixels in your callback are automagically synced back to the image.</p></ol>
-<p>Use this pragma:</p>
+<p>Use this pragma if the view is not single threaded:</p>
<pre class="text">
#pragma omp critical
<p>A description of each parameter follows:</p></ol>
<h5>source</h5>
-<ol><p>the source pixel view.</p></ol>
+<ol><p>the source image view.</p></ol>
<h5>update</h5>
<ol><p>the update callback method.</p></ol>
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<div class="sponsor">
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
+<div class="sponsor">
+ <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
+</div>
</div>
</div>
\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+ <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
</div>
</div>
</div>
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
</div>
</div>
</div>
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+ <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
</div>
</div>
</div>
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
</div>
</div>
</div>
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<div class="sponsor">
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
-<div class="sponsor">
- <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
-</div>
</div>
</div>
\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
</div>
</div>
</div>
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+ <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
</div>
</div>
</div>
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+ <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
</div>
</div>
</div>
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<div class="sponsor">
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
-<div class="sponsor">
- <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
-</div>
</div>
</div>
\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<div class="sponsor">
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
+<div class="sponsor">
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+</div>
</div>
</div>
\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+ <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
</div>
</div>
</div>
<div class="sponsor">
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
+<div class="sponsor">
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+</div>
</div>
</div>
\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
</div>
</div>
</div>
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+ <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
</div>
</div>
</div>
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+ <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
</div>
</div>
</div>
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
</div>
</div>
</div>
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
</div>
</div>
</div>
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
</div>
</div>
</div>
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<div class="sponsor">
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
+<div class="sponsor">
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+</div>
</div>
</div>
\r
\r
<p class="navigation-index">[<a href="#animate">animate</a> • <a href="#compare">compare</a> • <a href="#composite">composite</a> • <a href="#conjure">conjure</a> • <a href="#convert">convert</a> • <a href="#display">display</a> • <a href="#identify">identify</a> • <a href="#import">import</a> • <a href="#mogrify">mogrify</a> • <a href="#montage">montage</a> • <a href="#stream">stream</a>]</p>
-<p>ImageMagick includes a number of command-line utilities for manipulating images. Most of you are probably accustomed to editing images one at a time with a graphical user interface (GUI) with such programs as <a href="http://www.gimp.org" target="1371206552">gimp</a> or <a href="http://www.adobe.com" target="781200986">Photoshop</a>. However, a GUI is not always convenient. Suppose you want to process an image dynamically from a web script or you want to apply the same operations to many images or repeat a specific operation at different times to the same or different image. For these types of operations, the command-line image processing utility is appropriate.</p>
+<p>ImageMagick includes a number of command-line utilities for manipulating images. Most of you are probably accustomed to editing images one at a time with a graphical user interface (GUI) with such programs as <a href="http://www.gimp.org" target="1460115314">gimp</a> or <a href="http://www.adobe.com" target="148562135">Photoshop</a>. However, a GUI is not always convenient. Suppose you want to process an image dynamically from a web script or you want to apply the same operations to many images or repeat a specific operation at different times to the same or different image. For these types of operations, the command-line image processing utility is appropriate.</p>
<p>The ImageMagick command-line tools exit with a status of 0 if the command line arguments have a proper syntax and no problems are encountered. Expect a descriptive message and an exit status of 1 if any exception occurs such as improper syntax, a problem reading or writing an image, or any other problem that prevents the command from completing successfully.</p>
-<p>In the paragraphs below, find a short description for each command-line tool. Click on the program name to get details about the program usage and a list of command-line options that alters how the program behaves. If you are just getting acquainted with ImageMagick, start with the <a href="#convert">convert</a> program. Be sure to peruse Anthony Thyssen's tutorial on how to use ImageMagick utilities to <a href="http://www.imagemagick.org/Usage/" target="451534095">convert, compose, or edit</a> images from the command-line.</p>
+<p>In the paragraphs below, find a short description for each command-line tool. Click on the program name to get details about the program usage and a list of command-line options that alters how the program behaves. If you are just getting acquainted with ImageMagick, start with the <a href="#convert">convert</a> program. Be sure to peruse Anthony Thyssen's tutorial on how to use ImageMagick utilities to <a href="http://www.imagemagick.org/Usage/" target="33045796">convert, compose, or edit</a> images from the command-line.</p>
<div style="margin: auto;">
<h2><a name="animate"></a><a href="../www/animate.html">animate</a></h2>
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
</div>
</div>
</div>
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<h2>Contact the Development Team</h2>
</div>
- <p>Use this form to contact the ImageMagick Wizards for any of the issues listed below. You can expect a reply within 24-48 hours if your message is on topic and is a sponsorshp, license, or security issue. The bug and documentation issues are for reporting only. For any other issue, post your message to the <a href="http://www.imagemagick.org/discourse-server" target="1966459522">discourse server</a>.</p>
+ <p>Use this form to contact the ImageMagick Wizards for any of the issues listed below. You can expect a reply within 24-48 hours if your message is on topic and is a sponsorshp, license, or security issue. The bug and documentation issues are for reporting only. For any other issue, post your message to the <a href="http://www.imagemagick.org/discourse-server" target="156201139">discourse server</a>.</p>
<fieldset>
<legend>Contact the Wizards</legend>
<p>Enter this code, <em class="warn">
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+ <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
</div>
</div>
</div>
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
\r
<div class="main">\r
\r
-<p>Here are a few examples of what you can do with an image using ImageMagick from the command line, a program interface, or script. You can generate this image yourself with this <a href="../www/perl-magick.html">PerlMagick</a> script, <a href="../www/source/examples.pl" target="1129094649">examples.pl</a>.</p><br />
+<p>Here are a few examples of what you can do with an image using ImageMagick from the command line, a program interface, or script. You can generate this image yourself with this <a href="../www/perl-magick.html">PerlMagick</a> script, <a href="../www/source/examples.pl" target="1636389627">examples.pl</a>.</p><br />
<div class="viewport">
<img src="../images/examples.jpg" alt="[ImageMagick]" width="734" height="2972" border="0" name="titlebar-west" />
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<div class="sponsor">
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
+<div class="sponsor">
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+</div>
</div>
</div>
\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<div class="sponsor">
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
+<div class="sponsor">
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+</div>
</div>
</div>
\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
\r
<p>The next generation of ImageMagick, version 5, started when Bob Friesenhahn contacted me and suggested I improve the application programming interface so users could leverage the image-processing algorithms from other languages or scripts. Bob also wrote a C++ wrapper for ImageMagick called Magick++, and began contributing enhancements such as the module loader facility, automatic file identification, and test suites. In the mean-time, the project picked up a few other notable contributors: Glenn Randers-Pehrson, William Radcliffe, and Leonard Rosenthol. By now, ImageMagick was being utilized by tens of thousands of users, who reacted gruffly when a new release broke an existing API call or script. The other members of the group wanted to freeze the API and command line but I was not quite ready, since ImageMagick was not quite what I had envisioned it could be. Bob and the others created a fork of ImageMagick while I continued to develop ImageMagick.</p>\r
\r
-<p>I did not work alone for long. Anthony Thyssen contacted me about deficiencies in the ImageMagick command line programs. He pointed out that the command line was confusing when dealing with more than one image. He suggested an orderly, well-defined method for dealing with the command line, and this became ImageMagick version 6 (the current release). His efforts are detailed on his web pages, <a href="http://www.imagemagick.org/Usage/" target="474674840">Examples of ImageMagick Usage</a>. I highly recommend that you peruse his site. He has illustrated the power of ImageMagick in ways that even I did not know were possible.</p>\r
+<p>I did not work alone for long. Anthony Thyssen contacted me about deficiencies in the ImageMagick command line programs. He pointed out that the command line was confusing when dealing with more than one image. He suggested an orderly, well-defined method for dealing with the command line, and this became ImageMagick version 6 (the current release). His efforts are detailed on his web pages, <a href="http://www.imagemagick.org/Usage/" target="838024326">Examples of ImageMagick Usage</a>. I highly recommend that you peruse his site. He has illustrated the power of ImageMagick in ways that even I did not know were possible.</p>\r
\r
<p>Another notable contributer, Fred Weinhaus, makes available a plethora of command-line <a href="http://www.fmwconcepts.com/imagemagick/">scripts</a> that perform geometric transforms, blurs, sharpens, edging, noise removal, and color manipulations.</p>\r
\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<div class="sponsor">
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
+<div class="sponsor">
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+</div>
</div>
</div>
\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+ <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
</div>
</div>
</div>
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+ <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
</div>
</div>
</div>
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+ <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
</div>
</div>
</div>
<h2><a name="command-line"></a>Command-line Tutorials</h2>
</div>
<ul>
- <dt><a href="http://www.imagemagick.org/Usage/" target="973072651">Examples of ImageMagick Usage</a></dt>
- <dt><a href="http://software.newsforge.com/article.pl?sid=05/04/29/1358220" target="419490072">Advanced image editing from the command line with ImageMagick</a></dt>
- <dt><a href="http://www.applematters.com/index.html/section/comments/1113/" target="1685112726">Best Open Source Software for the Macintosh</a></dt>
- <dt><a href="http://software.newsforge.com/article.pl?sid=05/07/01/1959251" target="685819174">Command-line animations using ImageMagick</a></dt>
- <dt><a href="http://www.builderau.com.au/program/linux/soa/Convert_images_with_open_source_ImageMagick/0,339028299,339271774,00.htm" target="542736260">Convert Images with Open Source ImageMagick</a></dt>
- <dt><a href="http://polishlinux.org/apps/graphics/enchanting-pictures-with-imagemagick/" target="2125887535">Enchanting Pictures with ImageMagick</a></dt>
- <dt><a href="http://www-106.ibm.com/developerworks/library/l-graf/?ca=dnt-428" target="855083638">Graphics from the Command Line</a></dt>
- <dt><a href="http://www.ars-informatica.ca/article.html?article=22" target="1247816569">Image creation, conversion and manipulation with ImageMagick</a></dt>
- <dt><a href="http://www.applematters.com/index.html/section/comments/2104/" target="1702415356">Image Editing for Power Users on the Mac</a></dt>
- <dt><a href="http://applications.linux.com/article.pl?sid=05/03/29/1525217" target="637003180">ImageMagick: A graphics wizard for the command line</a></dt>
- <dt><a href="http://www.ioncannon.net/linux/81/5-imagemagick-command-line-examples-part-1/" target="656088019">ImageMagick command line examples - part 1</a></dt>
- <dt><a href="http://www.ioncannon.net/linux/72/5-imagemagick-command-line-examples-part-2/" target="1952150980">ImageMagick command line examples - part 2</a></dt>
- <dt><a href="http://www.rabuser.info/jmagick.html" target="1098999385">ImageMagick & Java</a></dt>
- <dt><a href="http://www.jpeek.com/articles/linuxmag/0606.pdf" target="1421923464">ImageMagick, Part One</a></dt>
- <dt><a href="http://www.jpeek.com/articles/linuxmag/0607.pdf" target="1010980007">ImageMagick, Part Two</a></dt>
- <dt><a href="http://www-106.ibm.com/developerworks/library/l-graf2/?ca=dgr-lnxw15GraphicsLine" target="547312902">More Graphics from the Command Line</a></dt>
- <dt><a href="http://www.ffnn.nl/pages/projects/ubuntu-firefox-themes.html" target="1167373745">Ubuntu Firefox Themes</a></dt>
+ <dt><a href="http://www.imagemagick.org/Usage/" target="783523541">Examples of ImageMagick Usage</a></dt>
+ <dt><a href="http://software.newsforge.com/article.pl?sid=05/04/29/1358220" target="2014884832">Advanced image editing from the command line with ImageMagick</a></dt>
+ <dt><a href="http://www.applematters.com/index.html/section/comments/1113/" target="46455033">Best Open Source Software for the Macintosh</a></dt>
+ <dt><a href="http://software.newsforge.com/article.pl?sid=05/07/01/1959251" target="1136275418">Command-line animations using ImageMagick</a></dt>
+ <dt><a href="http://www.builderau.com.au/program/linux/soa/Convert_images_with_open_source_ImageMagick/0,339028299,339271774,00.htm" target="2004844255">Convert Images with Open Source ImageMagick</a></dt>
+ <dt><a href="http://polishlinux.org/apps/graphics/enchanting-pictures-with-imagemagick/" target="787152510">Enchanting Pictures with ImageMagick</a></dt>
+ <dt><a href="http://www-106.ibm.com/developerworks/library/l-graf/?ca=dnt-428" target="1240877916">Graphics from the Command Line</a></dt>
+ <dt><a href="http://www.ars-informatica.ca/article.html?article=22" target="220731089">Image creation, conversion and manipulation with ImageMagick</a></dt>
+ <dt><a href="http://www.applematters.com/index.html/section/comments/2104/" target="1796727798">Image Editing for Power Users on the Mac</a></dt>
+ <dt><a href="http://applications.linux.com/article.pl?sid=05/03/29/1525217" target="710121788">ImageMagick: A graphics wizard for the command line</a></dt>
+ <dt><a href="http://www.ioncannon.net/linux/81/5-imagemagick-command-line-examples-part-1/" target="1922101547">ImageMagick command line examples - part 1</a></dt>
+ <dt><a href="http://www.ioncannon.net/linux/72/5-imagemagick-command-line-examples-part-2/" target="474982168">ImageMagick command line examples - part 2</a></dt>
+ <dt><a href="http://www.rabuser.info/jmagick.html" target="1551857429">ImageMagick & Java</a></dt>
+ <dt><a href="http://www.jpeek.com/articles/linuxmag/0606.pdf" target="232740032">ImageMagick, Part One</a></dt>
+ <dt><a href="http://www.jpeek.com/articles/linuxmag/0607.pdf" target="1296512844">ImageMagick, Part Two</a></dt>
+ <dt><a href="http://www-106.ibm.com/developerworks/library/l-graf2/?ca=dgr-lnxw15GraphicsLine" target="1601715278">More Graphics from the Command Line</a></dt>
+ <dt><a href="http://www.ffnn.nl/pages/projects/ubuntu-firefox-themes.html" target="640049665">Ubuntu Firefox Themes</a></dt>
</ul>
<div style="margin: auto;">
</div>
<ul>
- <dt><a href="http://www-128.ibm.com/developerworks/openwww/source/library/os-mosaic/?ca=dgr-lnxw09MosaicImages" target="1813480560">Create Mosaic Images with Perl and ImageMagick</a></dt>
- <dt><a href="http://builder.com.com/5100-6371-5924990.html" target="938754343">Convert images for printing with MagickWand for PHP</a></dt>
- <dt><a href="http://www.sitepoint.com/article/dynamic-images-imagemagick" target="1367318634">Create Dynamic Images with ImageMagick</a></dt>
- <dt><a href="http://www.clearimageonline.com/builder/pdf/imageservices.pdf" target="1323743427">Image Services Add-on for Aestiva's HTML/OS and H2O</a></dt>
- <dt><a href="http://www.ioncannon.net/php/75/how-to-compile-imagemagick-for-php-by-hand/" target="1328441353">How to compile ImageMagick for PHP by hand</a></dt>
- <dt><a href="http://members.shaw.ca/el.supremo/MagickWand/" target="185961479">MagickWand Examples in C</a></dt>
- <dt><a href="http://www.html-editors.com/contest/1/82-read.html" target="409070967">PHP Extensions: MagickWand for PHP</a></dt>
- <dt><a href="http://www.evolt.org/article/PHP_frontend_to_ImageMagick/17/55650/" target="1213526924">PHP frontend to ImageMagick</a></dt>
- <dt><a href="http://www.ioncannon.net/php/61/php-imagemagick-magickwand-examples/" target="1903066794">PHP ImageMagick MagickWand Examples</a></dt>
- <dt><a href="http://www.imagemagick.org/RMagick/doc/rvgtut.html" target="1072948564">RVG - Ruby Vector Graphics</a></dt>
- <dt><a href="http://www.devshed.com/c/a/PHP/Security-Images-with-PHP-and-ImageMagick/" target="1894529825">Security Images with PHP and ImageMagick</a></dt>
- <dt><a href="http://www.rubblewebs.co.uk/imagemagick/" target="266494666">Simple Uses of PHP and ImageMagick</a></dt>
+ <dt><a href="http://www-128.ibm.com/developerworks/openwww/source/library/os-mosaic/?ca=dgr-lnxw09MosaicImages" target="1992956462">Create Mosaic Images with Perl and ImageMagick</a></dt>
+ <dt><a href="http://builder.com.com/5100-6371-5924990.html" target="71249583">Convert images for printing with MagickWand for PHP</a></dt>
+ <dt><a href="http://www.sitepoint.com/article/dynamic-images-imagemagick" target="1011274367">Create Dynamic Images with ImageMagick</a></dt>
+ <dt><a href="http://www.clearimageonline.com/builder/pdf/imageservices.pdf" target="1949461328">Image Services Add-on for Aestiva's HTML/OS and H2O</a></dt>
+ <dt><a href="http://www.ioncannon.net/php/75/how-to-compile-imagemagick-for-php-by-hand/" target="1024305520">How to compile ImageMagick for PHP by hand</a></dt>
+ <dt><a href="http://members.shaw.ca/el.supremo/MagickWand/" target="1158857880">MagickWand Examples in C</a></dt>
+ <dt><a href="http://www.html-editors.com/contest/1/82-read.html" target="1967564366">PHP Extensions: MagickWand for PHP</a></dt>
+ <dt><a href="http://www.evolt.org/article/PHP_frontend_to_ImageMagick/17/55650/" target="584112693">PHP frontend to ImageMagick</a></dt>
+ <dt><a href="http://www.ioncannon.net/php/61/php-imagemagick-magickwand-examples/" target="596148139">PHP ImageMagick MagickWand Examples</a></dt>
+ <dt><a href="http://www.imagemagick.org/RMagick/doc/rvgtut.html" target="1392385758">RVG - Ruby Vector Graphics</a></dt>
+ <dt><a href="http://www.devshed.com/c/a/PHP/Security-Images-with-PHP-and-ImageMagick/" target="746888172">Security Images with PHP and ImageMagick</a></dt>
+ <dt><a href="http://www.rubblewebs.co.uk/imagemagick/" target="1805896186">Simple Uses of PHP and ImageMagick</a></dt>
</ul>
<div style="margin: auto;">
</div>
<ul>
- <dt><a href="http://beta.bigmedium.com/blog/imagemagick-install-osx.shtml" target="1460433640">Installing ImageMagick on Mac OS X</a></dt>
- <dt><a href="http://www.cloudgoessocial.net/2010/02/10/imagemagick-for-iphone-via-snowleopard/" target="731814651">ImageMagick on iPhone</a></dt>
- <dt><a href="http://www.cloudgoessocial.net/2009/07/09/imagemagick-on-iphone-xcode/" target="1239567317">ImageMagick on iPhone - Xcode</a></dt>
- <dt><a href="http://www.digitalsanctum.com/?s=ImageMagick" target="1879923712">Installing ImageMagick from Source on Ubuntu</a></dt>
+ <dt><a href="http://beta.bigmedium.com/blog/imagemagick-install-osx.shtml" target="1356772558">Installing ImageMagick on Mac OS X</a></dt>
+ <dt><a href="http://www.cloudgoessocial.net/2010/02/10/imagemagick-for-iphone-via-snowleopard/" target="233498611">ImageMagick on iPhone</a></dt>
+ <dt><a href="http://www.cloudgoessocial.net/2009/07/09/imagemagick-on-iphone-xcode/" target="441936079">ImageMagick on iPhone - Xcode</a></dt>
+ <dt><a href="http://www.digitalsanctum.com/?s=ImageMagick" target="1224173742">Installing ImageMagick from Source on Ubuntu</a></dt>
</ul>
<div style="margin: auto;">
</div>
<ul>
- <dt><a href="http://www.xs4all.nl/%7Ebvdwolf/main/foto/down_sample/down_sample.htm" target="269443730">Down-sampling Methods</a></dt>
+ <dt><a href="http://www.xs4all.nl/%7Ebvdwolf/main/foto/down_sample/down_sample.htm" target="279953645">Down-sampling Methods</a></dt>
</ul>
<div style="margin: auto;">
<h2><a name="book-review"></a>ImageMagick Book Review</h2>
</div>
<ul>
- <dt><a href="http://www.linux.com/article.pl?sid=06/09/29/1917210" target="1925386492">Book review: ImageMagick Tricks</a></dt>
- <dt><a href="http://books.slashdot.org/books/06/03/13/1442239.shtml" target="275176325">The Definitive Guide To ImageMagick</a></dt>
+ <dt><a href="http://www.linux.com/article.pl?sid=06/09/29/1917210" target="1578211497">Book review: ImageMagick Tricks</a></dt>
+ <dt><a href="http://books.slashdot.org/books/06/03/13/1442239.shtml" target="1081534349">The Definitive Guide To ImageMagick</a></dt>
</ul>
<div style="margin: auto;">
<h2><a name="command-line"></a>Mailing List Archives</h2>
</div>
<ul>
- <dt><a href="http://www.archivesat.com/ImageMagick_Users_List/" target="247847617">ImageMagick Users List</a></dt>
- <dt><a href="http://www.archivesat.com/ImageMagick_Developer_List/" target="632986482">ImageMagick Developers List</a></dt>
- <dt><a href="http://www.archivesat.com/ImageMagick_Defect_Support/" target="1522992894">ImageMagick Bugs List</a></dt>
+ <dt><a href="http://www.archivesat.com/ImageMagick_Users_List/" target="1067106155">ImageMagick Users List</a></dt>
+ <dt><a href="http://www.archivesat.com/ImageMagick_Developer_List/" target="671605766">ImageMagick Developers List</a></dt>
+ <dt><a href="http://www.archivesat.com/ImageMagick_Defect_Support/" target="1302265439">ImageMagick Bugs List</a></dt>
</ul>
<div style="margin: auto;">
</div>
<dl>
<dt>Denmark</dt>
- <dd><a href="http://imagemagick.europnews.de" target="1950262973">http://imagemagick.europnews.de</a></dd><br />
+ <dd><a href="http://imagemagick.europnews.de" target="716350305">http://imagemagick.europnews.de</a></dd><br />
<dt>Germany</dt>
- <dd><a href="http://imagemagick.linux-mirror.org" target="1269989662">http://imagemagick.linux-mirror.org</a></dd><br />
+ <dd><a href="http://imagemagick.linux-mirror.org" target="1381727554">http://imagemagick.linux-mirror.org</a></dd><br />
<dt>Ireland</dt>
- <dd><a href="http://imagemagick.oss-mirror.org" target="31597265">http://imagemagick.oss-mirror.org</a></dd><br />
+ <dd><a href="http://imagemagick.oss-mirror.org" target="1076883338">http://imagemagick.oss-mirror.org</a></dd><br />
<dt>United States</dt>
- <dd><a href="http://www.imagemagick.org" target="1754930305">http://www.imagemagick.org</a></dd>
+ <dd><a href="http://www.imagemagick.org" target="1191332474">http://www.imagemagick.org</a></dd>
</dl>
<div style="margin: auto;">
</div>
<ul>
- <dt><a href="http://gmic.sourceforge.net/" target="221505400">G'MIC</a>: convert, manipulate and visualize generic 1D/2D/3D multi-spectral image files</dt>
- <dt><a href="http://www.beesoft.org/index.html?id=imagicom" target="1453520730">Image Commander</a>: bulk picture processing with a GUI</dt>
+ <dt><a href="http://gmic.sourceforge.net/" target="786101335">G'MIC</a>: convert, manipulate and visualize generic 1D/2D/3D multi-spectral image files</dt>
+ <dt><a href="http://www.beesoft.org/index.html?id=imagicom" target="1309623370">Image Commander</a>: bulk picture processing with a GUI</dt>
</ul>
<div style="margin: auto;">
<h2><a name="other-projects"></a>Other Projects Hosted by ImageMagick Studio</h2>
</div>
<ul>
- <dt><a href="http://www.wizards-toolkit.org" target="618426664">Wizard's Toolkit</a></dt>
- <dt><a href="http://www.multipole.org" target="768818302">Computational Simulation of Multi-Body Interactions with O(n) Scaling</a></dt>
+ <dt><a href="http://www.wizards-toolkit.org" target="340361670">Wizard's Toolkit</a></dt>
+ <dt><a href="http://www.multipole.org" target="240332965">Computational Simulation of Multi-Body Interactions with O(n) Scaling</a></dt>
</ul>
\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
</div>
</div>
</div>
}
</pre>
</div>
-<p>Now lets perform the same contrast enhancement while taking advantage of our dual or quad-core processing system by running the algorithm in parallel utilizing wand views. The <a href="../www/source/image-contrast.c">image-contrast.c</a> module reads an image, applies sigmoidal non-linearity contrast control, and writes the result to disk just like the previous contrast enhancement program, but now it does its work in parallel (assumes ImageMagick is built with OpenMP support).</p>
+<p>Now lets perform the same contrast enhancement while taking advantage of our dual or quad-core processing system by running the algorithm in parallel utilizing wand views. The <a href="../www/source/core/sigmoidal-contrast.c">sigmoidal-contrast.c</a> module reads an image, applies sigmoidal non-linearity contrast control, and writes the result to disk just like the previous contrast enhancement program, but now it does its work in parallel (assumes ImageMagick is built with OpenMP support).</p>
<div class="viewport">
<pre class="code">
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
-#include <wand/MagickCore.h>
+#include <magick/MagickCore.h>
-static MagickBooleanType SigmoidalContrast(ImageView *pixel_view,
+static MagickBooleanType SigmoidalContrast(ImageView *contrast_view,
void *context)
{
#define QuantumScale ((MagickRealType) 1.0/(MagickRealType) QuantumRange)
#define SigmoidalContrast(x) \
(QuantumRange*(1.0/(1+exp(10.0*(0.5-QuantumScale*x)))-0.0066928509)*1.0092503)
- MagickPixelPacket
- pixel;
+ register IndexPacket
+ *indexes;
- PixelWand
- **pixels;
+ register PixelPacket
+ *pixels;
- register long
+ register ssize_t
x;
- pixels=GetImageViewPixels(contrast_view);
- for (x=0; x < (long) GetImageViewWidth(contrast_view); x++)
+ pixels=GetImageViewAuthenticPixels(contrast_view);
+ for (x=0; x < (ssize_t) GetImageViewWidth(contrast_view); x++)
{
- PixelGetMagickColor(pixels[x],&pixel);
- pixel.red=SigmoidalContrast(pixel.red);
- pixel.green=SigmoidalContrast(pixel.green);
- pixel.blue=SigmoidalContrast(pixel.blue);
- pixel.index=SigmoidalContrast(pixel.index);
- PixelSetMagickColor(contrast_pixels[x],&pixel);
+ pixels[x].red=RoundToQuantum(SigmoidalContrast(pixels[x].red));
+ pixels[x].green=RoundToQuantum(SigmoidalContrast(pixels[x].green));
+ pixels[x].blue=RoundToQuantum(SigmoidalContrast(pixels[x].blue));
+ pixels[x].opacity=RoundToQuantum(SigmoidalContrast(pixels[x].opacity));
}
+ indexes=GetImageViewAuthenticIndexes(contrast_view);
+ if (indexes != (IndexPacket *) NULL)
+ for (x=0; x < (ssize_t) GetImageViewWidth(contrast_view); x++)
+ indexes[x]=(IndexPacket) RoundToQuantum(SigmoidalContrast(indexes[x]));
return(MagickTrue);
}
{
#define ThrowImageException(image) \
{ \
- char \
- *description; \
\
- ExceptionType \
- severity; \
- \
- description=GetImageException(image,&severity); \
- (void) fprintf(stderr,"%s %s %lu %s\n",GetMagickModule(),description); \
- description=(char *) MagickRelinquishMemory(description); \
+ CatchException(exception); \
+ if (contrast_image != (Image *) NULL) \
+ contrast_image=DestroyImage(contrast_image); \
+ exception=DestroyExceptionInfo(exception); \
+ image_info=DestroyImageInfo(image_info); \
+ MagickCoreTerminus(); \
exit(-1); \
}
+ ExceptionInfo
+ *exception;
+
+ Image
+ *contrast_image;
+
+ ImageInfo
+ *image_info;
+
ImageView
*contrast_view;
MagickBooleanType
status;
- MagickPixelPacket
- pixel;
-
- MagickWand
- *contrast_image;
-
if (argc != 3)
{
(void) fprintf(stdout,"Usage: %s image sigmoidal-image\n",argv[0]);
/*
Read an image.
*/
- MagickCoreGenesis();
- contrast_image=NewMagickWand();
- status=MagickReadImage(contrast_image,argv[1]);
- if (status == MagickFalse)
- ThrowWandException(contrast_image);
+ MagickCoreGenesis(*argv,MagickTrue);
+ image_info=AcquireImageInfo();
+ (void) CopyMagickString(image_info->filename,argv[1],MaxTextExtent);
+ exception=AcquireExceptionInfo();
+ contrast_image=ReadImage(image_info,exception);
+ if (contrast_image == (Image *) NULL)
+ ThrowImageException(contrast_image);
/*
Sigmoidal non-linearity contrast control.
*/
contrast_view=NewImageView(contrast_image);
if (contrast_view == (ImageView *) NULL)
- ThrowWandException(contrast_image);
+ ThrowImageException(contrast_image);
status=UpdateImageViewIterator(contrast_view,SigmoidalContrast,(void *) NULL);
if (status == MagickFalse)
- ThrowWandException(contrast_image);
+ ThrowImageException(contrast_image);
contrast_view=DestroyImageView(contrast_view);
/*
Write the image then destroy it.
*/
- status=kWriteImages(contrast_image,argv[2],MagickTrue);
+ status=WriteImages(image_info,contrast_image,argv[2],exception);
if (status == MagickFalse)
- ThrowWandException(contrast_image);
- contrast_image=DestroyMagickWand(contrast_image);
+ ThrowImageException(contrast_image);
+ contrast_image=DestroyImage(contrast_image);
+ exception=DestroyExceptionInfo(exception);
+ image_info=DestroyImageInfo(image_info);
MagickCoreTerminus();
return(0);
}
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
</div>
</div>
</div>
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
}
</pre>
</div>
-<p>Now lets perform the same contrast enhancement while taking advantage of our dual or quad-core processing system by running the algorithm in parallel utilizing wand views. The <a href="../www/source/wand-contrast.c">wand-contrast.c</a> module reads an image, applies sigmoidal non-linearity contrast control, and writes the result to disk just like the previous contrast enhancement program, but now it does its work in parallel (assumes ImageMagick is built with OpenMP support).</p>
+<p>Now lets perform the same contrast enhancement while taking advantage of our dual or quad-core processing system by running the algorithm in parallel utilizing wand views. The <a href="../www/source/wand/sigmoidal-contrast.c">sigmoidal-contrast.c</a> module reads an image, applies sigmoidal non-linearity contrast control, and writes the result to disk just like the previous contrast enhancement program, but now it does its work in parallel (assumes ImageMagick is built with OpenMP support).</p>
<div class="viewport">
<pre class="code">
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<p>The ImageMagick web site is available from a variety of web mirrors around the world listed below.</p>
<dl class="magick-mirror">
<dt>France</dt>
- <dd><a href="http://imagemagick.europnews.de/" target="1093359890">http://imagemagick.europnews.de/</a></dd><br />
+ <dd><a href="http://imagemagick.europnews.de/" target="1057291824">http://imagemagick.europnews.de/</a></dd><br />
<dt>Unites States</dt>
- <dd><a href="http://www.imagemagick.org/" target="92235572">http://www.imagemagick.org/</a></dd>
+ <dd><a href="http://www.imagemagick.org/" target="1171664659">http://www.imagemagick.org/</a></dd>
</dl>
<p>If you want to add a new web-site mirror, please <a href="http://www.imagemagick.org/script/contact.php">contact us</a>.</p>
\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<div class="sponsor">
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
-<div class="sponsor">
- <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
-</div>
</div>
</div>
\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
</div>
</div>
</div>
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
+ <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
</div>
</div>
</div>
<dl>\r
<dd><a href="../www/index.html">Introduction</a>: convert, edit, and compose images from the command-line or program interface.</dd>\r
<dd><a href="../www/examples.html">Examples of ImageMagick usage</a>: a few examples that show what you can do with an image using ImageMagick.</dd>\r
- <dd><a href="http://www.imagemagick.org/Usage/" target="1802116517">Anthony Thyssen's examples of ImageMagick usage</a>: a comprehensive tutorial of using ImageMagick from the command line.</dd>\r
+ <dd><a href="http://www.imagemagick.org/Usage/" target="411211278">Anthony Thyssen's examples of ImageMagick usage</a>: a comprehensive tutorial of using ImageMagick from the command line.</dd>\r
<dd><a href="../www/color.html">Color names</a>: how to specify a color name, a hex color, or a numerical RGB, RGBA, HSL, HSLA, CMYK, or CMYKA color.</dd>\r
<dd><a href="../www/resources.html">Resources</a>: ImageMagick depends on external resources including configuration files, loadable modules, fonts, and environment variables.</dd>\r
<dd><a href="../www/architecture.html">Architecture</a>: get to know more about the software and algorithms behind ImageMagick.</dd>\r
<dl>\r
<dd><a href="../www/download.html">Download ImageMagick</a>: ImageMagick source and binary distributions are available from a variety of FTP and Web mirrors.</dd>\r
<ul>\r
- <dd><a href="http://www.imagemagick.org/download" target="349540313">Unix source</a>: Unix source distributions.</dd>\r
- <dd><a href="http://www.imagemagick.org/download/windows" target="1422284933">Windows source</a>: Windows source distributions.</dd>\r
- <dd><a href="http://www.imagemagick.org/download/binaries" target="369044978">Unix and Windows binaries</a>: Unix and Windows binary distributions.</dd>\r
+ <dd><a href="http://www.imagemagick.org/download" target="1593902802">Unix source</a>: Unix source distributions.</dd>\r
+ <dd><a href="http://www.imagemagick.org/download/windows" target="1562864936">Windows source</a>: Windows source distributions.</dd>\r
+ <dd><a href="http://www.imagemagick.org/download/binaries" target="1225229667">Unix and Windows binaries</a>: Unix and Windows binary distributions.</dd>\r
<dd><a href="../www/subversion.html">Subversion repository</a>: stable and development source releases.</dd>\r
- <dd><a href="http://www.magickwand.org/" target="1697613816">MagickWand for PHP</a>: a native PHP-extension to the ImageMagick MagickWand API.</dd>\r
- <dd><a href="http://www.imagemagick.org/download/delegates" target="281506087">Delegate libraries</a>: ImageMagick depends on a number of optional delegate libraries to extend its functionality.</dd>\r
+ <dd><a href="http://www.magickwand.org/" target="1291304198">MagickWand for PHP</a>: a native PHP-extension to the ImageMagick MagickWand API.</dd>\r
+ <dd><a href="http://www.imagemagick.org/download/delegates" target="2139517152">Delegate libraries</a>: ImageMagick depends on a number of optional delegate libraries to extend its functionality.</dd>\r
</ul>\r
</dl>\r
\r
<dd><a href="../www/command-line-processing.html">Command line processing</a>: the anatomy of the command line.</dd>\r
<dd><a href="../www/command-line-options.html">Command line options</a>: annotated list of all options that can appear on the command-line.</dd>\r
<dd><a href="../www/fx.html">Fx</a>: apply a mathematical expression to an image or image channels.</dd>\r
- <dd><a href="http://www.fmwconcepts.com/imagemagick/" target="1251761519">Fred's ImageMagick Scripts</a>: a plethora of command-line scripts that perform geometric transforms, blurs, sharpens, edging, noise removal, and color manipulations.</dd>\r
+ <dd><a href="http://www.fmwconcepts.com/imagemagick/" target="1730686478">Fred's ImageMagick Scripts</a>: a plethora of command-line scripts that perform geometric transforms, blurs, sharpens, edging, noise removal, and color manipulations.</dd>\r
</dl>\r
\r
<div style="margin: auto;">\r
<dl>\r
<dd><a href="../www/api.html">Program interfaces</a>: application programming interfaces.</dd>\r
<ul>\r
- <dd><a href="http://www.imagemagick.org/ChMagick" target="2113374759">ChMagick</a>: is a <a href="http://www.softintegration.com/" target="90047796">Ch</a> an embeddable MagickCore C/C++ interpreter for cross-platform scripting.</dd>\r
- <dd><a href="http://common-lisp.net/project/cl-magick/" target="1630955412">CL-Magick</a>: provides a Common Lisp interface to the ImageMagick library.</dd>\r
- <dd><a href="https://gna.org/projects/g2f/" target="1668918071">G2F</a>: implements an Ada 95 binding to a subset of the low-level MagickCore library.</dd>\r
- <dd><a href="http://www.imagemagick.org/Magick++" target="1459189311">Magick++</a>: provides an object-oriented C++ interface to ImageMagick.</dd>\r
- <dd><a href="http://pecl.php.net/package/imagick" target="1109726978">IMagick</a>: is a native PHP extension to create and modify images using the ImageMagick API.</dd>\r
- <dd><a href="http://www.yeo.id.au/jmagick/" target="1764292784">JMagick</a>: provides an object-oriented Java interface to ImageMagick.</dd>\r
+ <dd><a href="http://www.imagemagick.org/ChMagick" target="1423201016">ChMagick</a>: is a <a href="http://www.softintegration.com/" target="1576767716">Ch</a> an embeddable MagickCore C/C++ interpreter for cross-platform scripting.</dd>\r
+ <dd><a href="http://common-lisp.net/project/cl-magick/" target="2005388074">CL-Magick</a>: provides a Common Lisp interface to the ImageMagick library.</dd>\r
+ <dd><a href="https://gna.org/projects/g2f/" target="1914501182">G2F</a>: implements an Ada 95 binding to a subset of the low-level MagickCore library.</dd>\r
+ <dd><a href="http://www.imagemagick.org/Magick++" target="982663212">Magick++</a>: provides an object-oriented C++ interface to ImageMagick.</dd>\r
+ <dd><a href="http://pecl.php.net/package/imagick" target="908460201">IMagick</a>: is a native PHP extension to create and modify images using the ImageMagick API.</dd>\r
+ <dd><a href="http://www.yeo.id.au/jmagick/" target="1499788545">JMagick</a>: provides an object-oriented Java interface to ImageMagick.</dd>\r
<dd><a href="../www/magick-core.html">MagickCore</a>: C API, recommended for wizard-level developers.</dd>\r
<dd><a href="../www/magick-wand.html">MagickWand</a>: convert, compose, and edit images from the C language.</dd>\r
- <dd><a href="http://www.magickwand.org/" target="1500604688">MagickWand for PHP</a>: a native PHP-extension to the ImageMagick MagickWand API.</dd>\r
- <dd><a href="http://code.google.com/p/nmagick" target="462417332">nMagick</a>: is a port of the ImageMagick library to the haXe and Neko platforms.</dd>\r
- <dd><a href="http://wiki.lazarus.freepascal.org/index.html/PascalMagick" target="836520951">PascalMagick</a>: a Pascal binding for the MagickWand API and also the low-level MagickCore library.</dd>\r
+ <dd><a href="http://www.magickwand.org/" target="528117958">MagickWand for PHP</a>: a native PHP-extension to the ImageMagick MagickWand API.</dd>\r
+ <dd><a href="http://code.google.com/p/nmagick" target="619581566">nMagick</a>: is a port of the ImageMagick library to the haXe and Neko platforms.</dd>\r
+ <dd><a href="http://wiki.lazarus.freepascal.org/index.html/PascalMagick" target="1624626913">PascalMagick</a>: a Pascal binding for the MagickWand API and also the low-level MagickCore library.</dd>\r
<dd><a href="../www/perl-magick.html">PerlMagick</a>: convert, compose, and edit images from the Perl language.</dd>\r
- <dd><a href="http://www.imagemagick.org/download/python/" target="1116635101">PythonMagick</a>: an object-oriented Python interface to ImageMagick.</dd>\r
- <dd><a href="http://rmagick.rubyforge.org/" target="563087904">RMagick</a>: is an interface between the Ruby programming language and ImageMagick.</dd>\r
- <dd><a href="http://tclmagick.sourceforge.net/" target="1905754762">TclMagick</a>: a native Tcl-extension to the ImageMagick MagickWand API.</dd>\r
+ <dd><a href="http://www.imagemagick.org/download/python/" target="584187129">PythonMagick</a>: an object-oriented Python interface to ImageMagick.</dd>\r
+ <dd><a href="http://rmagick.rubyforge.org/" target="1563516981">RMagick</a>: is an interface between the Ruby programming language and ImageMagick.</dd>\r
+ <dd><a href="http://tclmagick.sourceforge.net/" target="595385021">TclMagick</a>: a native Tcl-extension to the ImageMagick MagickWand API.</dd>\r
</ul>\r
</dl>\r
\r
</div>\r
\r
<dl>\r
- <dd><a href="http://www.amazon.com/exec/obidos/redirect?link_code=ur2&camp=1789&tag=imagemagick-20&creative=9325&path=tg/detail/-/1590595904/qid=1123551819/sr=8-1/ref=pd_bbs_sbs_1?v=glance%26s=books%26n=507846" target="1240616641">Definitive Guide to ImageMagick</a>: this book explains ImageMagick in a practical, learn-by-example fashion.</dd>\r
- <dd><a href="http://www.amazon.com/exec/obidos/redirect?link_code=ur2&camp=1789&tag=imagemagick-20&creative=9325&path=tg/detail/-/1904811868/qid=1123551819/sr=8-1/ref=pd_bbs_sbs_1?v=glance%26s=books%26n=507846" target="780124825">ImageMagick Tricks</a>: this book is packed with examples of photo manipulations, logo creation, animations, and complete web projects.</dd>\r
+ <dd><a href="http://www.amazon.com/exec/obidos/redirect?link_code=ur2&camp=1789&tag=imagemagick-20&creative=9325&path=tg/detail/-/1590595904/qid=1123551819/sr=8-1/ref=pd_bbs_sbs_1?v=glance%26s=books%26n=507846" target="1821886792">Definitive Guide to ImageMagick</a>: this book explains ImageMagick in a practical, learn-by-example fashion.</dd>\r
+ <dd><a href="http://www.amazon.com/exec/obidos/redirect?link_code=ur2&camp=1789&tag=imagemagick-20&creative=9325&path=tg/detail/-/1904811868/qid=1123551819/sr=8-1/ref=pd_bbs_sbs_1?v=glance%26s=books%26n=507846" target="898674280">ImageMagick Tricks</a>: this book is packed with examples of photo manipulations, logo creation, animations, and complete web projects.</dd>\r
<dd><a href="http://www.imagemagick.org/discourse-server">Discourse server</a>: get help from fellow ImageMagick users and developers, post to these forums.</dd>\r
<dd><a href="http://www.imagemagick.org/script/contact.php">Contact the Wizards</a>: for bug reports (only if you do not want to sign up to the <a href="http://www.imagemagick.org/discourse-server">discourse server</a>), a source or documentation patch, a security or license issue, or if you want to be a sponsor of the ImageMagick project.</dd>\r
</dl>\r
</div>\r
\r
<dl>\r
- <dd><a href="http://www.imagemagick.org/discourse-server/viewforum.html?f=3" target="753733213">Report bugs and vulnerabilities</a>: our highest priority is to fix security defects and bug reports, usually within 48 hours of your report. The bug discourse server requires that you register. If you do not want to register, you can <a href="contact.html">contact the ImageMagick developers</a> with a convenient web form.</dd>\r
+ <dd><a href="http://www.imagemagick.org/discourse-server/viewforum.html?f=3" target="669510275">Report bugs and vulnerabilities</a>: our highest priority is to fix security defects and bug reports, usually within 48 hours of your report. The bug discourse server requires that you register. If you do not want to register, you can <a href="contact.html">contact the ImageMagick developers</a> with a convenient web form.</dd>\r
<dd><a href="../www/sponsors.html">Sponsor ImageMagick</a>: contribute bug fixes, enhancements, hardware, funds, etc. to ensure the ImageMagick project thrives.</dd>\r
<dd><a href="../www/t-shirt.html">ImageMagick t-shirt</a>: donate $25 USD and we acknowledge your gift with a logoed t-shirt.</dd>\r
</dl>\r
<h2><a name="sandbox"></a>Technology Sandbox</h2>\r
</div>\r
<dl>\r
- <dd><a href="http://www.fmwconcepts.com/imagemagick/linkcounter.html?dir=fourier_transforms/&linkname=fourier.html" target="620063076">Fourier Transform Processing With ImageMagick</a></dd>\r
- <dd><a href="http://www.imagemagick.org/Usage/fourier/" target="1355191931">ImageMagick v6 Examples -- Fourier Transforms</a></dd>\r
+ <dd><a href="http://www.fmwconcepts.com/imagemagick/linkcounter.html?dir=fourier_transforms/&linkname=fourier.html" target="59540511">Fourier Transform Processing With ImageMagick</a></dd>\r
+ <dd><a href="http://www.imagemagick.org/Usage/fourier/" target="1911981620">ImageMagick v6 Examples -- Fourier Transforms</a></dd>\r
</dl>\r
\r
\r
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<div class="sponsor">
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
-<div class="sponsor">
- <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
-</div>
</div>
</div>
\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+ <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
</div>
</div>
</div>
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+ <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
</div>
</div>
</div>
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r
<a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
</div>
<div class="sponsor">
- <a title="Sponsor: Webdesign" href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20111001000240 -->
+ <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
</div>
</div>
</div>
<!-- <span id="linkbar-west"> </span> -->\r
<span id="linkbar-center">\r
<a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> •\r
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
+ <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
</span>\r
<span id="linkbar-east"> </span>\r
</div>\r