百科狗-知识改变命运!
--

imagecopyresampled() - gd函数(图像处理)

是丫丫呀12个月前 (11-21)阅读数 30#技术干货
文章标签图像

imagecopyresampled()

(PHP 4 >= 4.0.6, PHP 5, PHP 7)

重采样拷贝部分图像并调整大小

说明

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): bool

imagecopyresampled()将一幅图像中的一块正方形区域拷贝到另一个图像中,平滑地插入像素值,因此,尤其是,减小了图像的大小而仍然保持了极大的清晰度。

In other words,imagecopyresampled() will take a rectangular area from$src_imageof width$src_wand height$src_hat position($src_x,$src_y)and place it in a rectangular area of$dst_imageof width$dst_wand height$dst_hat position($dst_x,$dst_y).

如果源和目标的宽度和高度不同,则会进行相应的图像收缩和拉伸。坐标指的是左上角。本函数可用来在同一幅图内部拷贝(如果$dst_image和$src_image相同的话)区域,但如果区域交迭的话则结果不可预知。

参数

$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

范例

简单的例子

imagecopyresampled() - gd函数(图像处理)

这个例子会将图像调整为原有尺寸的一半。

以上例程的输出类似于:

按比例对图像重新采样

这个例子会以最大宽度高度为 200 像素显示一个图像。

以上例程的输出类似于:

注释

Note:

因为调色板图像限制(255+1 种颜色)有个问题。重采样或过滤图像通常需要多于 255 种颜色,计算新的被重采样的像素及其颜色时采用了一种近似值。对调色板图像尝试分配一个新颜色时,如果失败我们选择了计算结果最接近(理论上)的颜色。这并不总是视觉上最接近的颜色。这可能会产生怪异的结果,例如空白(或者视觉上是空白)的图像。要跳过这个问题,请使用真彩色图像作为目标图像,例如用imagecreatetruecolor()创建的。

参见

imagecopyresized() 拷贝部分图像并调整大小

FOUR RECTANGLES
         $src_image                  $dst_image
+------------+---------------------------------+  +------------+--------------------+
|      |                 |  |      |          |
|      |                 |  |     $dst_y         |
|      |                 |  |      |          |
|     $src_y                |  +-- $dst_x --+----$dst_width----+ |
|      |                 |  |      |         | |
|      |                 |  |      |  Resampled   | |
|      |                 |  |      |         | |
+-- $src_x --+------ $src_width ------+    |  |    $dst_height       | |
|      |            |    |  |      |         | |
|      |            |    |  |      |         | |
|      |            |    |  |      |         | |
|      |            |    |  |      +------------------+ |
|      |    Sample     |    |  |                 |
|      |            |    |  |                 |
|      |            |    |  |                 |
|    $src_height          |    |  |                 |
|      |            |    |  +---------------------------------+
|      |            |    |
|      |            |    |
|      +------------------------+    |
|                       |
|                       |
+----------------------------------------------+
Here is my ultimate image resizer that preserves transparency for gif's and png's and has an option to crop images to fixed dimensions (preserves image proportions by default)

Example that I use when uploading new images to the server.
This saves the original picture in the form:
original.type
and creates a new thumbnail:
100x100.type

Cheers!
I've created a PHP5 image resize class, using ImageCopyResampled, that someone might find useful, with support for JPEG, PNG, and GIF formats. It retains the original image's aspect ratio when resizing, and doesn't resize or resample if the original width and height is smaller then the desired resize.

鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com

免责声明:我们致力于保护作者版权,注重分享,当前被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!邮箱:344225443@qq.com)

图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,本着为中国教育事业出一份力,发布内容不收取任何费用也不接任何广告!)