阅读模式:

​php图片缩放

查看:431  回复:0  类型:  来源:php自学网  标签 php

        php缩放图片,压缩图片处理。使用imagecopyresampled()函数重采样拷贝部分图像并调整大小,将一幅图像中的一块正方形区域拷贝到另一个图像中,平滑地插入像素值,因此,尤其是,减小了图像的大小而仍然保持了极大的清晰度。

相关函数:

创建图像:

imagecreatefromgif():创建一块画布,并从 GIF 文件或 URL 地址载入一副图像

imagecreatefromjpeg():创建一块画布,并从 JPEG 文件或 URL 地址载入一副图像

imagecreatefrompng():创建一块画布,并从 PNG 文件或 URL 地址载入一副图像

imagecreatefromwbmp():创建一块画布,并从 WBMP 文件或 URL 地址载入一副图像

imagecreatefromstring():创建一块画布,并从字符串中的图像流新建一副图像

输出图像:

imagegif():以 GIF 格式将图像输出到浏览器或文件

imagejpeg():以 JPEG 格式将图像输出到浏览器或文件

imagepng():以 PNG 格式将图像输出到浏览器或文件

imagewbmp():以 WBMP 格式将图像输出到浏览器或文件

代码:

<?php
// 这个文件

$filename = empty($_GET['name']) ? null : $_GET['name'];
if (empty($filename)) {
	exit('图片地址不能为空!');
}

$img_info = getimagesize($filename);

//缩放比例
$percent = empty($_GET['percent']) ? 1 : $_GET['percent'];

// 获取新的尺寸
$width = $img_info[0];
$height = $img_info[1];
$new_width = $width * $percent;
$new_height = $height * $percent;

// 内容类型
if ($img_info['mime'] == 'image/jpeg') {
	
	header('Content-Type: image/jpeg');
	
	// 重新取样
	$image_p = imagecreatetruecolor($new_width, $new_height);
	$image = imagecreatefromjpeg($filename);
	imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);

	// 输出
	imagejpeg($image_p, null,100);
	
}

if ($img_info['mime'] == 'image/png') {
	
	header('Content-Type: image/png');
	
	// 重新取样
	$image_p = imagecreatetruecolor($new_width, $new_height);
	$image = imagecreatefrompng($filename);
	imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);

	// 输出
	imagepng($image_p, null,100);
	
}

if ($img_info['mime'] == 'image/gif') {
	
	header('Content-Type: image/gif');
	
	// 重新取样
	$image_p = imagecreatetruecolor($new_width, $new_height);
	$image = imagecreatefromgif($filename);
	imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);

	// 输出
	imagegif($image_p, null,100);
	
}

?>

浏览器访问并传图片地址和压缩比例。

分享到:
1 1

*有问题之处烦请在评论中指出非常感谢!
不是我想要的内容,继续搜索:

扫描二维码手机查看

发布评论:


登录:
  表情:
评论话题
推荐阅读:
mysql数据库性能的基本优化   阅读:4196centos 7 添加 redis 3.2.9 开机启动脚本   阅读:8738给php7安装redis扩展库   阅读:7712php显示刚刚、几分钟前、几小时前、几天前的函数   阅读:7671php显示刚刚、几分钟前、几小时前、几天前的函数   阅读:7671php 统计网页打开耗时和脚本运行内存   阅读:6289十张GIF让你弄懂递归等概念   阅读:5574linux top命令详解   阅读:8591mysql数据库性能的基本优化   阅读:4196Mysql在大型网站的应用架构演变   阅读:4182用php从1乘到100的值   阅读:5815移动端自适应rem原理   阅读:9103linux php7编译安装mongodb扩展   阅读:8012centos 7 安装 redis 3.2.9   阅读:6142centos 7 修改系统屏幕分辨率   阅读:41331linux时间戳有趣的情人节秒1234567890   阅读:5018php连接redis   阅读:5240shell脚本批量删除几天前的文件   阅读:8781web项目高并发量网站解决方案   阅读:4174centos 7 添加 redis 3.2.9 开机启动脚本   阅读:8738mysql的四种索引类型   阅读:20510爱编程,也爱健康   阅读:3843mysql中文分词全文搜索索引讯搜的安装   阅读:6155shell脚本破解十位数内的所有纯数字rar加密压缩包脚本   阅读:8142php 获取当前前后年、月、星期、日、时分秒的时间   阅读:6076栈和堆的区别   阅读:4588PHP 鸟哥:我也曾经是“不适合”编程的人   阅读:13487php冒泡排序法   阅读:13187php 读取和设置redis的键值   阅读:6822面试的时候回去等通知,等电话的真实意思   阅读:22432栈和堆的区别   阅读:4588centos7.3安装mongodb3.6   阅读:6790php设置cookie为HttpOnly防止XSS攻击   阅读:11720php文件下载防盗链   阅读:9143mysql的四种索引类型   阅读:20510PHP 鸟哥:我也曾经是“不适合”编程的人   阅读:13487linux php7编译安装mongodb扩展   阅读:8012给网站添加一键新浪微博登录的功能   阅读:6061php压缩页面的html代码一行显示   阅读:6608网站性能优化-页面静态缓存   阅读:5097shell脚本统计当前服务器并发连接数   阅读:6512mysql中文分词全文搜索索引讯搜的安装   阅读:6155linux rarcrack破解rar、zip和7z压缩包简单密码的工具   阅读:15392javascript点击复制内容   阅读:6224mysql5.7开启sql日志的配置   阅读:8218分享:淘宝技术这十年   阅读:4349最简单的Banner轮播淡入淡出效果代码及实现思路(附带源码)   阅读:12400知乎百万赞作者告诉你:年薪百万的人都在靠什么赚钱   阅读:5743给 centos 7 安装桌面环境   阅读:16166javascript获取两个日期间的所有日期   阅读:5952