php 抓取网页生成图片(在浏览器中输出图片,最简单的方法是什么?)

优采云 发布时间: 2022-02-16 11:02

  php 抓取网页生成图片(在浏览器中输出图片,最简单的方法是什么?)

  在浏览器中输出图片最简单的方式当然是使用HTML的img标签,直接传入图片路径或链接。但是有时候我们需要对图片做一些处理,比如改变图片的质量或者大小然后显示出来,我们可以使用PHP内置的图片处理函数imagecreatefromjpeg(或imagecreatefrompng)来创建一个新的图片和imagejpeg(或 imagepng) 从文件或 URL ),通过 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。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线