PHP中图片等比缩放的实例
<?php
//图片的等比缩放
//因为PHP只能对资源进行操作,所以要对需要进行缩放的图片进行拷贝,创建为新的资源
$src=imagecreatefromjpeg('a.jpg');
//取得源图片的宽度和高度
$size_src=getimagesize('a.jpg');
$w=$size_src['0'];
$h=$size_src['1'];
//指定缩放出来的最大的宽度(也有可能是高度)
$max=300;
//根据最大值为300,算出另一个边的长度,得到缩放后的图片宽度和高度
if($w > $h){
$w=$max;
$h=$h*($max/$size_src['0']);
}else{
$h=$max;
$w=$w*($max/$size_src['1']);
}
//声明一个$w宽,$h高的真彩图片资源
$image=imagecreatetruecolor($w, $h);
//关键函数,参数(目标资源,源,目标资源的开始坐标x,y, 源资源的开始坐标x,y,目标资源的宽高w,h,源资源的宽高w,h)
imagecopyresampled($image, $src, 0, 0, 0, 0, $w, $h, $size_src['0'], $size_src['1']);
//告诉浏览器以图片形式解析
header('content-type:image/png');
imagepng($image);
//销毁资源
imagedestroy($image);
?>
相关推荐
-
php使用imagick模块实现图片缩放、裁剪、压缩示例
PHP 使用Imagick模块 缩放,裁剪,压缩图片 包括gif图片 缩放 裁剪 复制代码 代码如下: /** * 图片裁剪 * 裁剪规则: * 1. 高度为空或为零 按宽度缩放 高度自适应 * 2. 宽度为空或为零 按高度缩放 宽度自适应 * 3. 宽度,高度到不为空或为零 按宽高比例等比例缩放裁剪 默认从头部居中裁剪 * @param number $width * @param number $height */ public function
-
使用PHP生成二维码的两种方法(带logo图像)
一.利用Google API生成二维码 Google提供了较为完善的二维码生成接口,调用API接口很简单,以下是调用代码: $urlToEncode="http://www.jb51.net"; generateQRfromGoogle($urlToEncode); /** * google api 二维码生成[QRcode可以存储最多4296个字母数字类型的任意文本,具体可以查看二维码数据格式] * @param string $chl 二维码包含的信息,可以是数字.字符.二进制信
-
php gd等比例缩放压缩图片函数
本文实例为大家分享了php gd等比例缩放压缩图片函数,供大家参考,具体内容如下 <?php /** * desription 判断是否gif动画 * @param sting $image_file图片路径 * @return boolean t 是 f 否 */ function check_gifcartoon($image_file){ $fp = fopen($image_file,'rb'); $image_head = fread($fp,1024); fclose($fp); r
-
php实现按指定大小等比缩放生成上传图片缩略图的方法
本文实例讲述了php实现按指定大小等比缩放生成上传图片缩略图的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: /** * * *等比缩放 * @param unknown_type $srcImage 源图片路径 * @param unknown_type $toFile 目标图片路径 * @param unknown_type $maxWidth 最大宽 * @param unknown_type $maxHeight 最大高 * @par
-
php实现图片缩放功能类
复制代码 代码如下: <?php /** * Images类是一个图片处理类 * @package application.controllers * @since 1.0 */class Images { /** * 缩放图片 * @param $source原图片 * @param $newfile新图片 * @param $pre缩放比例 */ public function thumn($source,$pre,$newfile) { //获取图片尺寸 li
-
PHP实现图片的等比缩放和Logo水印功能示例
本文实例讲述了PHP实现图片的等比缩放和Logo水印功能.分享给大家供大家参考,具体如下: /** * 等比缩放函数(以保存的方式实现) * @param string $picname 被缩放的处理图片源 * @param int $maxx 缩放后图片的最大宽度 * @param int $maxy 缩放后图片的最大高度 * @param string $pre 缩放后图片名的前缀名 * @return String 返回后的图片名称(带路径),如a.jpg=>s_a.jpg */ func
-
PHP上传图片进行等比缩放可增加水印功能
啥也不说,直接上代码,大家可以自行添加增加水印功能: 复制代码 代码如下: <?php /** * * @author zhao jinhan * @date 2014年1月13日11:54:30 * @email xb_zjh@126.com * */ header('Content-type:text/html; charset=utf-8'); //定义缩略图的宽高 define('THUMB_WIDTH',300); define('THUMB_HEIGHT',300); /** * 重
-
php缩放图片(根据宽高的等比例缩放)实例介绍
推荐一个简单实用的缩放图片工具 SimpleImage,参考http://www.white-hat-web-design.co.uk/blog/resizing-images-with-php/ 使用方法: 设定宽高,不等比例缩放 复制代码 代码如下: <?php include('SimpleImage.php'); $image = new SimpleImage(); $image->load('picture.jpg'); $image->resize(250,400); $i
-
php图片的裁剪与缩放生成符合需求的缩略图
图片太大且规格不统一,显示的控制需要靠JavaScript来完成,用在移动设备上时显示效果不好且流量巨大,需要对现有图片库的图片进行一次处理,生成符合移动设备用的缩略图,将原来客户端JS做的工作转移到服务器端用PHP的GD库来集中处理. 图片源与需要的大小: 复制代码 代码如下: $src_img = "wallpaper.jpg"; $dst_w = 300; $dst_h = 200; 剪裁图像,保证图像区域最大化显示,并按比例缩放到指定大小. 一开始采用了 imagecopyre
-
如何实现php图片等比例缩放
通过文章给出的源代码可实现针对图片的等比缩放生成缩略图的功能,非常实用的技巧哦. 新建文件index.php,需要在统计目录下有个图片为pic.jpg(可根据源码进行更改图片的名称) 源代码如下: <?php $filename="pic.jpg"; $per=0.3; list($width, $height)=getimagesize($filename); $n_w=$width*$per; $n_h=$height*$per; $new=imagecreatetrueco
-
PHP图片处理之使用imagecopyresampled函数实现图片缩放例子
网站优化不能只定在代码上,内容也是网站最需要优化的对象之一,而图像又是网站中最主要的内容.图像的优化最需要处理的就是将所有上传到网站中的大图片自动缩放称小图(在网页中大小够用就行),以减少N倍的存储空间,并提高下载浏览的速度.所以图片缩放成一个动态网站必须要处理的任务,经常和文件上传绑定在一起工作,能在上传图片的同时就调整其大小.当然有时也需要单独处理图片缩放,例如在做图片列表时,如果直接用大图而在显示时才将其缩放成小图,这样做不仅下载速度会变慢,也会降低页面响应时间.通常遇到这样的应用都是在上
-
PHP实现批量生成App各种尺寸Logo
使用PHP GD,使用良好,一键剪裁各种尺寸,打包下载.经常换icon的懂的,美工给你一个1024的logo,你得ps出各种尺寸,于是有了这个东西. 核心代码 复制代码 代码如下: <?php class image { /** * source image * * @var string|array */ private $source; /** * temporay image * * @var f
-
php多功能图片处理类分享(php图片缩放类)
复制代码 代码如下: <?php /** * 基本图片处理,用于完成图片缩入,水印添加 * 当水印图超过目标图片尺寸时,水印图能自动适应目标图片而缩小 * 水印图可以设置跟背景的合并度 */ /* 使用方法: 自动裁切: 程序会按照图片的尺寸从中部裁切最大的正方形,并按目标尺寸进行缩略 $t--->setSrcImg("img/test.jpg"); $t->setCutType(1);//这一句就OK
随机推荐
- IOS仿今日头条滑动导航栏
- Python实现全角半角转换的方法
- TCP关闭问题详细介绍
- 如何显示一个文本文件?
- 第8天:CSS布局入门
- 外贸英语-900句,从询盘,报盘,价格,品质,运输一直到外贸关系 4/4第1/2页
- Android仿QQ、微信聊天界面长按提示框效果
- asp.net实现DropDownList,TreeView,ListBox的无限极分类目录树
- PHP 中提示undefined index如何解决(多种方法)
- javascript 使用 NodeList需要注意的问题
- 以前写的一个分页存储过程,刚才不小心翻出来的
- MySQL数据库21条最佳性能优化经验
- PHP如何利用P3P实现跨域
- JavaScript使用readAsDataURL读取图像文件
- JavaScript中的object转换函数toString()与valueOf()介绍
- 批处理 数码雨代码解释
- 浅谈js中StringBuffer类的实现方法及使用
- jQuery选择id属性带有点符号元素的方法
- jquery方法+js一般方法+js面向对象方法实现拖拽效果
- PHP内置加密函数详解