图像处理-文字水印和图片水印

Posted xiaowie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了图像处理-文字水印和图片水印相关的知识,希望对你有一定的参考价值。

<?php

// 文字水印
header(‘Content-type:image/jpeg‘);
// 获取图片
$img=imagecreatefromjpeg(‘images/timg.jpg‘);
$font_color=imagecolorallocate($img,255,0,0);

// 获取图片的宽和高
$width=imagesx($img);
$height=imagesy($img);
// imagettfbbox返回一个数组
/*
0 左下角 X 位置 
1 左下角 Y 位置 
2 右下角 X 位置 
3 右下角 Y 位置 
4 右上角 X 位置 
5 右上角 Y 位置 
6 左上角 X 位置 
7 左上角 Y 位置 
*/
$font_width=imagettfbbox(40,0,‘fonts/BuxtonSketch.ttf‘,‘IM GOOD‘);
// 如果我们要把文字水印放到图片的右下角需要怎么操作呢?
// 首先我们使用右下角的x位置 减去左下角的x位置  得到这个文字水印的宽度

imagettftext($img,40,0,$width-1-$font_width[2]-10,$height-1-$font_width[1]-10,$font_color,‘fonts/BuxtonSketch.ttf‘,‘IM GOOD‘);
imagejpeg($img);
?>

图片水印

  

<?php
// 图片水印水印
header(‘Content-type:image/jpeg‘);
// 获取图片
$img=imagecreatefromjpeg(‘images/timg.jpg‘);

//获取图片水印
$imgWarte=imagecreatefromgif(‘images/dongtu.gif‘);

$font_color=imagecolorallocate($img,255,0,0);

// 获取水印width和height
$warte_width=imagesx($imgWarte);
$warte_height=imagesy($imgWarte);

// 获取图片的宽和高
$width=imagesx($img);
$height=imagesy($img);

$font_width=imagettfbbox(40,0,‘fonts/BuxtonSketch.ttf‘,‘IM GOOD‘);
imagecopy($img,$imgWarte,0,0,100,100,$warte_width,$warte_height);  //图片水印

imagejpeg($img);

imagedestroy($img);
?>

 

以上是关于图像处理-文字水印和图片水印的主要内容,如果未能解决你的问题,请参考以下文章

PHP加水印代码 支持文字和图片水印

PIL图片添加文字水印

java实现给图片添加水印(文字水印或图片水印)

PHP给图片添加文字水印

怎么去图片里面的水印

VB 给图片添加文字水印