图片生成水印图片,图片加文字水印。
在php应用是高频功能。
这里介绍采用 think\Image类进行实现此功能:
安装类库:
composer require topthink/think-image
//测试图片处理
$basepath = public_path()."uploads".DIRECTORY_SEPARATOR;
$image = Image::open($basepath ."face.png");
$water = $basepath."face_water.".$image->type();
$image->water($basepath."back.png", Image::WATER_EAST, 70)->save($water);
$waterobj = Image::open($water);
$waterobj->text("老师你好", public_path() ."uploads".DIRECTORY_SEPARATOR."shuiyin.ttf", 18,
"#bf0000", Image::WATER_EAST, [-200,0])->save(public_path() ."uploads".DIRECTORY_SEPARATOR."face_thumb.". $image->type());
这样就能实现一个图片加水印图片或者文字水印,
重复添加 水印图片,文字,可以实现 图片 文字盖章效果。
//测试图片处理
$basepath = public_path()."uploads".DIRECTORY_SEPARATOR;
$image = \think\Image::open($basepath ."face.png");
$water = $basepath."face_water.".$image->type();
$font = public_path() ."uploads".DIRECTORY_SEPARATOR."shuiyin.ttf";
$image->water($basepath."back.png", Image::WATER_EAST, 70);//->save($water);
// $waterobj = \think\mage::open($water);
$text = [
'美好的一天就要开始了',
'非常感谢大家的关注和厚爱',
'各位同学和家长社会各界朋友',
'本学期迎接新的历史挑战,战胜语言辅导',
'在这里您能学习到更多的理论知识和素质教育',
'迈向更高更远的明天舞台!',
];
foreach($text as $key=>$text){
$p = strlen($text ) * 7 /2;
$image->text( $text , $font, 16, "#bf0000", Image::WATER_NORTH, [$p,50 + $key*30]);
}
$image->save(public_path() ."uploads".DIRECTORY_SEPARATOR."face_thumb.". $image->type());
// 测试图片结束
好了,本文内容全部结束,感谢你的阅读。