天天看点

php给图片添加水印

之前有个功能需要把文字写入图片,当时我就想该怎么弄,我第一时间想到就是添加水印,现在给大家分享个方法

<?php

 //给图片添加水印

 public function addImgWatermark(){

//     //指定图片路径

//     $src = '../public/static/test.png';

//     $font = '../public/static/dinotcondmedium.ttf';

     header("Content-Type:text/html; charset=utf-8");

     header('Content-type: image/png');// 告诉浏览器,这个文件,是一个png图片

     $size = 20;

     //字体类型,本例为黑体

     $font = "../public/static/dinotcondmedium.ttf";

     //显示的文字

     $text = "123456";

     $text1 = "abcdef";

     //创建一个长为500高为80的空白图片

     // $img = imagecreate(500, 80);

     $img = imagecreatefrompng ("../public/static/test.png");// 加载已有图像

     //给图片分配颜色

     // imagecolorallocate($img, 0xff, 0xcc, 0xcc);

     //设置字体颜色

     $black = imagecolorallocate($img, 0, 0, 0);

     //将ttf文字写到图片中

     imagettftext($img, $size, 0, 180, 176, $black, $font, $text);

     imagettftext($img, $size, 0, 1, 300, $black, $font, $text1);

     //发送头信息

     header('Content-Type: image/png');

     //输出图片

     // ImagePNG($img);

     //保存图片至指定路径

     ImagePNG($img, "../public/static/test.png");

     imagedestroy($img);

 }

?>