php如何使用imagecopyresampled(图像处理函数)?下面本篇文章给大家详解一下php图像处理函数imagecopyresampled用法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

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。

案例

1、图像裁减

<?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); // 输出图象到浏览器或文件?>

2、重新取样

<?php// 源文件$filename = '1.jpg';// 设置最大宽高$width = 400;$height = 400;// Content typeheader('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中文网!!

更多相关文章

  1. 无法指定目标表进行更新,在mysql中删除查询
  2. 使用Javascript / jQuery的/ CSS。如何在目标div之外维护拖动事
  3. Code First for Mysql 错误:未为提供程序“MySql.Data.MySqlClien
  4. java漏洞成黑客目标微软呼吁用户更新软件
  5. 744.寻找比目标字母大的最小字母(Find Smallest Letter Greater
  6. mockito - java.lang.VerifyError:分支目标处的堆栈映射帧不一

随机推荐

  1. 再放100分,问:你是如何备份大于5M的mysql
  2. Visual C ++ 2010连接到MySQL
  3. MySQL -如何在最小/最大日期差异超过3年
  4. Yahoo,Msn,Skype,QQ,阿里旺旺在线聊天链
  5. 如果条件按顺序,Mysql不能使用mysql
  6. 利用TPC-H为MYSQL生成数据
  7. 如何最好地处理重复日历事件的异常
  8. mysql中逗号分隔字段的更好替代方案
  9. Mysql--可用的 MySQL 产品和专业服务
  10. mysql5.6.23安装 步骤