(void) DrawPatternPath(image,draw_info,token,
&graphic_context[n]->fill_pattern,exception);
else
- status&=QueryColorCompliance(token,AllCompliance,
- &graphic_context[n]->fill,exception);
+ {
+ status&=QueryColorCompliance(token,AllCompliance,
+ &graphic_context[n]->fill,exception);
+ graphic_context[n]->fill.alpha=graphic_context[n]->fill_alpha;
+ }
break;
}
if (LocaleCompare("fill-opacity",keyword) == 0)
if (token == next_token)
ThrowPointExpectedException(token,exception);
graphic_context[n]->fill_alpha*=opacity;
+ graphic_context[n]->fill.alpha=graphic_context[n]->fill_alpha;
break;
}
if (LocaleCompare("fill-rule",keyword) == 0)
if (fabs(opacity) >= DrawEpsilon)
{
graphic_context[n]->fill_alpha*=opacity;
+ graphic_context[n]->fill.alpha=graphic_context[n]->fill_alpha;
graphic_context[n]->stroke_alpha*=opacity;
+ graphic_context[n]->stroke.alpha=
+ graphic_context[n]->stroke_alpha;
}
break;
}
}
if (LocaleCompare("graphic-context",token) == 0)
{
- graphic_context[n]->fill.alpha=graphic_context[n]->fill_alpha;
- graphic_context[n]->stroke.alpha=
- graphic_context[n]->stroke_alpha;
n++;
graphic_context=(DrawInfo **) ResizeQuantumMemory(
graphic_context,(size_t) (n+1),sizeof(*graphic_context));
(void) DrawPatternPath(image,draw_info,token,
&graphic_context[n]->stroke_pattern,exception);
else
- status&=QueryColorCompliance(token,AllCompliance,
- &graphic_context[n]->stroke,exception);
+ {
+ status&=QueryColorCompliance(token,AllCompliance,
+ &graphic_context[n]->stroke,exception);
+ graphic_context[n]->stroke.alpha=
+ graphic_context[n]->stroke_alpha;
+ }
break;
}
if (LocaleCompare("stroke-antialias",keyword) == 0)
if (token == next_token)
ThrowPointExpectedException(token,exception);
graphic_context[n]->stroke_alpha*=opacity;
+ graphic_context[n]->stroke.alpha=graphic_context[n]->stroke_alpha;
break;
}
if (LocaleCompare("stroke-width",keyword) == 0)
}
if (status == MagickFalse)
break;
- graphic_context[n]->fill.alpha=graphic_context[n]->fill_alpha;
- graphic_context[n]->stroke.alpha=graphic_context[n]->stroke_alpha;
if ((fabs(affine.sx-1.0) >= DrawEpsilon) ||
(fabs(affine.rx) >= DrawEpsilon) || (fabs(affine.ry) >= DrawEpsilon) ||
(fabs(affine.sy-1.0) >= DrawEpsilon) ||