13ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#!/usr/bin/perl 23ed852eea50f9d4cd633efb8c2b054b8e33c253cristy 33ed852eea50f9d4cd633efb8c2b054b8e33c253cristyuse Image::Magick; 43ed852eea50f9d4cd633efb8c2b054b8e33c253cristy 53ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#$font = '-adobe-helvetica-medium-r-normal--25-180-100-100-p-130-iso8729-1'; 63ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#$font = 'Times'; 73ed852eea50f9d4cd633efb8c2b054b8e33c253cristy$font = 'Generic.ttf'; 83ed852eea50f9d4cd633efb8c2b054b8e33c253cristy 93ed852eea50f9d4cd633efb8c2b054b8e33c253cristy$image = Image::Magick->new(); 103ed852eea50f9d4cd633efb8c2b054b8e33c253cristy$x = 100; 113ed852eea50f9d4cd633efb8c2b054b8e33c253cristy$y = 100; 123ed852eea50f9d4cd633efb8c2b054b8e33c253cristyfor ($angle=0; $angle < 360; $angle+=30) 133ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{ 143ed852eea50f9d4cd633efb8c2b054b8e33c253cristy my ($label); 153ed852eea50f9d4cd633efb8c2b054b8e33c253cristy 163ed852eea50f9d4cd633efb8c2b054b8e33c253cristy print "angle $angle\n"; 173ed852eea50f9d4cd633efb8c2b054b8e33c253cristy $label=Image::Magick->new(size=>"600x600",pointsize=>24,font=>$font); 183ed852eea50f9d4cd633efb8c2b054b8e33c253cristy $label->Read("xc:white"); 193ed852eea50f9d4cd633efb8c2b054b8e33c253cristy $label->Draw(primitive=>'line',points=>"300,100 300,500",stroke=>'#600'); 203ed852eea50f9d4cd633efb8c2b054b8e33c253cristy $label->Draw(primitive=>'line',points=>"100,300 500,300",stroke=>'#600'); 213ed852eea50f9d4cd633efb8c2b054b8e33c253cristy $label->Draw(primitive=>'rectangle',points=>"100,100 500,500",fill=>'none', 223ed852eea50f9d4cd633efb8c2b054b8e33c253cristy stroke=>'#600'); 233ed852eea50f9d4cd633efb8c2b054b8e33c253cristy $label->Annotate(text=>"North West",gravity=>"NorthWest",x=>$x,y=>$y, 243ed852eea50f9d4cd633efb8c2b054b8e33c253cristy undercolor=>'yellow',rotate=>$angle); 253ed852eea50f9d4cd633efb8c2b054b8e33c253cristy $label->Annotate(text=>"North",gravity=>"North",y=>$y,rotate=>$angle); 263ed852eea50f9d4cd633efb8c2b054b8e33c253cristy $label->Annotate(text=>"North East",gravity=>"NorthEast",x=>$x,y=>$y, 273ed852eea50f9d4cd633efb8c2b054b8e33c253cristy rotate=>$angle); 283ed852eea50f9d4cd633efb8c2b054b8e33c253cristy $label->Annotate(text=>"West",gravity=>"West",x=>$x,rotate=>$angle); 293ed852eea50f9d4cd633efb8c2b054b8e33c253cristy $label->Annotate(text=>"Center",gravity=>"Center",rotate=>$angle); 303ed852eea50f9d4cd633efb8c2b054b8e33c253cristy $label->Annotate(text=>"East",gravity=>"East",x=>$x,rotate=>$angle); 313ed852eea50f9d4cd633efb8c2b054b8e33c253cristy $label->Annotate(text=>"South West",gravity=>"SouthWest",x=>$x,y=>$y, 323ed852eea50f9d4cd633efb8c2b054b8e33c253cristy rotate=>$angle); 333ed852eea50f9d4cd633efb8c2b054b8e33c253cristy $label->Annotate(text=>"South",gravity=>"South",y=>$y,rotate=>$angle); 343ed852eea50f9d4cd633efb8c2b054b8e33c253cristy $label->Annotate(text=>"South East",gravity=>"SouthEast",x=>$x,y=>$y, 353ed852eea50f9d4cd633efb8c2b054b8e33c253cristy rotate=>$angle); 363ed852eea50f9d4cd633efb8c2b054b8e33c253cristy push(@$image,$label); 373ed852eea50f9d4cd633efb8c2b054b8e33c253cristy} 383ed852eea50f9d4cd633efb8c2b054b8e33c253cristy$image->Set(delay=>20); 393ed852eea50f9d4cd633efb8c2b054b8e33c253cristy$image->Write("annotate.miff"); 403ed852eea50f9d4cd633efb8c2b054b8e33c253cristy$image->Animate(); 41