(void) ResetMagickMemory(draw_info,0,sizeof(*draw_info));
GetAffineMatrix(&draw_info->affine);
exception=AcquireExceptionInfo();
-
(void) QueryColorCompliance("#000F",AllCompliance,&draw_info->fill,
exception);
(void) QueryColorCompliance("#FFF0",AllCompliance,&draw_info->stroke,
exception);
- draw_info->stroke_antialias=image_info->antialias;
draw_info->stroke_width=1.0;
draw_info->alpha=OpaqueAlpha;
draw_info->fill_rule=EvenOddRule;
draw_info->linejoin=MiterJoin;
draw_info->miterlimit=10;
draw_info->decorate=NoDecoration;
- if (image_info->font != (char *) NULL)
- draw_info->font=AcquireString(image_info->font);
- if (image_info->density != (char *) NULL)
- draw_info->density=AcquireString(image_info->density);
- draw_info->text_antialias=image_info->antialias;
draw_info->pointsize=12.0;
- if (image_info->pointsize != 0.0)
- draw_info->pointsize=image_info->pointsize;
draw_info->undercolor.alpha=(Quantum) TransparentAlpha;
- draw_info->border_color=image_info->border_color;
draw_info->compose=OverCompositeOp;
- if (image_info->server_name != (char *) NULL)
- draw_info->server_name=AcquireString(image_info->server_name);
draw_info->render=MagickTrue;
draw_info->debug=IsEventLogging();
- option=GetImageOption(image_info,"encoding");
- if (option != (const char *) NULL)
- (void) CloneString(&draw_info->encoding,option);
- option=GetImageOption(image_info,"kerning");
- if (option != (const char *) NULL)
- draw_info->kerning=InterpretLocaleValue(option,(char **) NULL);
- option=GetImageOption(image_info,"interline-spacing");
- if (option != (const char *) NULL)
- draw_info->interline_spacing=InterpretLocaleValue(option,(char **) NULL);
- draw_info->direction=UndefinedDirection;
- option=GetImageOption(image_info,"interword-spacing");
- if (option != (const char *) NULL)
- draw_info->interword_spacing=InterpretLocaleValue(option,(char **) NULL);
- option=GetImageOption(image_info,"direction");
- if (option != (const char *) NULL)
- draw_info->direction=(DirectionType) ParseCommandOption(
- MagickDirectionOptions,MagickFalse,option);
- option=GetImageOption(image_info,"fill");
- if (option != (const char *) NULL)
- (void) QueryColorCompliance(option,AllCompliance,&draw_info->fill,
- exception);
- option=GetImageOption(image_info,"stroke");
- if (option != (const char *) NULL)
- (void) QueryColorCompliance(option,AllCompliance,&draw_info->stroke,
- exception);
- option=GetImageOption(image_info,"strokewidth");
- if (option != (const char *) NULL)
- draw_info->stroke_width=InterpretLocaleValue(option,(char **) NULL);
- option=GetImageOption(image_info,"undercolor");
- if (option != (const char *) NULL)
- (void) QueryColorCompliance(option,AllCompliance,&draw_info->undercolor,
- exception);
- option=GetImageOption(image_info,"gravity");
- if (option != (const char *) NULL)
- draw_info->gravity=(GravityType) ParseCommandOption(MagickGravityOptions,
- MagickFalse,option);
+ if (image_info != (ImageInfo *) NULL)
+ {
+ draw_info->stroke_antialias=image_info->antialias;
+ if (image_info->font != (char *) NULL)
+ draw_info->font=AcquireString(image_info->font);
+ if (image_info->density != (char *) NULL)
+ draw_info->density=AcquireString(image_info->density);
+ draw_info->text_antialias=image_info->antialias;
+ if (image_info->pointsize != 0.0)
+ draw_info->pointsize=image_info->pointsize;
+ draw_info->border_color=image_info->border_color;
+ if (image_info->server_name != (char *) NULL)
+ draw_info->server_name=AcquireString(image_info->server_name);
+ option=GetImageOption(image_info,"encoding");
+ if (option != (const char *) NULL)
+ (void) CloneString(&draw_info->encoding,option);
+ option=GetImageOption(image_info,"kerning");
+ if (option != (const char *) NULL)
+ draw_info->kerning=InterpretLocaleValue(option,(char **) NULL);
+ option=GetImageOption(image_info,"interline-spacing");
+ if (option != (const char *) NULL)
+ draw_info->interline_spacing=InterpretLocaleValue(option,
+ (char **) NULL);
+ draw_info->direction=UndefinedDirection;
+ option=GetImageOption(image_info,"interword-spacing");
+ if (option != (const char *) NULL)
+ draw_info->interword_spacing=InterpretLocaleValue(option,
+ (char **) NULL);
+ option=GetImageOption(image_info,"direction");
+ if (option != (const char *) NULL)
+ draw_info->direction=(DirectionType) ParseCommandOption(
+ MagickDirectionOptions,MagickFalse,option);
+ option=GetImageOption(image_info,"fill");
+ if (option != (const char *) NULL)
+ (void) QueryColorCompliance(option,AllCompliance,&draw_info->fill,
+ exception);
+ option=GetImageOption(image_info,"stroke");
+ if (option != (const char *) NULL)
+ (void) QueryColorCompliance(option,AllCompliance,&draw_info->stroke,
+ exception);
+ option=GetImageOption(image_info,"strokewidth");
+ if (option != (const char *) NULL)
+ draw_info->stroke_width=InterpretLocaleValue(option,(char **) NULL);
+ option=GetImageOption(image_info,"undercolor");
+ if (option != (const char *) NULL)
+ (void) QueryColorCompliance(option,AllCompliance,&draw_info->undercolor,
+ exception);
+ option=GetImageOption(image_info,"gravity");
+ if (option != (const char *) NULL)
+ draw_info->gravity=(GravityType) ParseCommandOption(
+ MagickGravityOptions,MagickFalse,option);
+ }
exception=DestroyExceptionInfo(exception);
draw_info->signature=MagickSignature;
}