//水印图像$mask_url = "https://store.heytapimage.com/uploadFiles/admin_appstore/202206/23/e1cc4baf054c1cfdb65c9a72d5b98751.png";$src = CommonModel::downloadFile('', $mask_url);foreach ($results as $result) {//原始图像$img_url = strpos($result['content'], 'http') !== false ? $result['content'] : (strpos($result['content'], '//') !== false ? ('http:' . $result['content']) : (Yii::$app->params['pic_file_host'] . $result['content']));$dst = $img_url;$pathInfo = pathinfo($dst);$ext = $pathInfo['extension'];//得到原始图片信息if ($ext == 'png') {$dst_im = @\imagecreatefrompng($dst);} else if ($ext == 'jpg') {$dst_im = @\imagecreatefromjpeg($dst);} else if ($ext == 'gif') {$dst_im = @\imagecreatefromgif($dst);} else {$dst = $img_url . '?region=' . Yii::$app->params['themeapi_package']['package_ocs_region'] . '&x-ocs-process=image/crop,x_0,y_0,w_1080,h_414/format,png';$dst_im = @\imagecreatefromstring(file_get_contents($dst));}if (!$dst_im) {$dst_im = @\imagecreatefromstring(file_get_contents($dst));}if (!$dst_im) {Clog::warning('素材图imagecreatefrom失败,[data=' . json_encode($result) . ']');echo '素材图imagecreatefrom失败,[data=' . json_encode($result) . ']';continue;}$dst_info = getimagesize($dst);if (!$dst_info) {Clog::warning('素材图getimagesize失败,[data=' . json_encode($result) . ']');echo '素材图getimagesize失败,[data=' . json_encode($result) . ']';continue;}//水印图像$src_im = imagecreatefrompng($src);if (!$src_im) {Clog::warning('水印图imagecreatefrom失败,[data=' . json_encode($result) . ']');echo '水印图imagecreatefrom失败,[data=' . json_encode($result) . ']';continue;}$src_info = getimagesize($src);if (!$src_info) {Clog::warning('水印图getimagesize失败,[data=' . json_encode($result) . ']');echo '水印图getimagesize失败,[data=' . json_encode($result) . ']';continue;}//水印透明度$alpha = 50;//合并水印图片imagecopymerge($dst_im, $src_im, $dst_info[0] - $src_info[0], $dst_info[1] - $src_info[1], 0, 0, $src_info[0], $src_info[1], $alpha);//输出合并后水印图片$filename = sys_get_temp_dir() . '/' . md5(microtime(true) . $img_url) . '.png';$bool = imagepng($dst_im, $filename);if (!$bool) {Clog::warning('imagepng失败,[data=' . json_encode($result) . ']');echo 'imagepng失败,[data=' . json_encode($result) . ']';continue;}imagedestroy($dst_im);imagedestroy($src_im);//上传$upload_data = ['type' => 'appDomain', 'folder' => '', 'file' => $filename];$upload_response = CurlServiceDao::uploadFile("/innerapi/utility/upload", $upload_data, 'inneropenapi', true);;if (0 != $upload_response['errno']) {Clog::warning('上传图片到ocs失败#respone=' . json_encode($upload_response, JSON_UNESCAPED_UNICODE) . ',[data=' . json_encode($result) . ']');echo '上传图片到ocs失败#respone=' . json_encode($upload_response, JSON_UNESCAPED_UNICODE) . ',[data=' . json_encode($result) . ']';continue;}if (!isset($upload_response['data']['uri_path']) || empty($upload_response['data']['uri_path'])) {Clog::warning('上传图片到ocs失败#respone=' . json_encode($upload_response, JSON_UNESCAPED_UNICODE) . ',[data=' . json_encode($result) . ']');echo '上传图片到ocs失败#respone=' . json_encode($upload_response, JSON_UNESCAPED_UNICODE) . ',[data=' . json_encode($result) . ']';continue;}$merge_mask = $upload_response['data']['uri_path'];$data = ['merge_mask' => $merge_mask,];$update_response = CdoOperationThemeDao::getInstance()->saveOne($result['id'], $data, 'dev_page_material');if (!$update_response) {Clog::warning('保存数据失败,[data=' . json_encode($result) . ']');echo '保存数据失败,[data=' . json_encode($result) . ']';continue;}}@unlink($src);

