PHP – 使用imagecopyresampled()裁剪图像?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了PHP – 使用imagecopyresampled()裁剪图像?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1288字,纯文字阅读大概需要2分钟。
内容图文
![PHP – 使用imagecopyresampled()裁剪图像?](/upload/InfoBanner/zyjiaocheng/698/2999d8a8b8ae4211af8139afd7b47bdf.jpg)
我想使用imagecreatetruecolor裁剪图像,它总是裁剪它留下黑色空间,或者缩放太大.我希望图像精确到191px宽和90px高,所以我还需要调整图像大小以及裁剪,因为必须保持比例.那么,有一些项目的样本:
调整大小脚本(简化)如下所示:
$src_img=imagecreatefromjpeg($photoTemp);
list($width,$height)=getimagesize($photoTemp);
$dst_img=imagecreatetruecolor(191, 90);
imagecopyresampled($dst_img, $src_img, 0, 0, $newImage['crop']['x'], $newImage['crop']['y'], $newImage['crop']['width'], $newImage['crop']['height'], $width, $height);
$newImage [‘crop’]数组包括:
['x'] => $_POST['inp-x']
['y'] => $_POST['inp-x']
['width'] => $_POST['inp-width']
['height'] => $_POST['inp-height']
但我得到的是:
有人看到,我做错了什么?
谢谢,迈克.
解决方法:
你也可以这样做,我自己也做了,而且它有效
(X1,Y1)=>作物开始的地方
(X2,Y2)=>作物结束的地方
$filename = $_GET['imageurl'];
$percent = 0.5;
list($width, $height) = getimagesize($filename);
$new_width = $_GET['x2'] - $_GET['x1'];
$new_height = $_GET['y2'] - $_GET['y1'];
$image_p = imagecreatetruecolor($new_width, $new_height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0 , $_GET['x1'] , $_GET['y1'] , $new_width, $new_height, $new_width, $new_height);
// Outputs the image
header('Content-Type: image/jpeg');
imagejpeg($image_p, null, 100);
内容总结
以上是互联网集市为您收集整理的PHP – 使用imagecopyresampled()裁剪图像?全部内容,希望文章能够帮你解决PHP – 使用imagecopyresampled()裁剪图像?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。