php函数imagick实现平铺整张图片的水印效果

发布时间:2019-10-01编辑:脚本学堂
php中imagick函数实现平铺整张图片水印的效果,一个简单的php imagick图片处理的例子,需要的朋友参考下。

php函数imagick 平铺整张图片的水印效果

imagemagic官方去除图片背景的命令行模式:
convert -size 140x80 xc:none -fill grey  -gravity NorthWest -draw "text 10,10 'Copyright'"  -gravity SouthEast -draw "text 5,15 'Copyright'"  miff:- | composite -tile - logo.jpg  wmark_text_tiled.jpg

imagick代码:
 

复制代码 代码示例:

<?php
$image = new Imagick('logo.jpg');

$im = new Imagick();
$im->newImage( 140, 80, new ImagickPixel( "none" ) );
$draw = new ImagickDraw();

$draw->setFillColor(new ImagickPixel( "grey" ));
$draw->setGravity(imagick::GRAVITY_NORTHWEST);
$draw->annotation(10,10 ,'Copyright');
$draw->setGravity(imagick::GRAVITY_SOUTHEAST);
$draw->annotation(5,15 ,'Copyright');

$im->drawImage( $draw);
$image = $image->textureImage($im);
$image->compositeImage($image,imagick::COMPOSITE_COPY,0,0);
header( "Content-Type: image/{$image->getImageFormat()}" );

$image->writeImage('wmark_text_tiled.jpg');
$image->clear();
$image->destroy();
?>

源图片:
php函数imagick实现平铺整张图片的水印效果1

效果图:
php函数imagick实现平铺整张图片的水印效果2