/**

* 改变图片的宽高

*

* @author flynetcn (2009-12-16)

*

* @param string $img_src 原图片的存放地址或url

* @param string $new_img_path 新图片的存放地址

* @param int $new_width 新图片的宽度

* @param int $new_height 新图片的高度

* @return bool 成功true, 失败false

*/

function resize_image($img_src, $new_img_path, $new_width, $new_height)

{

$img_info = @getimagesize($img_src);

if (!$img_info || $new_width < 1 || $new_height < 1 || empty($new_img_path)) {

return false;

}

if (strpos($img_info['mime'], 'jpeg') !== false) {

$pic_obj = imagecreatefromjpeg($img_src);

} else if (strpos($img_info['mime'], 'gif') !== false) {

$pic_obj = imagecreatefromgif($img_src);

} else if (strpos($img_info['mime'], 'png') !== false) {

$pic_obj = imagecreatefrompng($img_src);

} else {

return false;

}

$pic_width = imagesx($pic_obj);

$pic_height = imagesy($pic_obj);

if (function_exists("imagecopyresampled")) {

$new_img = imagecreatetruecolor($new_width,$new_height);

imagecopyresampled($new_img, $pic_obj, 0, 0, 0, 0, $new_width, $new_height, $pic_width, $pic_height);

} else {

$new_img = imagecreate($new_width, $new_height);

imagecopyresized($new_img, $pic_obj, 0, 0, 0, 0, $new_width, $new_height, $pic_width, $pic_height);

}

if (preg_match('~.([^.]+)$~', $new_img_path, $match)) {

$new_type = strtolower($match[1]);

switch ($new_type) {

case 'jpg':

imagejpeg($new_img, $new_img_path);

break;

case 'gif':

imagegif($new_img, $new_img_path);

break;

case 'png':

imagepng($new_img, $new_img_path);

break;

default:

imagejpeg($new_img, $new_img_path);

}

} else {

imagejpeg($new_img, $new_img_path);

}

imagedestroy($pic_obj);

imagedestroy($new_img);

return true;

}

//test

$ret = resize_image('http://static.php.net/www.php.net/images/php_snow_2008.gif', 'test.png', '300', '400');

var_dump($ret);

php图片长宽处理,用php调整图片宽高 | 学步园相关推荐

  1. 服务器里怎么更改网站图片大小,php实现在服务器端调整图片大小的方法

    本文实例讲述了php实现在服务器端调整图片大小的方法.分享给大家供大家参考.具体分析如下: 在服务器端完成图片大小的调整,会比在浏览器的处理有很多的好处. 本文介绍了PHP如何在服务器端调整图片大小. ...

  2. java 图片 大小_在JAVA中调整图片大小

    在JAVA中,当我们调整图片的大小或比例时,我们可以按照以下的步棸: 通过调用的ImageIO类的read(File)方法 创建用于输入图片BufferedImage对象. 按所需输出高度输出的Buf ...

  3. 指纹图片调对比度 c语言,手动调整图片打印深浅(亮度/对比度 Windows OS)

    文档标题:手动调整图片打印深浅(亮度/对比度 Windows OS) 文档代码:CHN-FP0548-1 最近修改日期:2020年11月19日 手动调整图片打印深浅(亮度/对比度 Windows OS ...

  4. php怎么规范图片大小,如何在PHP中调整图片大小?

    可以使用ImageMagick或GD功能调整图像大小.如果使用了GD的功能,则在对原始数码相机的图像进行采样时,图像文件的大小也会减小.我们将在下面的代码中看到如何使用GD调整图像大小.functio ...

  5. android 图片闪光动画_剖析Android动画(图片闪烁、左右摇摆、上下晃动等效果) | 学步园...

    图片闪烁,类似这样. 2011-11-22 16:18 上传 左右摇摆: 2011-11-22 17:07 上传 一.续播  (不知道取什么名字好,就是先播放动画A, 接着播放动画B) 有两种方式. ...

  6. java 背景图片自适应_java 背景图片随窗口大小变化进行自动缩放及平铺 | 学步园...

    最近一直被这个问题困扰这,上网也搜了不少这方面的知识,发现很多人都说用reapint方法(很简单的)进行图片重绘就OK了(没源码),于是乎至今也没实现 但通过自己的摸索也确实学到了不少东东滴! 在看代 ...

  7. matlab图片快速傅里叶变换,图像傅里叶变换(快速傅里叶变换FFT) | 学步园

    #include "Image_FFT.h" /* 中心化,根据傅里叶性质的平移性质 */ void FFT_Shift(double * src,int size_w,int s ...

  8. 【latex】LaTeX调整图片大小的方法;自动调整合适的大小

    在LaTeX插入图片的时候,经常需要调整图片的大小.我们可以通过如下代码来完成: \begin{figure}[htb]\centering\includegraphics[width=0.5\lin ...

  9. MarkDown内如何调整图片的尺寸及对齐方式?

    前言 想发布已经写好的MarkDown文档,需要手动调整的地方只有图片.原因是默认插入的图片太大的话,图片会占满屏幕,导致浏览不便. 个人体验:常见的横屏情况下,一张图片不宜超过2/3屏幕高度,主体内 ...

最新文章

  1. java初学者必看——J2SE小结
  2. 不要一棍子打翻所有黑盒模型,其实可以让它们发挥作用
  3. 阐述Spring security实现用户认证授权的原理----基于session实现认证的方式
  4. 表单数据自动录入_Excel总表录入、分表自动更新,只要数据透视表和一个快捷键就行...
  5. String... 参数定义中有三个点的意思
  6. mysql执行语句后回退_MySQL命令学习笔记(八)
  7. 设计导航网站|图片各种素材管够,资源丰富设计师懂得
  8. java中插入排序_Java中的插入排序
  9. 统计素数并求和python_Python练习题4.2统计素数并求和
  10. 求取scores最近邻的方法之二开始新的实践Chorus
  11. 如何快速建搭建企业官方网站
  12. step5 lasso 回归 实战 本文没有考虑y 是cox和binominal
  13. DRF之View、APIView以及GenericAPIView
  14. web前端面试题必备
  15. mysql如果有值返回true_关于mysql的tinyint字段调用返回true/false的问题
  16. 深度学习之 人脸识别(3) 摄像头识别人脸 实例
  17. 使浏览器对VML支持
  18. ubuntu 进入 emergency mode 解决
  19. android qq语音按钮,Android 仿QQ/微信语音功能。
  20. 艺术品区块链溯源防伪平台(连载三)数字资产如何上链

热门文章

  1. 欢乐的跳(洛谷P1152题目链接,Java语言描述)
  2. 【程序设计】浅析编程语言的区间为何常是左闭右开
  3. Django框架 之 Ajax
  4. Shell命令之ps获取指定进程的进程号
  5. 使用 StatsD + InfluxDB + Grafana 搭建 Node.js 监控系统 (二)
  6. Vue学习心得记录之模板语法
  7. LeakCanary,检测安卓,java内存泄漏
  8. javascript获取表单值的7种方式
  9. 关于HTTP协议相关的文章
  10. 逻辑人渴望控制那些让他们感兴趣的东西