❶ php怎么给这个图片添加日期和定位的水印
使用HTML 的Canvas画图功能,把你的原图片作为背景图,然后你根据情况在某个位置添加日期还有定位水印,然后再合成一张新的图片,生成到指定位置。希望能帮到你!
❷ base64 图片可以加水印吗PHP版本的,网上都是JAVA
//打开背景图
$image = \think\Image::open('二维码图片路径');
//字体路径
$path=ROOT_PATH.'public/font/PingFang-Bold-1.ttf';
$path1=ROOT_PATH.'public/font/PingFang Regular.ttf';
//海报存储路径
$file='二维码加水印后的图片存储路径';
//给背景图加文字和图片水印
$image->text($order_id,$path,20,'#000000',array(200,470))
->water($hecode,array(190,160)) //图片水印
->text('请向收银员出示',$path,20,'#000000',array(240,510)) //文字水印
->text('名称',$path,20,'#4C4C4C',array(80,760))
->text($name,$path1,18,'#000000',array(475,760))
->save('hecode/'.$param.'text_image.png');
return $file;
❸ php 怎么打开一个存在的图片再加水印
这个虽然可以实现.在载入的时候加上水印.
但是你考虑过么.这样每次打开的时候都会加水印.
一个是图片会一直变化.直到很难看.
另外一个是,每次都执行.速度将变慢.
❹ 用PHP代码给图片加水印
这篇文章主要介绍了用PHP代码给图片加水印的相关资料,需要的朋友可以参考下
先找好一张图片,更名为face.jpeg,创建watermark.php:
?
1
2
3
4
5
6
7
8
9
10
11
12
<?php
/**
*
Created
by
PhpStorm.
*
User:
Administrator
*
Date:
2015/6/29
*
Time:
22:27
*/
$img
=
imagecreatefromjpeg('face.jpeg');//根据已有的JPG创建image
header('Content-type:image/jpeg');//设置mime
type
imagestring($img,5,5,5,'Vito-L',imagecolorallocate($img,255,0,0));//生成水印,imagestring(图片,字体,位置x,位置y,字符串,颜色)
imagejpeg($img);//输出图片
//整幅图像的左上角为
0,0
效果如下:
以上所述就是本文的全部内容了,希望大家能够喜欢。
❺ PHP给图片添加文字水印
请确认C:\WINDOWS\Fonts\simkai.ttf';是否支持中文
或不要转换
$str = iconv('GB2312','UTF-8',$str);
直接
$str=$str;
❻ ThinkPHP图片处理,在一个背景图上加一段文字和一个图片下面在加一段文字,GD库文字水印字数很多不换行
给你个思路吧
1 计算图片的大小
2 计算引号中的文字长度,设置文字的字号
3 根据图片的宽度和字长字号计算出换行的文字位置
4 最后用image相关的函数进行文字填充和图片的输出
❼ php添加文字和图片水印问题。
//可能是你的编码设置有问题,在配置文件中设置编码为UTF-8或者别的,反正和你其它地方编码统一
header('Content-Type:text/html;charset=utf-8');
❽ 谁有php批量处理图片、图片生成缩略图、图片添加水印的函数
//批量处理图片、图片生成缩略图、图片添加水印
$dir=opendir(dirname(__FILE__));
while(!!$_file=readdir($dir)){
list($filesname,$kzm)=explode(".",$_file);//获取扩展名
if($kzm=="gif"or$kzm=="jpg"or$kzm=="JPG"or$kzm=="png"){
if(!makethumb("$_file","120","120","100")){
echo'执行成功!';
}else{
echo'执行失败!';
}
}
}
closedir($dir);
/**
*处理缩略图并添加水印函数
*@accesspubliuc
*@param$srcFile-----------图片文件名
*@param$dstFile-----------另存的文件名
*@param$dstW-------------图片保存的宽度
*@param$dstH--------------图片保存的高度
*@param$rate---------------图片保存的品质
*@param$markwords-----水印文字
*@param$markimage-----水印图片
*@param使用方法makethumb("a.jpg","b.jpg","120","120","100");
*/
functionmakethumb($srcFile/*,$dstFile*/,$dstW,$dstH,$rate=100/*,$markwords=null,$markimage=null*/){
$data=GetImageSize($srcFile);
switch($data[2]){
case1:
$im=@ImageCreateFromGIF($srcFile);
break;
case2:
$im=@ImageCreateFromJPEG($srcFile);
break;
case3:
$im=@ImageCreateFromPNG($srcFile);
break;
}
if(!$im)returnFalse;
$srcW=ImageSX($im);
$srcH=ImageSY($im);
$dstX=0;
$dstY=0;
if($srcW*$dstH>$srcH*$dstW){
$fdstH=round($srcH*$dstW/$srcW);
$dstY=floor(($dstH-$fdstH)/2);
$fdstW=$dstW;
}
else
{
$fdstW=round($srcW*$dstH/$srcH);
$dstX=floor(($dstW-$fdstW)/2);
$fdstH=$dstH;
}
$ni=ImageCreateTrueColor($dstW,$dstH);
$dstX=($dstX<0)?0:$dstX;
$dstY=($dstX<0)?0:$dstY;
$dstX=($dstX>($dstW/2))?floor($dstW/2):$dstX;
$dstY=($dstY>($dstH/2))?floor($dstH/s):$dstY;
$white=ImageColorAllocate($ni,255,255,255);
$black=ImageColorAllocate($ni,0,0,0);
imagefilledrectangle($ni,0,0,$dstW,$dstH,$white);//填充背景色
ImageCopyResized($ni,$im,$dstX,$dstY,0,0,$fdstW,$fdstH,$srcW,$srcH);
//if($markwords!=null){
//$markwords=iconv("gb2312","UTF-8",$markwords);
////转换文字编码
//ImageTTFText($ni,20,30,450,560,$black,"simhei.ttf",$markwords);//写入文字水印,参数依次为,文字大小|偏转度|横坐标|纵坐标|文字颜色|文字类型|文字内容
//}elseif($markimage!=null){
//$wimage_data=GetImageSize($markimage);
//switch($wimage_data[2]){
//case1:
//$wimage=@ImageCreateFromGIF($markimage);
//break;
//case2:
//$wimage=@ImageCreateFromJPEG($markimage);
//break;
//case3:
//$wimage=@ImageCreateFromPNG($markimage);
//break;
//}
//image($ni,$wimage,500,560,0,0,88,31);//写入图片水印,水印图片大小默认为88*31
//imagedestroy($wimage);
//}
$dstFile=$srcFile.'.gif';
ImageJpeg($ni,$dstFile,$rate);
//ImageJpeg($ni,$srcFile,$rate);
imagedestroy($im);
imagedestroy($ni);
}
❾ php 在给图片加水印的时候 分辨率改变了 不是原来的图片的分辨率
在php采集的时候,尤其是大量的自动采集的时候,加了水印的图片想程序自动鉴别。
你是这种想法吗?
这种想法可以,但没有这种方法。以前没有,今后也不会有。
水印和图片已经形成一张新图片了,不要说PHP对图片没有识别能力,就算PHP对图片有识别能力,它也没有办法识别图片上哪个属于图片内容,哪个属于水印内容。
但是,我们就没有办法处理水印的问题吗?办法肯定是有的。我提供几种思路:
1、我们自己建立一个无水印网站地址库,这个由我们日常来管理。php通过图片的真实地址,属于无水印网站地址范围,就认为是无水印的。不在范围内的,就作为有水印处理。
2、如果我们固定从某个大站取图片,它的图片有的有水印,有的无水印,而且有水印的都是那么固定的格式,那我们就根据它的方法,在水印上添加我们的水印。但这不是万能的,如果它在图片上全部铺满它的logo或者网址,像贴满膏药一样无法下手,我们只能对此说sorry,换个网站吧。