From 189a2a2f79f99a10460c5d3ca7c4a5b113a82c39 Mon Sep 17 00:00:00 2001 From: Cristy Date: Sat, 28 Apr 2018 12:00:18 -0400 Subject: [PATCH] ... --- MagickCore/draw.c | 17 +++++++++++++++++ coders/svg.c | 25 +++++++++++++++++++++++++ 2 files changed, 42 insertions(+) diff --git a/MagickCore/draw.c b/MagickCore/draw.c index b6bdd087c..77842412d 100644 --- a/MagickCore/draw.c +++ b/MagickCore/draw.c @@ -2443,6 +2443,16 @@ MagickExport MagickBooleanType DrawImage(Image *image,const DrawInfo *draw_info, status=MagickFalse; break; } + case 'm': + case 'M': + { + if (LocaleCompare("mask",keyword) == 0) + { + GetNextToken(q,&q,extent,token); + break; + } + break; + } case 'o': case 'O': { @@ -2524,6 +2534,8 @@ MagickExport MagickBooleanType DrawImage(Image *image,const DrawInfo *draw_info, n--; break; } + if (LocaleCompare("mask",token) == 0) + break; if (LocaleCompare("pattern",token) == 0) break; if (LocaleCompare("symbol",token) == 0) @@ -2653,6 +2665,11 @@ MagickExport MagickBooleanType DrawImage(Image *image,const DrawInfo *draw_info, GetNextToken(q,&q,extent,token); break; } + if (LocaleCompare("mask",token) == 0) + { + GetNextToken(q,&q,extent,token); + break; + } if (LocaleCompare("pattern",token) == 0) { char diff --git a/coders/svg.c b/coders/svg.c index 66f78a657..4ac2bf199 100644 --- a/coders/svg.c +++ b/coders/svg.c @@ -1076,6 +1076,16 @@ static void SVGStartElement(void *context,const xmlChar *name, } break; } + case 'M': + case 'm': + { + if (LocaleCompare((const char *) name,"mask") == 0) + { + (void) FormatLocaleFile(svg_info->file,"push mask \"%s\"\n",id); + break; + } + break; + } case 'P': case 'p': { @@ -1549,6 +1559,11 @@ static void SVGStartElement(void *context,const xmlChar *name, GetUserSpaceCoordinateValue(svg_info,1,value); break; } + if (LocaleCompare(keyword,"mask") == 0) + { + (void) FormatLocaleFile(svg_info->file,"mask \"%s\"\n",value); + break; + } if (LocaleCompare(keyword,"minor") == 0) { svg_info->element.minor= @@ -2447,6 +2462,16 @@ static void SVGEndElement(void *context,const xmlChar *name) } break; } + case 'M': + case 'm': + { + if (LocaleCompare((const char *) name,"mask") == 0) + { + (void) FormatLocaleFile(svg_info->file,"pop mask\n"); + break; + } + break; + } case 'P': case 'p': { -- 2.40.0