我晕没保存就传上去了

函数这个

function setWater($imgSrc,$markImg,$markText,$TextColor,$markPos,$fontType,$markType)

{

$srcInfo = @getimagesize($imgSrc);

$srcImg_w = $srcInfo[0];

$srcImg_h = $srcInfo[1];

switch ($srcInfo[2])

{

case 1:

$srcim =imagecreatefromgif($imgSrc);

break;

case 2:

$srcim =imagecreatefromjpeg($imgSrc);

break;

case 3:

$srcim =imagecreatefrompng($imgSrc);

break;

default:

die("不支持的图片文件类型");

exit;

}

if(!strcmp($markType,"img"))

{

if(!file_exists($markImg) || empty($markImg))

{

return;

}

$markImgInfo = @getimagesize($markImg);

$markImg_w = $markImgInfo[0];

$markImg_h = $markImgInfo[1];

if($srcImg_w < $markImg_w || $srcImg_h < $markImg_h)

{

return;

}

switch ($markImgInfo[2])

{

case 1:

$markim =imagecreatefromgif($markImg);

break;

case 2:

$markim =imagecreatefromjpeg($markImg);

break;

case 3:

$markim =imagecreatefrompng($markImg);

break;

default:

die("不支持的水印图片文件类型");

exit;

}

$logow = $markImg_w;

$logoh = $markImg_h;

}

if(!strcmp($markType,"text"))

{

$fontSize = 16;

if(!empty($markText))

{

if(!file_exists($fontType))

{

return;

}

}

else {

return;

}

$box = @imagettfbbox($fontSize, 0, $fontType,$markText);

$logow = max($box[2], $box[4]) - min($box[0], $box[6]);

$logoh = max($box[1], $box[3]) - min($box[5], $box[7]);

}

if($markPos == 0)

{

$markPos = rand(1, 9);

}

switch($markPos)

{

case 1:

$x = +5;

$y = +5;

break;

case 2:

$x = ($srcImg_w - $logow) / 2;

$y = +5;

break;

case 3:

$x = $srcImg_w - $logow - 5;

$y = +15;

break;

case 4:

$x = +5;

$y = ($srcImg_h - $logoh) / 2;

break;

case 5:

$x = ($srcImg_w - $logow) / 2;

$y = ($srcImg_h - $logoh) / 2;

break;

case 6:

$x = $srcImg_w - $logow - 5;

$y = ($srcImg_h - $logoh) / 2;

break;

case 7:

$x = +5;

$y = $srcImg_h - $logoh - 5;

break;

case 8:

$x = ($srcImg_w - $logow) / 2;

$y = $srcImg_h - $logoh - 5;

break;

case 9:

$x = $srcImg_w - $logow - 5;

$y = $srcImg_h - $logoh -5;

break;

default:

die("此位置不支持");

exit;

}

$dst_img = @imagecreatetruecolor($srcImg_w, $srcImg_h);

imagecopy ( $dst_img, $srcim, 0, 0, 0, 0, $srcImg_w, $srcImg_h);

if(!strcmp($markType,"img"))

{

imagecopy($dst_img, $markim, $x, $y, 0, 0, $logow, $logoh);

imagedestroy($markim);

}

if(!strcmp($markType,"text"))

{

$rgb = explode(',', $TextColor);

$color = imagecolorallocate($dst_img, $rgb[0], $rgb[1], $rgb[2]);

imagettftext($dst_img, $fontSize, 0, $x, $y, $color, $fontType,$markText);

}

switch ($srcInfo[2])

{

case 1:

imagegif($dst_img, $imgSrc);

break;

case 2:

imagejpeg($dst_img, $imgSrc);

break;

case 3:

imagepng($dst_img, $imgSrc);

break;

default:

die("不支持的水印图片文件类型");

exit;

}

imagedestroy($dst_img);

imagedestroy($srcim);

}

