]> granicus.if.org Git - imagemagick/blobdiff - coders/tile.c
(no commit message)
[imagemagick] / coders / tile.c
index fa6c4f1a624ad240b85cbf86af755fa8cf62df7e..224a171bdc2637eb677eb1ee05836e728d209c06 100644 (file)
@@ -17,7 +17,7 @@
 %                                 July 1992                                   %
 %                                                                             %
 %                                                                             %
-%  Copyright 1999-2009 ImageMagick Studio LLC, a non-profit organization      %
+%  Copyright 1999-2012 ImageMagick Studio LLC, a non-profit organization      %
 %  dedicated to making software imaging solutions freely available.           %
 %                                                                             %
 %  You may not use this file except in compliance with the License.  You may  %
 /*
   Include declarations.
 */
-#include "magick/studio.h"
-#include "magick/blob.h"
-#include "magick/blob-private.h"
-#include "magick/constitute.h"
-#include "magick/exception.h"
-#include "magick/exception-private.h"
-#include "magick/image.h"
-#include "magick/image-private.h"
-#include "magick/list.h"
-#include "magick/magick.h"
-#include "magick/memory_.h"
-#include "magick/monitor.h"
-#include "magick/monitor-private.h"
-#include "magick/quantum-private.h"
-#include "magick/static.h"
-#include "magick/string_.h"
-#include "magick/module.h"
+#include "MagickCore/studio.h"
+#include "MagickCore/blob.h"
+#include "MagickCore/blob-private.h"
+#include "MagickCore/constitute.h"
+#include "MagickCore/exception.h"
+#include "MagickCore/exception-private.h"
+#include "MagickCore/image.h"
+#include "MagickCore/image-private.h"
+#include "MagickCore/list.h"
+#include "MagickCore/magick.h"
+#include "MagickCore/memory_.h"
+#include "MagickCore/monitor.h"
+#include "MagickCore/monitor-private.h"
+#include "MagickCore/quantum-private.h"
+#include "MagickCore/static.h"
+#include "MagickCore/string_.h"
+#include "MagickCore/module.h"
 \f
 /*
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -74,7 +74,8 @@
 %
 %  The format of the ReadTILEImage method is:
 %
-%      Image *ReadTILEImage(const ImageInfo *image_info,ExceptionInfo *exception)
+%      Image *ReadTILEImage(const ImageInfo *image_info,
+%        ExceptionInfo *exception)
 %
 %  A description of each parameter follows:
 %
@@ -110,22 +111,25 @@ static Image *ReadTILEImage(const ImageInfo *image_info,
   read_info=DestroyImageInfo(read_info);
   if (tile_image == (Image *) NULL)
     return((Image *) NULL);
-  image=AcquireImage(image_info);
+  image=AcquireImage(image_info,exception);
   if ((image->columns == 0) || (image->rows == 0))
     ThrowReaderException(OptionError,"MustSpecifyImageSize");
   if (*image_info->filename == '\0')
     ThrowReaderException(OptionError,"MustSpecifyAnImageName");
+  image->colorspace=tile_image->colorspace;
   image->matte=tile_image->matte;
   if (image->matte != MagickFalse)
-    (void) SetImageBackgroundColor(image);
+    (void) SetImageBackgroundColor(image,exception);
   (void) CopyMagickString(image->filename,image_info->filename,MaxTextExtent);
   if (LocaleCompare(tile_image->magick,"PATTERN") == 0)
     {
       tile_image->tile_offset.x=0;
       tile_image->tile_offset.y=0;
     }
-  (void) TextureImage(image,tile_image);
+  (void) TextureImage(image,tile_image,exception);
   tile_image=DestroyImage(tile_image);
+  if (image->colorspace == GRAYColorspace)
+    image->type=GrayscaleType;
   return(GetFirstImageInList(image));
 }
 \f
@@ -149,10 +153,10 @@ static Image *ReadTILEImage(const ImageInfo *image_info,
 %
 %  The format of the RegisterTILEImage method is:
 %
-%      unsigned long RegisterTILEImage(void)
+%      size_t RegisterTILEImage(void)
 %
 */
-ModuleExport unsigned long RegisterTILEImage(void)
+ModuleExport size_t RegisterTILEImage(void)
 {
   MagickInfo
     *entry;
@@ -161,7 +165,7 @@ ModuleExport unsigned long RegisterTILEImage(void)
   entry->decoder=(DecodeImageHandler *) ReadTILEImage;
   entry->raw=MagickTrue;
   entry->endian_support=MagickTrue;
-  entry->format_type=ExplicitFormatType;
+  entry->format_type=ImplicitFormatType;
   entry->description=ConstantString("Tile image with a texture");
   entry->module=ConstantString("TILE");
   (void) RegisterMagickInfo(entry);