return(status);
}
-
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
static MagickBooleanType WriteMNGImage(const ImageInfo *image_info,
Image *image, ExceptionInfo *exception)
{
- const char
- *option;
-
Image
*next_image;
green,
blue;
+ const char *
+ option;
+
mng_info->page=image->page;
need_geom=MagickTrue;
if (mng_info->page.width || mng_info->page.height)
{
if (need_geom)
{
- if ((next_image->columns+next_image->page.x) >
- mng_info->page.width)
+ if ((next_image->columns+next_image->page.x) > mng_info->page.width)
mng_info->page.width=next_image->columns+next_image->page.x;
if ((next_image->rows+next_image->page.y) > mng_info->page.height)
PNGLong(chunk+28,19L); /* simplicity=LC+JNG, no transparency */
else
+ PNGLong(chunk+28,17L); /* simplicity=VLC+JNG, no transparency */
+ }
+ }
- Write "nEED CACHEOFF" to turn playback caching off for
- streaming MNG.
+ else
+ {
+ if (need_matte)
+ {
+ if (need_defi || mng_info->need_fram || use_global_plte)
+ PNGLong(chunk+28,11L); /* simplicity=LC */
+
+ else
+ PNGLong(chunk+28,9L); /* simplicity=VLC */
+ }
+
+ else
+ {
+ if (need_defi || mng_info->need_fram || use_global_plte)
+ PNGLong(chunk+28,3L); /* simplicity=LC, no transparency */
+
+ else
+ PNGLong(chunk+28,1L); /* simplicity=VLC, no transparency */
+ }
+ }
+ (void) WriteBlob(image,32,chunk);
+ (void) WriteBlobMSBULong(image,crc32(0,chunk,32));
+ option=GetImageOption(image_info,"mng:need-cacheoff");
+ if (option != (const char *) NULL)
+ {
+ size_t
+ length;
+ /*
+ Write "nEED CACHEOFF" to turn playback caching off for streaming MNG.
*/
PNGType(chunk,mng_nEED);
length=CopyMagickString((char *) chunk+4,"CACHEOFF",20);
mng_info->ping_exclude_cHRM=MagickTrue;
mng_info->ping_exclude_date=MagickTrue;
mng_info->ping_exclude_EXIF=MagickTrue;
- mng_info->ping_exclude_eXIf=MagickTrue;
mng_info->ping_exclude_gAMA=MagickTrue;
mng_info->ping_exclude_iCCP=MagickTrue;
/* mng_info->ping_exclude_iTXt=MagickTrue; */