PHP实现图片裁剪、添加水印效果代码

3、PHP对图像的裁剪

裁剪之前

/
图片裁剪
@param string $filename 图片的url
@param int $width 图片裁剪宽度
@param int $height 图片裁剪高度
@param int $x 裁剪图片左边开始的位置
@param int $y 裁剪图片顶边开始的位置
/
function cut($filename,$x,$y,$width,$height)
{
/获取图像资源,需要裁剪的图片/
$image = imagecreatefrompng($filename);

/*以新的大小创建画布,保存裁剪后的图片*/
$image_p = imagecreatetruecolor($width,$height);

/*使用imagecopyresampled缩放*/
imagecopyresampled($image_p,$image,$height,$height);

/*保存裁剪后的图片和命名*/
imagepng($image_p,'test1.png');

/*释放资源*/
imagedestroy($image_p);
imagedestroy($image);

}
/调用函数/
cut('1.png',20,80,80);
?>

裁剪之后

效果

4、PHP为图像添加水印

没有水印

/
给背景图片添加水印,背景图片格式png,水印格式gif
@param string $filename 图片的url
@param string $water 水印图片
/
function watermark($filename,$water)
{
/
获取原图的大小*/
list($b_w,$b_h) = getimagesize($filename);

/*获取水印图片的大小*/
list($w_w,$w_h) = getimagesize($water);

/*在背景图片中放水印图片的随机起始位置*/
$posX =rand(0,($b_w - $w_w));
$posY =rand(0,($b_h - $w_h));

/*获取图像资源,需要裁剪的图片*/
$back = imagecreatefrompng($filename);
$water = imagecreatefromgif($water);

/*使用Inagecopy函数复制水印图片到指定位置*/
imagecopy($back,$water,$posX,$posY,$w_w,$w_h);

/*保存带水印的图片和命名*/
imagepng($back,'test2.png');

/*释放资源*/
imagedestroy($back);
imagedestroy($water);

}
/调用函数/
watermark('1.png','test.gif');
?>

加上水印

效果

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


如何选择合适的 C++ Web 开发框架?
利用 C++ 框架构建高并发 Web 应用的策略
用 C++ 框架开发跨平台图形应用程序
golang框架中安全编码实践的最佳指南是什么?
golang框架与其他语言框架在设计理念上的区别有哪些?
C++ 图形框架与其他语言框架的比较
C++ 框架与其他 Web 开发框架的对比分析
使用 C++ 框架构建大型项目最佳实践
C++ 框架如何提高大型项目开发效率
C++ 框架中依赖注入的持续集成与部署工具
如何与社区协作和贡献到自定义 Golang 框架?
C++ 框架在大型项目中如何实现模块化开发
使用 C++ 框架开发跨平台 Web 应用
C++ 框架在大型项目中的优缺点
golang框架在性能上的优势体现在哪些方面?
C++ 框架在嵌入式系统内存优化中的优势
golang框架在人工智能与机器学习中的作用
如何扩展 Golang 框架以支持特定功能?
如何利用 Go Modules 和依赖项管理来自定义 Golang 框架?
Golang 框架中的性能优化技巧