php工具型代码之印章抠图


Posted in PHP onJuly 18, 2018

能将白底红字的印章抠出来,用的是php,框架是laravel,其他框架请自行调节。扣其他颜色也可以,把里面的那段rgb参数判断改改就行了,最后抠出来的效果就是白底变透明,然后只留下红色的章,放在其他页面上就能形成盖章的效果了。代码自己写的,可能有bug,但是做做测试还是ok的,用到工作上的话请自行测试和优化。(在我自己测试对比下,能做到和PS差不多的抠图效果)

function getStamp(){
  $path = storage_path('2018052411173848180.png');
  $image = file_get_contents($path);


  $info = getimagesize($path);
  $im = imagecreatefromstring($image);
  $width = $info[0];
  $height = $info[1];
  for($i=0;$i<$height;$i+=1){
    for($j=0;$j<$width;$j+=1){
      $rgb = ImageColorAt($im, $j, $i);
      $r = ($rgb >> 16) & 0xFF;
      $g = ($rgb >> 8) & 0xFF;
      $b = $rgb & 0xFF;
      echo $r.'.'.$g.'.'.$b.'.='.$rgb.'<br>x='.$j.', y='.$i.'<br>';

      if(intval($r)>220 && $g >220 && $b>220){
        $hex = imagecolorallocate($im, 255, 255, 255);
        imagesetpixel($im,$j, $i, $hex);
      }
    }
  }
  $white = imagecolorallocate($im , 255 , 255 , 255);//拾取白色
  imagefill($im , 0 , 0 , $white);//把画布染成白色
  imagecolortransparent($im , $white ) ;//把图片中白色设置为透明色

  imagepng($im , storage_path('test2.png'));//生成图片

  return false;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
第十节--抽象方法和抽象类
Nov 16 PHP
PHP5中的this,self和parent关键字详解教程
Mar 19 PHP
php完全过滤HTML,JS,CSS等标签
Jan 16 PHP
php判断输入不超过mysql的varchar字段的长度范围
Jun 24 PHP
一个PHP二维数组排序的函数分享
Jan 17 PHP
php实现aes加密类分享
Feb 16 PHP
php中namespace use用法实例分析
Jan 22 PHP
PHP 验证身份证是否合法的函数
Feb 09 PHP
总结一些PHP中好用但又容易忽略的小知识
Jun 02 PHP
使用PHP访问RabbitMQ消息队列的方法示例
Jun 06 PHP
php多进程中的阻塞与非阻塞操作实例分析
Mar 04 PHP
详细分析PHP 命名空间(namespace)
Jun 30 PHP
php压缩文件夹最新版
Jul 18 #PHP
PHP自定义递归函数实现数组转JSON功能【支持GBK编码】
Jul 17 #PHP
PHP7新特性之抽象语法树(AST)带来的变化详解
Jul 17 #PHP
阿里云的WindowsServer2016上部署php+apache
Jul 17 #PHP
tp5实现微信小程序多图片上传到服务器功能
Jul 16 #PHP
PHP 爬取网页的主要方法
Jul 13 #PHP
php实现微信发红包功能
Jul 13 #PHP
You might like
php session 错误
2009/05/21 PHP
php网站来路获取代码(针对搜索引擎)
2010/06/08 PHP
php结合ajax实现赞、顶、踩功能实例
2014/05/12 PHP
destoon利用Rewrite规则设置网站安全
2014/06/21 PHP
Laravel-添加后台模板AdminLte的实现方法
2019/10/08 PHP
解决laravel id非自增 模型取回为0 的问题
2019/10/11 PHP
PHP延迟静态绑定使用方法实例解析
2020/09/05 PHP
使用正则替换变量
2007/05/05 Javascript
用js来获取上传的文件名纯粹是为了美化而用
2013/10/23 Javascript
关于JavaScript对象的动态选择及遍历对象
2014/03/10 Javascript
基于JavaScript实现跳转提示页面
2016/09/24 Javascript
vue开发心得和技巧分享
2016/10/27 Javascript
localStorage实现便签小程序
2016/11/28 Javascript
利用jQuery插件imgAreaSelect实现图片上传裁剪(放大缩小)
2016/12/02 Javascript
JavaScript实现父子dom同时绑定两个点击事件,一个用捕获,一个用冒泡时执行顺序的方法
2017/03/30 Javascript
js 提取某()特殊字符串长度的实例
2017/12/06 Javascript
Javascript中prototype与__proto__的关系详解
2018/03/11 Javascript
微信小程序授权登录解决方案的代码实例(含未通过授权解决方案)
2019/05/10 Javascript
Vue 用Vant实现时间选择器的示例代码
2019/10/25 Javascript
Vue路由管理器Vue-router的使用方法详解
2020/02/05 Javascript
js实现车辆管理系统
2020/08/26 Javascript
[02:01]BBC DOTA2国际邀请赛每日综述:八强胜者组鏖战,中国队喜忧参半
2014/07/19 DOTA
python+tkinter编写电脑桌面放大镜程序实例代码
2018/01/16 Python
python做量化投资系列之比特币初始配置
2018/01/23 Python
Python爬取网页信息的示例
2020/09/24 Python
Python os库常用操作代码汇总
2020/11/03 Python
解决pytorch 数据类型报错的问题
2021/03/03 Python
广州御银科技股份有限公司试卷(C++)
2016/11/04 面试题
linux面试题参考答案(6)
2014/08/29 面试题
《桃林那间小木屋》教学反思
2014/05/01 职场文书
优秀毕业生就业推荐信
2014/05/22 职场文书
党员民主生活会对照检查材料思想汇报
2014/09/28 职场文书
孝老爱亲事迹材料
2014/12/24 职场文书
让生命充满爱观后感
2015/06/08 职场文书
Oracle安装TNS_ADMIN环境变量设置参考
2021/11/01 Oracle
AJAX引擎原理以及XmlHttpRequest对象的axios、fetch区别详解
2022/04/09 Javascript