imagecopymerge相关推荐

  1. php imagecopy 用法,php使用imagecopymerge()函数创建半透明水印

    使用imagecopymerge() 函数创建半透明水印,供大家参考,具体内容如下 // 加载要加水印的图像 $im = imagecreatefromjpeg('photo.jpeg'); // 首 ...

  2. php生成水印函数,php使用imagecopymerge()函数创建半透明水印

    使用imagecopymerge() 函数创建半透明水印,供大家参考,具体内容如下 // 加载要加水印的图像 $im = imagecreatefromjpeg('photo.jpeg'); // 首 ...

  3. 使用 imagecopymerge() 函数创建半透明水印

    最近研究了一下如何在图片中创建半透明水印,直接上代码. <?php // 加载水印以及要加水印的图像 $stamp = imagecreatefrompng('stamp.png'); //水印 ...

  4. php常用20函数,PHP常用函数

    //PHP设置跨域 header("Access-Control-Allow-Origin:*"); //PHP设置JSON头 以JSON格式输出 header("Con ...

  5. php删除指定图片吗,PHP 去除图片指定颜色

    /** * 把图像按指定颜色扣成透明返回图像 * @param $image 源图像 * @param $r red * @param $g green * @param $b blue * @par ...

  6. php网页添加图片的代码,天天查询-PHP版的kindeditor编辑器加图片上传水印功能

    首先简单介绍一下kindeditor编辑器: KindEditor 是一套开源的在线HTML编辑器,开发人员可以用 KindEditor 把传统的多行文本输入框(textarea)替换为可视化的富文本 ...

  7. photo.php,EasyPhoto.php

    class EasyPhoto{ //所有图层 private $layers=array(); //当前活动图层 private $ActiveLayer; //对象实例,单实例模式 private ...

  8. php分析图片水印,PHP开发的文字水印,缩略图,图片水印实现类与用法示例

    本文实例讲述了PHP开发的文字水印,缩略图,图片水印实现类与用法.分享给大家供大家参考,具体如下: 1.实现类ImageToTest.class.php参考代码 class ImageToTest { ...

  9. 黄聪:php实现上传图片和等比例缩略图压缩图片

    上传图片然后按照比例缩略图,指定缩略图的最大高度或者最大宽度. <?php function _UPLOADPIC($upfile, $maxsize, $updir, $newname = ' ...

最新文章

  1. 支付接口教程,详解支付宝接口(二)
  2. 45 jump game II(贪心)
  3. 《人月神话》阅读体会(二)
  4. SQL重复记录查询的几种方法
  5. Android SDK安装与环境配置
  6. C++提高部分_C++模板的局限性_以及用模板具体化来解决模板局限性问题---C++语言工作笔记086
  7. rmi远程代码执行漏洞_Apache Solr反序列化远程代码执行漏洞分析(CVE20190192)
  8. PaddlePaddle(2)——数据获取与处理(以CV任务为主)
  9. maven setting 设置jdk版本
  10. 数据库中的左连接(left join)和右连接(right join)区别
  11. mate30pro鸿蒙系统刷机包下载,华为 Mate 30 Pro 的鸿蒙 2.0 Beta 版刷机包流出(附下载地址)...
  12. 常见五大开源网络监控软件测评分析
  13. 经典论文之OverFeat
  14. 菜鸟阿鑫的常用类(上)总结
  15. AT32F435_437_USB_MSC_SDIO
  16. 全基因组关联分析学习资料(GWAS tutorial)20210313更新版
  17. U盘启动模式USB-HDD/HDD+/ZIP/ZIP+/CDROM/FDD的区别
  18. 爬取楼盘网并将数据保存在excel表中
  19. 黑莓蓝牙摇杆-Zeemote
  20. 【运维】第四节 Prometheus 配置完全手册

热门文章

  1. python什么时候用函数和类_【Python】一文说清楚类与函数的选择
  2. CPPcheck 配置
  3. 位列第五大生产要素,大数据该如何突破隐私安全魔咒?
  4. 【趣学算法】第一章读书笔记
  5. 京东商品详情APP原数据API接口-(item_get_app-获得JD商品详情原数据API接口),京东API接口
  6. 怎样免费注册apple id
  7. 安卓手机ppt阅读器_基于本科计算机安卓android毕业设计选题题目
  8. CVPR 2022 在星空下起舞,伯克利联合Intel Labs提出极弱光环境下的视频降噪方案
  9. Divi - 终极 WordPress 主题和视觉页面生成器和主题下载
  10. 计算机图文混排三笔记,Markdown,让你印象笔记中的图片版面更好看