php gd库函数生成高清缩略图程序
发布:smiling 来源: PHP粉丝网 添加日期:2014-08-19 10:37:26 浏览: 评论:0
gd库是php教程中一个处理图像的专用库,他可以方便快捷的处理大多数据处理,它提供了大量的图片处理函数,下面我们就利用gd库的函数来生成缩略图.
测试代码如下:
- <?php
- include('resizeimage.php');
- if(!emptyempty($_post)){
- echo($filename.".jpg?cache=".rand(0,999999));
- }
- ?>
- <form name="test" action="?submit=true" enctype="multipart/form-data" method="post" >
- <input type="file" name="image" size="50" value="浏览"><p>
- <input type="submit" value="上传图片">
- </form>
resizeimage.php 文件代码如下:
- <?php
- $filename="image.thumb";
- // 生成图片的宽度
- $resizewidth=400;
- // 生成图片的高度
- $resizeheight=400;
- function resizeimage($im,$maxwidth,$maxheight,$name){
- $width = imagesx($im);
- $height = imagesy($im);
- if(($maxwidth && $width > $maxwidth) || ($maxheight && $height > $maxheight)){
- if($maxwidth && $width > $maxwidth){
- $widthratio = $maxwidth/$width;
- $resizewidth=true;
- }
- if($maxheight && $height > $maxheight){
- $heightratio = $maxheight/$height;
- $resizeheight=true;
- }
- if($resizewidth && $resizeheight){
- if($widthratio < $heightratio){
- $ratio = $widthratio;
- }else{
- $ratio = $heightratio;
- }
- }elseif($resizewidth){
- $ratio = $widthratio;
- }elseif($resizeheight){
- $ratio = $heightratio;
- }
- $newwidth = $width * $ratio;
- $newheight = $height * $ratio;
- if(function_exists("imagecopyresampled")){
- $newim = imagecreatetruecolor($newwidth, $newheight);
- imagecopyresampled($newim, $im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
- }else{
- $newim = imagecreate($newwidth, $newheight);
- imagecopyresized($newim, $im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
- }
- imagejpeg ($newim,$name . ".jpg");
- imagedestroy ($newim);
- }else{
- imagejpeg ($im,$name . ".jpg");
- }
- }
- if($_files['image']['size']){
- if($_files['image']['type'] == "image/pjpeg"){
- $im = imagecreatefromjpeg($_files['image']['tmp_name']);
- }elseif($_files['image']['type'] == "image/x-png"){
- $im = imagecreatefrompng($_files['image']['tmp_name']);
- }elseif($_files['image']['type'] == "image/gif"){
- $im = imagecreatefromgif($_files['image']['tmp_name']);
- }
- if($im){
- if(file_exists("$filename.jpg")){
- unlink("$filename.jpg");
- }
- resizeimage($im,$resizewidth,$resizeheight,$filename);
- imagedestroy ($im);
- }
- } //开源代码phpfensi.com
- ?>
Tags: php gd库函数 缩略图程序
- 上一篇:php图像验证代码
- 下一篇:php替换图片alt与title标签
相关文章
- ·打造超酷的PHP数据饼图(2013-11-13)
- ·PHP为图片添加水印的实例(2013-11-14)
- ·php 给图片加灰色透明效果(2013-11-14)
- ·LINUX下PHP网页生成快照(截屏)(xvfb and wkhtmltoimage)(2013-11-14)
- ·php_imagick实现图片剪切、旋转、锐化、减色或增加特效(2013-11-14)
- ·PHP中创建并处理图象(2013-12-08)
- ·在PHP中将图片存放ORACLE中(2013-12-08)
- ·PHP制作图形计数器的例子(2013-12-08)
- ·php生成验证码(2013-12-09)
- ·PHP版的验证码程序(2013-12-10)
- ·php简单支持中文水印程序代码(2013-12-31)
- ·php生成验证码图片从入门和精通教程(2013-12-31)
- ·PHP生成条形码实现程序(2014-01-06)
- ·PHP中生成横状百分比图片实例(2014-01-06)
- ·PHP通过url下载远程图片到本地(2014-01-07)
- ·php批量下载网页图片并替换路径为本地(2014-01-07)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)