2008年4月14日星期一

MagickWand example:操作GIF图片的例子

压缩图片:


// convert flower.jpg -quality 80% flower_quality.jpg

$resource = NewMagickWand();
MagickReadImage( $resource, ’small_flower.jpg’ );

MagickSetFormat($resource, ‘JPG’);
MagickSetImageCompression($resource, MW_JPEGCompression);
MagickSetImageCompressionQuality($resource, 80.0);

header( ‘Content-Type: image/gif’ );
MagickEchoImageBlob( $resource );

?>
在图片上写文字:


// convert flower.jpg -font courier -fill white -pointsize 20 -annotate +50+50 Flower flower_annotate1.jpg

$resource = NewMagickWand();
$dwand = NewDrawingWand();
$pwand = NewPixelWand();

PixelSetColor($pwand, “white”);
DrawSetFont($dwand, “/usr/share/fonts/default/TrueType/cour.ttf”);//指定字体
DrawSetFontSize($dwand, 20);
DrawSetFillColor($dwand, $pwand);

DrawSetGravity($dwand, MW_SouthGravity);

MagickReadImage( $resource, ’small_flower.jpg’ );

if( MagickAnnotateImage( $resource, $dwand, 0, 0, 0, “Flower” ) )
{
header( ‘Content-Type: image/gif’ );
MagickEchoImageBlob( $resource );
}
else
{
echo MagickGetExceptionString($resource);
}

?>

Crop an AREA:



// convert flower.jpg -crop 128×128+50+50 flower_crop.jpg

$resource = NewMagickWand();

MagickReadImage( $resource, ’small_flower.jpg’ );

if( MagickCropImage( $resource, 128, 128, 50, 50 ) )
{
header( ‘Content-Type: image/gif’ );
MagickEchoImageBlob( $resource );
}
else
{
echo MagickGetExceptionString($resource);
}

?>

旋转图片:


// convert flower.jpg -rotate 45 flower_rotate45.jpg

$resource = NewMagickWand();
MagickReadImage( $resource, ’small_flower.jpg’ );

MagickRotateImage( $resource, null, 45 );

header( ‘Content-Type: image/gif’ );
MagickEchoImageBlob( $resource );

?>

调整大小:


// convert flower_original.jpg -resize 640×480 flower.jpg

$resource = NewMagickWand();
MagickReadImage( $resource, ’small_flower.jpg’ );

MagickResizeImage( $resource, 100, 100, MW_QuadraticFilter, 1.0 );

header( ‘Content-Type: image/gif’ );
MagickEchoImageBlob( $resource );

?>

Apply Resharp Filter:



// convert flower.jpg -unsharp 1.5×1.0+1.5+0.02 flower_unsharp.jpg

$resource = NewMagickWand();
MagickReadImage( $resource, ’small_flower.jpg’ );

MagickUnsharpMaskImage( $resource, 1.5, 1.0, 1.5, 0.02 );

header( ‘Content-Type: image/gif’ );
MagickEchoImageBlob( $resource );

?>

没有评论: