之前有个功能需要把文字写入图片,当时我就想该怎么弄,我第一时间想到就是添加水印,现在给大家分享个方法
<?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);
}
?>