本文实例讲述了php图像处理函数imagecopyresampled用法。分享给大家供大家参考,具体如下:
语法
复制代码 代码如下:
bool imagecopyresampled ( resource $dst_image , resource $src_image , int $dst_x , int $dst_y , int $src_x , int $src_y , int $dst_w , int $dst_h , int $src_w , int $src_h )
参数
| dst_image | 目标图象连接资源。 |
| src_image | 源图象连接资源。 |
| dst_x | 目标 x 坐标点。 |
| dst_y | 目标 y 坐标点。 |
| src_x | 源的 x 坐标点。 |
| src_y | 源的 y 坐标点。 |
| dst_w | 目标宽度。 |
| dst_h | 目标高度。 |
| src_w | 源图象的宽度。 |
| src_h | 源图象的高度。 |
成功时返回 true, 或者在失败时返回 false。
案例
案例(图像裁减):
<?php
$targ_w = $targ_h = 150; // 设置目标宽度与高度
$jpeg_quality = 90; // 图片质量90,满分为100
$src = 'demo_files/pool.jpg'; // 被处理的图片
$img_r = imagecreatefromjpeg($src); // 获取原图
$dst_r = imagecreatetruecolor( $targ_w, $targ_h ); // 获取新图
imagecopyresampled($dst_r,$img_r,0,0,$_post['x'],$_post['y'],
$targ_w,$targ_h,$_post['w'],$_post['h']); // 目标图 源图 目标x坐标点 目标y坐标点 源的x坐标点 源的y坐标点 目标宽度 目标高度 源图宽度 源图高度
header('content-type: image/jpeg');
imagejpeg($dst_r,null,$jpeg_quality); // 输出图象到浏览器或文件
?>
案例二(重新取样):
<?php
// 源文件
$filename = '1.jpg';
// 设置最大宽高
$width = 400;
$height = 400;
// content type
header('content-type: image/jpeg');
// 获取新尺寸
list($width_orig, $height_orig) = getimagesize($filename);
$ratio_orig = $width_orig/$height_orig;
if ($width/$height > $ratio_orig) {
$width = $height*$ratio_orig;
} else {
$height = $width/$ratio_orig;
}
// 重新取样
$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
// 输出
imagejpeg($image_p, null, 100);
?>
附上上传图片的三种思路
1.选择图片,提交表单,服务器统一处理上传,保存路径
2.选择图片,上传,获取路径,提交表单,保存路径
3.选择图片,上传到服务器,通过某种途径获取到服务器的图片,保存到本地
更多关于php相关内容感兴趣的读者可查看本站专题:《php图形与图片操作技巧汇总》、《php基本语法入门教程》、《php运算与运算符用法总结》、《php面向对象程序设计入门教程》、《php网络编程技巧总结》、《php数组(array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家php程序设计有所帮助。
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:)!