先取出并保存好该图片.再用下面的来生成小图.
<?php
$new_w=100;
$new_h=100;
header("Content-type: image/png");
$dst_img=ImageCreate($new_w,$new_h);
$src_img=ImageCreateFrompng("./imgtest.png");
ImageCopyResized($dst_img,$src_img,0,0,0,0,$new_w,$new_h,ImageSX($src_img),ImageSY($src_img));
Imagepng($dst_img);
?>
以上代码生成100*100的小图并显示.
<?php
$new_w=100;
$new_h=100;
header("Content-type: image/png");
$dst_img=ImageCreate($new_w,$new_h);
$src_img=ImageCreateFrompng("./imgtest.png");
ImageCopyResized($dst_img,$src_img,0,0,0,0,$new_w,$new_h,ImageSX($src_img),ImageSY($src_img));
Imagepng($dst_img);
?>
以上代码生成100*100的小图并显示.
解决方案 »
- php与图片标签的问题
- LAMP 技术践行者的15课(1)
- 请教如何删除16位的MD5的会员记录保留32位的MD5记录的会员数据
- 请问如下代码哪里错误啊?怎么运行不正常
- 不能正常显示中文名称
- 字符串 截取问题,在线等
- 50分求一句话,通PHP和C#的来!!
- 新手提问,请您解决 Apache HTTP Server 2.0.55 启动问题!
- 急问:我想把当前文件.php文件生成的.htm文件的HTML代码,通过email到到用户邮箱,如何弄。。。。。谢,,waiting...
- 请问,怎样防止和禁止他人在其他地方提交表单到服务器?
- 谢帮忙哟!很RANG的问题呀!
- 请各位高手session的用法,最好是举点例子
// 本函数从源文件取出图象,设定成指定大小,并输出到目的文件
// 源文件格式:gif,jpg,jpe,jpeg,png
// 目的文件格式:jpg
// 参数说明:
// $srcFile 源文件
// $dstFile 目标文件
// $dstW 目标图象宽度
// $dstH 目标图象高度
function makethumb($srcFile,$dstFile,$dstW,$dstH,$type='png')
{
$data = GetImageSize($srcFile,&$info);
switch ($data[2])
{
case 1:
$im = ImageCreateFromGIF($srcFile);
break;
case 2:
$im = ImageCreateFromJPEG($srcFile);
break;
case 3:
$im = ImageCreateFromPNG($srcFile);
break;
}
$srcW=ImageSX($im);
$srcH=ImageSY($im);
$dstX=0;
$dstY=0;
if ($srcW*$dstH>$srcH*$dstW) {
$fdstH=round($srcH*$dstW/$srcW); $dstY=floor(($dstH-$fdstH)/2); $fdstW=$dstW;
} else {
$fdstW=round($srcW*$dstH/$srcH); $dstX=floor(($dstW-$fdstW)/2); $fdstH=$dstH;
}
$ni=ImageCreate($dstW,$dstH);
$dstX=($dstX<0)?0:$dstX;
$dstY=($dstX<0)?0:$dstY;
$dstX=($dstX>($dstW/2))?floor($dstW/2):$dstX;
$dstY=($dstY>($dstH/2))?floor($dstH/s):$dstY;
$white = ImageColorAllocate($ni, 255,255,255);//填充的背景色
imagefilledrectangle($ni,0,0,$dstW,$dstH,$white);
ImageCopyResized($ni,$im,$dstX,$dstY,0,0,$fdstW,$fdstH,$srcW,$srcH);
if ($type=='gif') ImageGif($ni,$dstFile);
else ImageJpeg($ni,$dstFile);
imagedestroy($im);
imagedestroy($ni);
}