问答详情
源自:3-3 给图片添加图片水印—保存和销毁图片

为什么我的提示 图像因存在错误无法显示啊???

<?php

	// 打开图片
		// 1 配置图片路径
			$src = "1.png";
		// 2 获取图片信息
			$info = getimagesize($src);
			echo "<pre>";
			print_r($info);
			echo "<br/>";
		// 3 获取图像的类型
			$type = image_type_to_extension($info[2],false);
			print_r($type);
			echo "<br/>";
		// 4 在内存中创建同类型的图像
			$fun = "imagecreatefrom{$type}";
			echo "<br/>";
			print_r($fun);
		// 5 复制图片到内存中
			$image = $fun($src);
	//操作图片
		// 1 设置字体路径
			$font = "img/fzytk.ttf";
		// 2 设置水印内容
			$content = "加水印";
		// 3 设置字体的颜色透明度
			$color = imagecolorallocatealpha($image, 255, 255, 255, 50);
		// 4 设置文字
			imagettftext($image, 20, 0, 20, 30, $color, $font, $content);
	//输出图片
			header("Content-type:".$info['mime']);
			$func = "image{$type}";
			$func($image);
	//销毁图片

?>

不写header就显示乱码;

加上header就“图像因存在错误无法显示啊”!

难道是pnp配置有问题?

提问者:xj小磊 2015-07-24 16:20

个回答

  • im去流浪
    2016-09-27 22:12:59

    解决了吗

  • 煙花易冷0
    2016-08-06 09:38:07

    应该是你有错误提示,导致图片显示错误,你可以用

    error_reporting(E_ALL^E_NOTICE^E_WARNING);

    把错误提示关闭,就能显示了

  • lzqsmy
    2015-12-24 17:18:04

     $func = "image{$type}";这个不是大括号吧。。