php图像处理函数imagecopyresampled用法详解


Posted in PHP onDecember 02, 2016

本文实例讲述了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 在文件指定行插入数据的代码
May 08 PHP
php调用dll的实例操作动画与代码分享
Aug 14 PHP
实现获取http内容的php函数分享
Feb 16 PHP
PHP中is_file不能替代file_exists的理由
Mar 04 PHP
php实现把url转换迅雷thunder资源下载地址的方法
Nov 07 PHP
php编写批量生成不重复的卡号密码代码
May 14 PHP
大家都应该掌握的PHP关联数组使用技巧
Dec 25 PHP
PHP Filter过滤器全面解析
Aug 09 PHP
PHP批量修改文件名称的方法分析
Feb 27 PHP
php中str_pad()函数用法分析
Mar 28 PHP
PHP中phar包的使用教程
Jun 14 PHP
详解PHP PDO简单教程
May 28 PHP
PHP面向对象继承用法详解(优化与减少代码重复)
Dec 02 #PHP
PHP面向对象程序设计高级特性详解(接口,继承,抽象类,析构,克隆等)
Dec 02 #PHP
PHP面向对象程序设计之命名空间与自动加载类详解
Dec 02 #PHP
PHP面向对象程序设计之类与反射API详解
Dec 02 #PHP
PHP面向对象程序设计之对象生成方法详解
Dec 02 #PHP
PHP面向对象程序设计组合模式与装饰模式详解
Dec 02 #PHP
PHP与jquery实时显示网站在线人数实例详解
Dec 02 #PHP
You might like
用PHP写的基于Memcache的Queue实现代码
2011/11/27 PHP
php读取文件内容的三种可行方法示例介绍
2014/02/08 PHP
教你如何在CI框架中使用 .htaccess 隐藏url中index.php
2014/06/09 PHP
Laravel实现用户注册和登录
2015/01/23 PHP
php动态函数调用方法
2015/05/21 PHP
微信公众平台DEMO(PHP)
2016/05/04 PHP
PHP实现的登录,注册及密码修改功能分析
2016/11/25 PHP
JavaScript高级程序设计 事件学习笔记
2011/09/10 Javascript
jQuery版仿Path菜单效果
2011/12/15 Javascript
JavaScript 基础篇之运算符、语句(二)
2012/04/07 Javascript
JavaScript判断文件上传类型的方法
2014/09/02 Javascript
小结Node.js中非阻塞IO和事件循环
2014/09/18 Javascript
jQuery中:lt选择器用法实例
2014/12/29 Javascript
jquery实现炫酷的叠加层自动切换特效
2015/02/01 Javascript
浅谈JavaScript 中有关时间对象的方法
2016/08/15 Javascript
AngularJS bootstrap启动详解及实例代码
2016/09/14 Javascript
JavaScript  event对象整理及详细介绍
2016/10/10 Javascript
JS实现隔行换色的表格排序
2017/03/27 Javascript
Vue2.0 从零开始_环境搭建操作步骤
2017/06/14 Javascript
Vue.js 单页面多路由区域操作的实例详解
2017/07/17 Javascript
基于ajax和jsonp的原生封装(实例)
2017/10/16 Javascript
ES6中Set和Map数据结构,Map与其它数据结构互相转换操作实例详解
2019/02/28 Javascript
javascript中数组的常用算法深入分析
2019/03/12 Javascript
JavaScript indexOf()原理及使用方法详解
2020/07/09 Javascript
Vue-CLI 3 scp2自动部署项目至服务器的方法
2020/07/24 Javascript
详解uniapp的全局变量实现方式
2021/01/11 Javascript
python urllib爬虫模块使用解析
2019/09/05 Python
使用Pandas将inf, nan转化成特定的值
2019/12/19 Python
Python工程师必考的6个经典面试题
2020/06/28 Python
世界第一曲奇连锁店:Mrs. Fields Cookies
2017/02/04 全球购物
美国滑雪和滑雪板商店:Buckman
2018/03/03 全球购物
美国室内盆栽植物购买网站:Plants.com
2020/04/24 全球购物
春节联欢晚会主持词
2014/03/24 职场文书
2014年小学班主任工作总结
2014/11/08 职场文书
五年级学生期末评语
2014/12/26 职场文书
技术支持岗位职责
2015/02/13 职场文书