/*
@description	Clears all resources associated with the DrawingWand.
*/
value nMagick_draw_clear( value draw )
{
	DrawingWand *drw;

	val_check_kind( draw, k_draw );

	drw = DRAW( draw );

	ClearDrawingWand( drw );
}
// build a B&W circle GIF in memory and return a pointer to it.
static void* ngx_http_circle_gif_template(int req_radius, size_t* image_length_ptr, 
	MagickWand *wand, PixelWand *bg_wand, PixelWand *fg_wand, DrawingWand *dwand)
{
  float radius = req_radius - 0.5;

  ClearDrawingWand(dwand);
  PixelSetColor(bg_wand, "#000000");
  PixelSetColor(fg_wand, "#ffffff");
  MagickNewImage(wand, req_radius*2, req_radius*2, bg_wand);
  DrawSetFillColor(dwand, fg_wand);
  DrawCircle(dwand, radius, radius, 0, radius);
  MagickDrawImage(wand, dwand);
  MagickSetImageFormat(wand, "gif");

  unsigned char *image = MagickGetImageBlob(wand, image_length_ptr);

  MagickRemoveImage(wand);
  return image;
}
Exemple #3
0
static bool HHVM_METHOD(ImagickDraw, clear) {
  auto wand = getDrawingWandResource(Object{this_});
  ClearDrawingWand(wand->getWand());
  return true;
}