图片生成缩略图代码

图片生成缩略图代码

<?php
# Constants
define("IMAGE_BASE", './');
define("MAX_WIDTH", 150);
define("MAX_HEIGHT", 150);

# Get image locationstr_replace('..', '', $_SERVER['QUERY_STRING']);
$image_file = 't.jpg';
$image_path = IMAGE_BASE . "$image_file";

# Load image
$img = null;
$ext = strtolower(end(explode('.', $image_path)));
if ($ext == 'jpg' || $ext == 'jpeg') {
     $img = imagecreatefromjpeg($image_path);
} else if ($ext == 'png') {
     $img = @imagecreatefrompng($image_path);
# Only if your version of GD includes GIF support
} else if ($ext == 'gif') {
     $img = @imagecreatefrompng($image_path);
}

# If an image was successfully loaded, test the image for size
if ($img) {

     # Get image size and scale ratio
     $width = imagesx($img);
     $height = imagesy($img);
     $scale = min(MAX_WIDTH/$width, MAX_HEIGHT/$height);

     # If the image is larger than the max shrink it
     if ($scale < 1) {
         $new_width =150; //floor($scale*$width);
         $new_height =150;// floor($scale*$height);

         # Create a new temporary image
         $tmp_img = imagecreatetruecolor($new_width, $new_height);

         # Copy and resize old image into new image
         imagecopyresized($tmp_img, $img, 0, 0, 0, 0,$new_width, $new_height, $width, $height);
         imagedestroy($img);
         $img = $tmp_img;
     }
}

# Create error image if necessary
if (!$img) {
     $img = imagecreate(MAX_WIDTH, MAX_HEIGHT);
     imagecolorallocate($img,0,0,0);
     $c = imagecolorallocate($img,70,70,70 );
     imageline($img,0,0,MAX_WIDTH,MAX_HEIGHT,$c2);
     imageline($img,MAX_WIDTH,0,0,MAX_HEIGHT,$c2);
}

# Display the image
header("Content-type: image/jpeg");
imagejpeg($img);
imagedestroy($img);
?>

时间: 2024-07-31 10:38:28

图片生成缩略图代码的相关文章

php 批量生成缩略图代码

php 批量生成缩略图代码 //创建目录(目录, [模式]) function mkdirs($l1, $l2 = 0777){ if(!is_dir($l1)){   //如果目录不存在,递归建立   mkdirs(dirname($l1), $l2);    return @mkdir($l1, $l2); } return true; } //保存文件(文件, [内容]) function savefile($l1, $l2=''){  if(function_exists(file_pu

.net 生成缩略图代码

从朋友博客找到一个款.net 生成缩略图代码,效果很不错,所以拿出来分享一下. ///         /// 生成缩略图         ///         /// 源图路径(物理路径)         /// 缩略图路径(物理路径)         /// 缩略图宽度         /// 缩略图高度         /// 生成缩略图的方式:HW,W,H,Cut            public static void MakeThumbnail(string originalIm

给图片生成缩略图和加版权的类

缩略图 给图片生成缩略图和加版权的类 最近几天看了一下PHP的图片处理方面的功能,以前这方面的需求比较少,也就没怎么看,最近有空看了一下.感觉图片处理一些简单的功能还可以,复杂的就算了,GD库都2.0.1了,还是不支持中文,看了几篇文章,想使用中文只能先将GB2312转换成UNICODE再写入图片,太麻烦了,索性只使用英文算了. 在图像生成部分可以定义图片的最大高,宽,比较适用于新闻及相册等系统. GD2.0.1在图片处理上有很大提高,我试了下imageCopyResized和imageCopy

jsp 生成缩略图代码程序

jsp教程 生成缩略图代码程序 java.io.File file = new java.io.File(saveurl);        //读入刚才上传的文件     String newurl=request.getRealPath("/")+url+"min_"+filename+"."+ext;  //新的缩略图保存地址     Image src = javax.imageio.ImageIO.read(file);         

aspjpeg 给图片加图片或文字加水印,生成缩略图代码实例

' 函数名:watermarkfont '作 用:给图片加文字水印 '参 数:imgurl 原图地址 ' fontcolor 文字颜色 ' fontfamily 文字字体 ' fontsize 文字字号 ' fontbold 文字是否加粗 ' fontposx 文字定位x ' fontposy 文字定位y ' font 文字内容 ' newimgurl 新图片输出地址交 '**************************************************** sub water

PNG图片生成 缩略图背景不透明,黑色背景,怎么做才能透明呢?

问题描述 生成PNG缩略图背景怎么透明?透明背景的PNG图片用C#生成一下,原来的背景就变黑色了,请问有方法解决么?请高手或有经验的同仁帮办解决.谢谢.........代码如下:///<summary>///生成缩略图///</summary>///<paramname="originalImagePath">源图路径(物理路径)</param>///<paramname="thumbnailPath">缩

求C#写的生成缩略图代码,要求,不改变图片质量!!

问题描述 我自己写了段C#生成缩略图的代码,但上传图片后图片质量改变了!原图效果用我的代码生成缩略图后哪位能给出个不改变图片质量,只改变图片大小的生成缩略图的C#代码?谢谢! 解决方案 解决方案二:见这:http://www.cnblogs.com/myx/archive/2005/05/12/154036.html解决方案三: Imageimage=newBitmap("你的图像.bmp");ImagepThumbnail=image.GetThumbnailImage(100,10

php文件上传类可生成缩略图代码

<?php         代码如下 复制代码 if ($_GET['action'] == 'save') {                   $up = new upload();            $up->set_dir(dirname(__FILE__).'/upload/','{y}/{m}');            $up->set_thumb(100,80);            $up->set_watermark(dirname(__FILE__).

asp.net 生成缩略图代码_实用技巧

复制代码 代码如下: using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; usi