PHP实现浏览器中直接输出图片
程序员文章站
2022-03-29 22:30:19
...
在浏览器中输出图片,最简单的方法当然是使用HTML的img标签,直接传入图片路径或者链接。但有时候我们需要把图片做一些处理,比如改一下图片质量或者尺寸再显示出来,我们可以使用PHP内置的图片处理函数imagecreatefromjpeg(或imagecreatefrompng)由文件或 URL 创建一个新图象和imagejpeg(或imagepng),通过 header() 发送 Content-type: image/jpeg 可以使 PHP 脚本直接输出 JPEG 图像。
/* * php 页面直接输出图片 */ function showImg($img){ $info = getimagesize($img); $imgExt = image_type_to_extension($info[2], false); //获取文件后缀 $fun = "imagecreatefrom{$imgExt}"; $imgInfo = $fun($img); //1.由文件或 URL 创建一个新图象。如:imagecreatefrompng ( string $filename ) //$mime = $info['mime']; $mime = image_type_to_mime_type(exif_imagetype($img)); //获取图片的 MIME 类型 header('Content-Type:'.$mime); $quality = 100; if($imgExt == 'png') $quality = 9; //输出质量,JPEG格式(0-100),PNG格式(0-9) $getImgInfo = "image{$imgExt}"; $getImgInfo($imgInfo, null, $quality); //2.将图像输出到浏览器或文件。如: imagepng ( resource $image ) imagedestroy($imgInfo); }
可以读取本地图片文件,也可以读取远程图片链接。
注:imagejpeg(或imagepng)支持仅在PHP与GD-1.8或更高版本一起编译时可用。quality为可选项,jpeg范围从0(最差质量,文件更小)到100(最佳质量,文件最大),png范围从 0到9。
相关推荐:
以上就是PHP实现浏览器中直接输出图片的详细内容,更多请关注其它相关文章!
上一篇: 把二维数组变为字符串