//源图的路径,可以是本地文件,也可以是远程图片

$src_path = '1.jpg';

//最终保存图片的宽

$width = 160;

//最终保存图片的高

$height = 120;

//源图对象

$src_image = imagecreatefromstring(file_get_contents($src_path));

$src_width = imagesx($src_image);

$src_height = imagesy($src_image);

//生成等比例的缩略图

$tmp_image_width = 0;

$tmp_image_height = 0;

if ($src_width / $src_height >= $width / $height) {

$tmp_image_width = $width;

$tmp_image_height = round($tmp_image_width * $src_height / $src_width);

} else {

$tmp_image_height = $height;

$tmp_image_width = round($tmp_image_height * $src_width / $src_height);

}

$tmpImage = imagecreatetruecolor($tmp_image_width, $tmp_image_height);

imagecopyresampled($tmpImage, $src_image, 0, 0, 0, 0, $tmp_image_width, $tmp_image_height, $src_width, $src_height);

//添加白边

$final_image = imagecreatetruecolor($width, $height);

$color = imagecolorallocate($final_image, 255, 255, 255);

imagefill($final_image, 0, 0, $color);

$x = round(($width - $tmp_image_width) / 2);

$y = round(($height - $tmp_image_height) / 2);

imagecopy($final_image, $tmpImage, $x, $y, 0, 0, $tmp_image_width, $tmp_image_height);

//输出图片

header('Content-Type: image/jpeg');

imagejpeg($final_image);

php裁剪图片白边,php缩略图填充白边的示例代码相关推荐

  1. php生成缩略图填充白,php生成缩略图填充白边(等比缩略图方案)_PHP教程

    网站上传图片后生成缩略图应该是非常常用的功能了,通常来讲为了网站显示美观,缩略图会是同样尺寸,比如最近笔者做的一个站点,缩略图规格要求都是160×120.但是如果上传的图片比例和缩略图不一致,直接缩放 ...

  2. php裁剪图片白边,php生成缩略图填充白边(等比缩略图方案)

    网站上传图片后生成缩略图应该是非常常用的功能了,通常来讲为了网站显示美观,缩略图会是同样尺寸,比如最近笔者做的一个站点,缩略图规格要求都是160×120.但是如果上传的图片比例和缩略图不一致,直接缩放 ...

  3. php裁剪图片白边,php生成缩略图填充白边(等比缩略图方案)_PHP

    网站上传图片后生成缩略图应该是非常常用的功能了,通常来讲为了网站显示美观,缩略图会是同样尺寸,比如最近笔者做的一个站点,缩略图规格要求都是160×120.但是如果上传的图片比例和缩略图不一致,直接缩放 ...

  4. php 生成等比例缩略图,php生成缩略图填充白边(等比缩略图方案)

    //源图的路径,可以是本地文件,也可以是远程图片 $src_path = '1.jpg'; //最终保存图片的宽 $width = 160; //最终保存图片的高 $height = 120; //源 ...

  5. html如何将图片做成六边形,CSS实现图片背景填充的六边形的示例代码

    六边形的实现原理其实就是通过旋转三个重叠的矩形得到的,如下图所示: 这里为了得到一个正的六边形,两个矩形旋转的角度必须为-60deg和60deg,以及矩形高宽比必须是Math.sqrt(3) : 1 ...

  6. ssm上传文件获取路径_ssm框架实现图片上传显示并保存地址到数据库(示例代码)...

    本案例是通过springmvc+spring+mybatis框架以商品上传为例,实现的图片上传功能,并把图片的地址保存到数据库并在前台显示上传的图片. 本项目是使用maven搭建的项目,首先看下项目结 ...

  7. canva画图 图片居中裁剪_Canvas裁剪图片(截选框可拖拽)

    利用Canvas实现图片裁剪 效果图 实现思路 打开图片并将图片绘制到canvas中: 利用canvas的drawImage()函数来裁剪图片: 将canvas转化为Image即可. HTML代码: ...

  8. Android 7.0下拍照和裁剪图片

    Android 7.0下拍照和裁剪图片 最近,公司的APP集中爆发了头像上传中拍照或照片裁剪的bug,让我才意识到及时学习Android新特性是多么重要,一个过去式的APP是无法一直满足日益变化的新需 ...

  9. imgareaselect 缩略图 裁剪图片

    (客户端模拟裁剪图片) imgareaselect: http://odyniec.net/projects/imgareaselect/ php生成缩略图参考: http://www.php.net ...

最新文章

  1. Token ,Cookie、Session傻傻分不清楚?
  2. ubuntu开启客户端nfs服务_LINUX系统使用NFS文件共享
  3. mac 设计表结构_模具设计丨问题点检表、全套标准件结构分布,值得转发
  4. 日常方便使用的Python脚本实现
  5. 中国香港地区 DDoS- botnet 态势分析
  6. kerberos 主从安装
  7. 为Tueri.io构建React图像优化组件
  8. 第61课 查分程序 《小学生C++趣味编程》
  9. 查看mysql某人执行了什么语句_详解MySQL如何监控系统全部执行过的sql语句
  10. c语言趣味小程序,一个有趣的小程序
  11. 2018年python工作好找吗-2018年Python发展前景如何?Python就业有哪些方向?
  12. knowledge_based topic model - AMC
  13. Allegro16.6导出位号图
  14. 早期的文章-手机开发平台指南、教程和资料介绍
  15. 2G到5G系统的横向比较(1)多址方式与调制方式
  16. 不要随意设置随机数种子
  17. 已知两边求角度公式_已知三边求角度公式
  18. c++打印素数表(线性筛)
  19. CVPR21-无监督异常检测《CutPaste:Self-Supervised Learning for Anomaly Detection and Localization》
  20. 2022R2移动式压力容器充装考题模拟考试平台操作

热门文章

  1. 11月27日struts项目练习评审
  2. java 求集合平均数_图像二值化方法介绍(转载学习)
  3. C# 系统应用之Cookie\Session基础知识及php读取Cookie\Session
  4. LeetCode Shell 192. 统计词频
  5. 内存(Display)、显示器(Monitor)和计算机(Computer)均属于一种产品(Product),其中计算机需要显示器和内存。请用Python语言简要实现这些类及它们之间的关系。
  6. 机器人写诗项目——数据预处理
  7. 大数据WEB阶段 Servlet配置优先级 , Spring容器设置对静态资源放行
  8. Python编码错误的解决办法SyntaxError: Non-ASCII character ‘\xe5‘ in file
  9. DSP入门:中断PIE
  10. 【工业控制】PolyWorks培训教程-PCB字符机平行度和垂直度