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

诸位大佬,为什么我的GD库显示一个小框框

如图http://img.mukewang.com/583963520001a61c06250198.jpg

<?php
	/*打开图片*/
	$src="imgs/wuhuan.jpg";
	 $info=getimagesize($src);
	 // echo "<pre>";
	 // print_r($info);获取图片信息
	 $type=image_type_to_extension($info[2],false);
	 //echo $type;获取图片的类型
	 $fun="imagecreatefrom{$type}";//$fur=imagecreatefromjpeg;$fur=imagecreatefrompng;因为这个函数有很多个。
	$image=$fun($src); //imagecreatefromjepg($src);imagecreatefrompng($src)
	/*操作图片*/
	$font="imgs/HYH3GJM0.TTF";
	$content="你好,sb";
	$col=imagecolorallocatealpha($image,255,255,255, 63);
	imagettftext($image,20,0,20,20,$col,$font,$content);
	/*输出图片*/
	header("Content-type:".$info['mime']);
	//imagejpeg($image);imagepng($image);
	$fnc="image{$type}";
	$func($image);
	imagejpeg($image);
	/*销毁图片*/


?>

http://img.mukewang.com/583963940001f7ca03870200.jpg

提问者:侠客岛的含笑 2016-11-26 18:27

个回答

  • Only_L
    2017-03-17 09:58:14
    已采纳

    建议你把调试工具打开,看看浏览器上未显示的图片的url,看看是不是和你本地保存的一样。多借用调试工具,找不出错误的时候,代码一段一段的进行排错查看。

  • 周密
    2017-07-14 19:15:48

     $fun="imagecreatefrom".$type;
    //把图片复制到内存中
       $image=$fun($src);

  • Sorry灬D
    2017-02-23 14:31:10

    我的也是这样,怎么搞的

  • 米开朗基罗3
    2017-02-19 17:36:11

    你的解决了吗,我也出现这个问题

    <?php

     /* 打开图片 */

     //1.配置图片路径

     $src="..\watermark\images/holowen.jpg";

     //2.获取图片信息( 通过GD库提供的方法,得到你想要处理的图片的基本信息)

     $info = getimagesize($src);

     //print_r ($info);

     //3.通过图像的编号来获取图像的类型

     $type=image_type_to_extension($info[2],false);

      //4在内存中创建一个和我们图像类型一样的图片

     $fun="imagecreatefrom{$type}";//$fun=imagecreatefromjpeg/png/gif;

     //5.把图片复制到我们的内存

     $image=$fun($src);//$image=imagecreatefromjpeg/png/gif($src);

     /* 操作图片*/

     $font="simhei.ttf";

     $content="hello! 你好";

     $color=imagecolorallocatealpha($image,255,255,255,50);

     imagettftext($image,30,mt_rand(-20,34),20,40,$color,$font,$content);

     

     

     /* 输出图片*/

        //浏览器输出


     header("Content-type:".$info['mime']);

     $func= "image($type)";//imagejpeg imagepng

     $func($image);

        //保存图片

     $func($image,'newimage.'.$type);

     /*  销毁图片*/

    ?>


  • 三坚之义
    2016-11-28 07:22:41

    可能是你的nodepad++保存格式不对,我的是保存为UTF-8格式的