php生成缩略图的实现方法
内容摘要
这篇文章主要为大家详细介绍了php生成缩略图的实现方法,具有一定的参考价值,可以用来参考一下。
感兴趣的小伙伴,下面一起跟随php教程的小玲来看看吧!虽然在HTML中可以通过指定
感兴趣的小伙伴,下面一起跟随php教程的小玲来看看吧!虽然在HTML中可以通过指定
文章正文
这篇文章主要为大家详细介绍了php生成缩略图的实现方法,具有一定的参考价值,可以用来参考一下。
感兴趣的小伙伴,下面一起跟随php教程的小玲来看看吧!
虽然在HTML中可以通过指定图片的宽度和高度来随意缩放图片,但是这种方法不会减少图片的像素数目。图形文件的尺寸没有改变,当然也不会加快图片下载的速度了。当然也可以手动通过图形软件生成图片的缩略图,但对于大量的图片展示来说,这个工作量将十分巨大。为此微缩图的自动生成程序就被设计出来了。PHP中提供的imagecopyresized函数就可以用来生成真正的缩赂图片。该函数的标推语法如下:语法:int imagecopyresized(int dst_im,int src_im,int dstX,int dstY,int srcX,int srcY,int dstW,int dstH,int srcW,int srcH);返回值:整数函数种类:图形处理内容说明:本函数可复制新图,并重新调整图片的大小尺寸。参数都是目的在前,来源在后。参数dst im及src_im为图片的handle。参数dstX、dstY、srcX、srcY分别为目的及来源的坐标。参数dstW、dstH、srcW、srcH分别为来源及目的的宽及高,欲调整的新图的尺寸就在这儿配置。下面举个例子来说明这个函数的用法,对应的程序thumb.php如程序清单12—5所示。程序清单12—5 thumb.php代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | <code class = "language-php" ><? // 本函数从源文件取出图像,设定成指定大小,并输出到目的文件 // 源文件格式:gif,jpg,png // 目的文件格式:gif // $srcFile:源文件 // $dstFile: 目标文件 // $dstW:目标图片宽度 // $dstH:目标文件高度 function makethumb( $srcFile , $dstFile , $dstW , $dstH ) { $data = GetImageSize ( $srcFile ,& $info ); switch ( $data [2]) { case 1: $imgsrc = @ImageCreateFromGIF( $srcFile ); break ; case 2: $imgsrc = @ImageCreateFromJPEG( $srcFile ); break ; case 3: $imgsrc = @ImageCreateFromPNG( $srcFile ); break ; } $srcW = ImageSX( $imgsrc ); $srcH = ImageSY( $imgsrc ); $ni = ImageCreate( $dstW , $dstH ); ImageCopyResized( $ni , $imgsrc ,0,0,0,0, $dstW , $dstH , $srcW , $srcH ); Imagegif( $ni , $dstFile ); // 如果需要输出到浏览器,那么将上一句改为 ImageJpeg($ni); // 如果需要其他格式的图片,改动最后一句就可以了 } ?> </code> |
代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | <code class = "language-php" ><?php /* php教程 www.512Pic.com */ function getImageInfo( $img ) //$img为图像文件绝对路径 { $img_info = getimagesize ( $img ); switch ( $img_info [2]) { case 1: $imgtype = "GIF" ; break ; case 2: $imgtype = "JPG" ; break ; case 3: $imgtype = "PNG" ; break ; } $img_type = $imgtype . "图像" ; $img_size = ceil ( filesize ( $img )/1000). "k" ; //获取文件大小 $new_img_info = array ( "width" => $img_info [0], "height" => $img_info [1], "type" => $img_type , "size" => $img_size ); print " width" ; print $img_info [0]; print " height" ; print $img_info [1]; print " format" ; print $img_type ; print " size" ; print $img_size ; print $new_img_info ; } $img = "/www/htdocs/images/jf.gif" ; getImageInfo( $img ); ?> </code> |
注:关于php生成缩略图的实现方法的内容就先介绍到这里,更多相关文章的可以留意
代码注释