牛骨文教育服务平台(让学习变的简单)
博文笔记

利用php的方法进行图片尺寸修改和储存

创建时间:2016-03-22 投稿人: 浏览次数:3095
1.利用php的方法进行图片尺寸修改和储存
-----------------------------------
准备工作:1.需要原图片的链接2.GD库支持
-----------------------------------
  假设原图片链接:$url;
   方法操作:


第一步:  $arrimg = getimagesize($url);
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
$arrimg :这个的形式是:
Array
(
    [0] => 350
    [1] => 318
    [2] => 2
    [3] => width="350" height="318"
    [bits] => 8
    [channels] => 3
    [mime] => image/jpeg
)
说明:$arrimg[2]中的数字代表着不同图片类型的数字索引查看:
返回结果说明
索引 0 给出的是图像宽度的像素值
索引 1 给出的是图像高度的像素值
索引 2 给出的是图像的类型,返回的是数字,其中1 = GIF,2 = JPG,3 = PNG,4 = SWF,5 = PSD,6 = BMP,7 = TIFF(intel byte order),8 = TIFF(motorola byte order)


,9 = JPC,10 = JP2,11 = JPX,12 = JB2,13 = SWC,14 = IFF,15 = WBMP,16 = XBM
索引 3 给出的是一个宽度和高度的字符串,可以直接用于 HTML 的 <image> 标签
索引 bits 给出的是图像的每种颜色的位数,二进制格式
索引 channels 给出的是图像的通道值,RGB 图像默认是 3
索引 mime 给出的是图像的 MIME 信息,此信息可以用来在 HTTP Content-type 头信息中发送正确的信息,如:
header("Content-type: image/jpeg");
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
第二步:根据宽:$arrimg[0],长:$arrimg [1]进行比例处理,把需要得到后的图片大小尺寸按照比例弄出来
在这里暂时设定需要得到图片的大小尺寸为 :$newheight  $newwidth
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
第三步:$thumb = imagecreatetruecolor($newwidth,$newheight);
   说明:imagecreatetruecolor() 返回一个图像标识符,代表了一幅大小为 $newwidth和 $newheight的黑色图像
+++++++++++++++++++++++++++++++++++++++++++++++++++++++
第四步: $source = imagecreatefromjpeg($url);
   说明:imagecreatefromjpeg() 返回一图像标识符,代表了从给定的文件名取得的图像
+++++++++++++++++++++++++++++++++++++++++++++++++++++++
第五步 :ImageCopyResampled($thumb,$source,0,0,0,0,$newwidth,$newheight,$arrimg[0],$arrimg[1]);
imagecopyresampled -- 重采样拷贝部分图像并调整大小。 
++++++++++++++
第六步:
   进行判断什么样的类型然后进行存储
switch($arrimg[2]){
//支持jpg
case  2:
imagejpeg($thumb,"test.jpg");
break;
//支持png
case 3:
imagejpeg($thumb,"test.jpg");
break;
default:
echo "<script>alert("带开发其他类型");</script>";
break;

}


声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。