kingcms php,KINGCMS PHP 支持添加水印相关推荐

  1. kingcms php,KingCMS php版网站标签模版制作教程(二)

    php版的标签 king:模块名称.模型名称 这样构成,以自定义模块的文章模型为例: {king:portal.article number='*' type='*' listid='*' listi ...

  2. windows安装ffmpeg_免费实用的录屏工具!支持全屏、特定窗口、选定区域录制,支持添加水印、嵌入摄像头(附ffmpeg安装)...

    哈喽大家好,我是菌菌~ 在线授课.游戏录制.视频编辑.网上会议--现如今,视频录制非常火爆,一款好用的视频录制工具自然必不可少. 今天,菌菌就给大家分享3款免费又好用的电脑录屏工具,一起来看看吧! w ...

  3. OrionX Panel for Mac(ps摄影自动化工作流插件)支持ps2021 big sur11 汉化版

    为大家分享最新汉化的OrionX Panel for Mac,这是一款ps摄影自动化工作流插件,小编亲测,适用于Photoshop 2021最新版,OrionX汉化版提供了蒙版.夜景.风光.极坐标鱼眼 ...

  4. EasyDSS点播视频添加水印的位置与定义的位置不匹配怎么办?

    去年年底我们在EasyDSS上增加了水印功能,用户可以自由定义水印的格式及位置,不管是网页端的视频还是手机端的视频,都支持添加水印,如果大家对水印功能的开发感兴趣,可以参考我们之前的EasyDSS新增 ...

  5. html长图转换成pdf,支持把各类文档转换成 HTML5(SVG)接口、长图片、PDF 。word转pdf、word转html5、pdf转网页html5、pdf转图片的接口...

    详情请到九云图官网了解一下.https://server.9yuntu.com/yuntu/resource/website/api.html 把 OFFICE / PDF / CAD 等文档转换成 ...

  6. EXCEL教程 | 保存多比例尺、多尺寸地图,支持大图、加水印、保存PNG、TIF、HTML等格式

    1 应用场景 前面我们介绍使用小O地图EXCEL插件版能够在EXCEL中标注地图.绘制地图.可视化数据等操作.如下截图,保存地图成果只能通过截图方式,图片大小限制,不能很好满足地图打印.出图等应用需求 ...

  7. 在EXCEL中添加水印

    方法一.直接设置水印 在页面布局选卡中,点击"打印标题"命令会弹出页面设置选项卡,然后点击窗口上的"选项"按钮,会弹出打印机设置的窗口.(注:如果找不到下面的选 ...

  8. CMS介绍,以及其既往开来的展望

    在中国互联网的发展历程中,一直以来默默地为中国站长提供动力的CMS厂商作出 的贡献尤其巨大,而与之成反比的是CMS厂商的生存状态依然令人担忧,由于国内站长对于免费和开源的FreeEIM尤为热衷,用户的 ...

  9. wps电脑版_使用好这几个功能,让你手机里的wps变身神器。

    金山WPS for Android是运行于Android 平台上的全功能办公软件.用户遍布全球220多个国家和地区.完全兼容桌面办公文档,支持DOC/DOCX/WPS/XLS/XLSX/PPT/PPT ...

最新文章

  1. elasticearch 多种查询参数用法:
  2. 修改数据无法提交_MySQL数据库精讲:一文讲解MySQL事务隔离!
  3. keycode对应主要键的关系
  4. SAP Spartacus table里显示较长数据时自动显示省略号的设置
  5. .12-浅析webpack源码之NodeWatchFileSystem模块总览
  6. java 异步调用方法_乐字节Java编程之方法、调用、重载、递归
  7. 此 sqltransaction 已完成;它再也无法使用_win10笔记本自带office报错无法激活的解决方法...
  8. 以Jar形式为Web项目提供资源文件(JS、CSS与图片)
  9. 如何将Netbeans配置更加合理
  10. nginx nodejs环境配置_nodejs + nginx + ECS阿里云服务器环境设置
  11. Java 8:一文掌握 Lambda 表达式 | CSDN 博文精选
  12. 【计算机网络】【硬件】交换机芯片介绍
  13. Jeff Dean的传奇人生:超级工程师们拯救谷歌
  14. 明解C语言第七章习题
  15. 魔兽8.0最新服务器人口普查,魔兽世界8.2最新人口普查 2019各服务器人口普查信息汇总...
  16. [文摘20080311]五笔口诀
  17. JAVA开发---微信文章留言功能实现
  18. 雨听 | 英语作文作文万能句型
  19. THz:随机湍流信道下THz无线LOS链路的性能研究
  20. 计算机网络应用押韵句,沙雕押韵很可爱的rap的句子 笑掉大牙的押韵句子

热门文章

  1. 蓄电池内阻的检测技术
  2. 苹果电脑视频声音提取的方法
  3. 用trie树实现输入提示功能,输入php函数名,提示php函数
  4. 更改guest帐号权限
  5. 地理距离测算(方法免费共享,经纬度、省份、地级市、港口间距离)
  6. react浏览器兼容报错处理
  7. Neo4j图数据库 批量写入与查询
  8. 【Unity自己写框架】FairyGUI UI框架(一)
  9. gif动图怎么制作?手机怎么制作动态图
  10. 装完系统还要装什么_安装完纯净版系统需要安装什么??