imagecopy() 函数用于拷贝图像或图像的一部分。

  imagecopyresized() 函数用于拷贝部分图像并调整大小。

  imagecopy()

  imagecopy() 函数用于拷贝图像或图像的一部分,成功返回 TRUE ,否则返回 FALSE 。

  语法:

  bool imagecopy( resource dst_im, resource src_im, int dst_x, int dst_y, int src_x, int src_y,

  int src_w, int src_h )

  参数说明:参数说明

  dst_im目标图像

  src_im被拷贝的源图像

  dst_x目标图像开始 x 坐标

  dst_y目标图像开始 y 坐标,x,y同为 0 则从左上角开始

  src_x拷贝图像开始 x 坐标

  src_y拷贝图像开始 y 坐标,x,y同为 0 则从左上角开始拷贝

  src_w(从 src_x 开始)拷贝的宽度

  src_h(从 src_y 开始)拷贝的高度

  例子:

  <?php

  header("Content-type: image/jpeg");

  //创建目标图像

  $dst_im = imagecreatetruecolor(150, 150);

  //源图像

  $src_im = @imagecreatefromjpeg("images/flower_1.jpg");

  //拷贝源图像左上角起始 150px 150px

  imagecopy( $dst_im, $src_im, 0, 0, 0, 0, 150, 150 );

  //输出拷贝后图像

  imagejpeg($dst_im);

  imagedestroy($dst_im);

  imagedestroy($src_im);

  ?>

  imagecopyresized()

  imagecopyresized() 函数用于拷贝图像或图像的一部分并调整大小,成功返回 TRUE ,否则返回 FALSE 。

  语法:

  bool imagecopyresized( resource dst_im, resource src_im, int dst_x, int dst_y, int src_x, int src_y,

  int dst_w, int dst_h, int src_w, int src_h )

  本函数参数可参看 imagecopy() 函数,只是本函数增加了两个参数(注意顺序):

  dst_w:目标图像的宽度。

  dst_h:目标图像的高度。

  imagecopyresized() 的典型应用就是生成图片的缩略图:

  <?php

  header("Content-type: image/jpeg");

  //原图文件

  $file = "images/flower_1.jpg";

  // 缩略图比例

  $percent = 0.5;

  // 缩略图尺寸

  list($width, $height) = getimagesize($file);

  $newwidth = $width * $percent;

  $newheight = $height * $percent;

  // 加载图像

  $src_im = @imagecreatefromjpeg($file);

  $dst_im = imagecreatetruecolor($newwidth, $newheight);

  // 调整大小

  imagecopyresized($dst_im, $src_im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);

  //输出缩小后的图像

  imagejpeg($dst_im);

  imagedestroy($dst_im);

  imagedestroy($src_im);

  ?>

php gd的更多相关文章

  1. PHP之GD函数的使用

    本文讲解常用GD函数的应用 1.一个简单的图像 我们先看一个例子: <?php $w = 200; $h = 200; $img = imagecreatetruecolor($w,$h); $ ...

  2. PHP的GD库

    GD库 PHP通过GD库,可以对JPG.PNG.GIF.SWF等图片进行处理.GD库常用在图片加水印,验证码生成等方面. 绘制线条 要对图形进行操作,首先要新建一个画布,通过imagecreatetr ...

  3. gd库

    1.开启GD库扩展 去掉注释: extension=php_gd2.dll extension_dir='ext目录所在位置' 2.检测GD库是否开启 phpinfo(); //检测扩展是够开启 ex ...

  4. 已安装php 编译安装 gd库拓展模块

    参考资料:http://wenku.baidu.com/link?url=EgXFShYxeJOZSYNQ_7RCBC-6X8OcRRCqVm4qCv49uBk57d6vLBoUpfYdQ-KqJRs ...

  5. Mac php使用gd库出错 Call to undefined function imagettftext()

    第一次在Mac下使用ThinkPHP,用到验证码功能时报如题的错误: Call to undefined function Think\imagettftext() 然后检查自己的GD库,发现安装上了 ...

  6. php中用GD绘制折线图

    php中用GD绘制折线图,代码如下: Class Chart{ private $image; // 定义图像 private $title; // 定义标题 private $ydata; // 定 ...

  7. php基础之gd图像生成、缩放、logo水印和简单验证码实现

    gd库是php最常用的图片处理库之一(另外一个是imagemagick),可以生成图片.验证码.水印.缩略图等等.要使用gd库首先需要开启gd库扩展,windows系统下需要在php.ini中将ext ...

  8. GD库处理图像

    在PHP5中,动态图象的处理要比以前容易得多.PHP5在php.ini文件中包含了GD扩展包,只需去掉GD扩展包的相应注释就可以正常使用了.PHP5包含的GD库正是升级的GD2库,其中包含支持真彩图像 ...

  9. php bmp中创建图像bmp2gd,让GD支持32位BMP

    php GD库可方便的从URL新建一图像, GD中有imagecreatefromjpeg(),imagecreatefromPNG()....等之类的FUNCTION 可有时从URL中读取的切BMP ...

  10. PHP中用GD绘制饼图

    PHP中用GD绘制饼图,绘制的类见代码: Class Chart{ private $image; // 定义图像 private $title; // 定义标题 private $ydata; // ...

随机推荐

  1. 【PostgreSQL-9.6.3】修改监听的IP和端口

    在数据目录下编辑postgresql.conf文件,我的数据目录是/usr/local/pgsql/data vi postgresql.conf 找到如下内容: ... #listen_addres ...

  2. 【sqli-labs】 less39 GET -Stacked Query Injection -Intiger based (GET型堆叠查询整型注入)

    http://192.168.136.128/sqli-labs-master/Less-39/?id=1;insert into users(id,username,password) values ...

  3. css单双行样式

    #random_box li:nth-child(odd) {//双行 background: #fff5c4; } #random_box li:nth-child(even) {//单行 back ...

  4. 浅谈 Unserscore.js 中 _.throttle 和 _.debounce 的差异

    来源:http://blog.coding.net/blog/the-difference-between-throttle-and-debounce-in-underscorejs Unsersco ...

  5. appium分层自动化的封装

    1.创建一个case包,start_app的python文件 #coding=utf-8from appium import webdriverfrom util.read_init import R ...

  6. 文件操作(day15)

    调用函数可以使用被调用函数动态分配的 存储区 calloc函数也可以动态分配一组连续的 存储区 这个函数可以把所有动态分配的存储区 内容设置成0 为了使用这个函数也需要包含stdlib.h头文件 这个 ...

  7. 配置zabbix及安装agent

    一.配置zabbix http://ip/zabbix/setup.php Next step Next step 输入数据库密码后,Next step Next step 默认用户名是Admin 密 ...

  8. win10、win7 使用centos配置网络,可以让Xshell进行连接,虚拟机进行上网;

    系统:window 10 虚拟机VMware® Workstation 15 Pro Linux版本:CentOS-6.3 前提:关闭防火墙 如果是win7 系统可以不用第八步,如果不行可以试一下第八 ...

  9. Golang - 面对"对象"

    目录 Golang - 面对"对象" 1. 简介 2. 匿名字段 3. 方法 4. 包和封装 5. 接口 4. 包和封装 5. 接口 Golang - 面对"对象&quo ...

  10. Git 基础教程 之 --no-ff模式合并

    ①  创建并切换dev分支 ②  修改readme.txt,并add,commit ③  切回master ④  合并 git merge --no-ff -m “merge with no-ff”d ...