php初学者教程之图片缩放和裁剪
php程序中改变图片大小的函数大多数人都想到用imagecopyresized(),不过经过测试比较发现,使用imagecopyresampled()改变的图片质量更高。
1、imagecopyresampled的使用
1、目标函数资源
2、源图像资源<要采样的图片资源>
3、x(0,0指图左上角)
4、y(x,y确定一个坐标,坐标确定了把采样的部分放到目标图像资源的位置)
5、源x(0,0指图右上角)
6、源y(源x与源y确定一个坐标,你要采用的原图像资源的某个部分的起始位置)
7、w
8、h(weight与height确定了放到目标图像资源上面的尺寸)
9、源w
10、源h(源w与源h确定了采样原图像资源的某个部分)
2、$height=$width/($imgWidth/$imgHeight);
使得图片整体不会被裁剪,缩放代码只需控制width即可
<?php header("Content-type:image/jpeg"); $width=300; $img=imagecreatefromjpeg("1/php1.jpg"); $imgWidth=imagesx($img); $imgHeight=imagesy($img); $height=$width/($imgWidth/$imgHeight); $img1=imagecreatetruecolor(500,500); imagecopyresampled($img1,$img,100,100,100,100,$width,$height,$imgWidth,$imgHeight); imagejpeg($img1); imagedestroy($img1); imagedestroy($img);
<?php header("Content-type:image/jpeg"); $width=200; $img=imagecreatefromjpeg("1/php1.jpg"); $imgWidth=imagesx($img); $imgHeight=imagesy($img); $height=$width/($imgWidth/$imgHeight); $img1=imagecreatetruecolor(500,500); imagecopyresampled($img1,$img,100,100,100,100,$width,$height,$imgWidth,$imgHeight); imagejpeg($img1); imagedestroy($img1); imagedestroy($img);
3、控制x、y与源x、源y可以进行裁剪
<?php header("Content-type:image/jpeg"); $width=500; $img=imagecreatefromjpeg("1/php1.jpg"); $imgWidth=imagesx($img); $imgHeight=imagesy($img); $height=$width/($imgWidth/$imgHeight); $img1=imagecreatetruecolor(500,500); imagecopyresampled($img1,$img,0,0,300,300,$width,$height,$imgWidth,$imgHeight); imagejpeg($img1); imagedestroy($img1); imagedestroy($img);
<?php header("Content-type:image/jpeg"); $width=500; $img=imagecreatefromjpeg("1/php1.jpg"); $imgWidth=imagesx($img); $imgHeight=imagesy($img); $height=$width/($imgWidth/$imgHeight); $img1=imagecreatetruecolor(500,500); imagecopyresampled($img1,$img,330,330,0,0,$width,$height,$imgWidth,$imgHeight); imagejpeg($img1); imagedestroy($img1); imagedestroy($img);
总结
到此这篇关于php图片缩放和裁剪的文章就介绍到这了,更多相关php图片缩放和裁剪内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://blog.csdn.net/Reme_mber/article/details/120601881
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。