1#!/usr/bin/perl
2
3use Image::Magick;
4
5#$font = '-adobe-helvetica-medium-r-normal--25-180-100-100-p-130-iso8729-1';
6#$font = 'Times';
7$font = 'Generic.ttf';
8
9$image = Image::Magick->new();
10$smile = Image::Magick->new();
11$smile->Read('smile.gif');
12$smile->Set(background=>'none');
13$x = 100;
14$y = 100;
15for ($angle=0; $angle < 360; $angle+=30)
16{
17  my ($thumbnail);
18
19  print "angle $angle\n";
20  $thumbnail=Image::Magick->new(size=>"600x600",pointsize=>24,font=>$font,
21    fill=>'black');
22  $thumbnail->Read("xc:white");
23  $thumbnail->Draw(primitive=>'line',points=>"300,100 300,500",stroke=>'#600');
24  $thumbnail->Draw(primitive=>'line',points=>"100,300 500,300",stroke=>'#600');
25  $thumbnail->Draw(primitive=>'rectangle',points=>"100,100 500,500",
26    fill=>'none',stroke=>'#600');
27  $thumbnail->Composite(image=>$smile,gravity=>"NorthWest",x=>$x,y=>$y,
28    rotate=>$angle);
29  $thumbnail->Composite(image=>$smile,gravity=>"North",y=>$y,rotate=>$angle);
30  $thumbnail->Composite(image=>$smile,gravity=>"NorthEast",x=>$x,y=>$y,
31    rotate=>$angle);
32  $thumbnail->Composite(image=>$smile,gravity=>"West",x=>$x,rotate=>$angle);
33  $thumbnail->Composite(image=>$smile,gravity=>"Center",rotate=>$angle);
34  $thumbnail->Composite(image=>$smile,gravity=>"East",x=>$x,rotate=>$angle);
35  $thumbnail->Composite(image=>$smile,gravity=>"SouthWest",x=>$x,y=>$y,
36    rotate=>$angle);
37  $thumbnail->Composite(image=>$smile,gravity=>"South",y=>$y,rotate=>$angle);
38  $thumbnail->Composite(image=>$smile,gravity=>"SouthEast",x=>$x,y=>$y,
39    rotate=>$angle);
40  push(@$image,$thumbnail);
41}
42$image->Set(delay=>20);
43$image->Write("composite.miff");
44$image->Animate();
45