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 相关文章推荐
请php正则走开
Mar 15 PHP
PHP数组 为文章加关键字连接 文章内容自动加链接
Dec 29 PHP
php实现保存submit内容之后禁止刷新
Mar 19 PHP
Codeigniter中禁止A Database Error Occurred错误提示的方法
Jun 12 PHP
php实现数组中索引关联数据转换成json对象的方法
Jul 08 PHP
支付宝服务窗API接口开发php版本
Jul 20 PHP
Laravel中为什么不使用blpop取队列详析
Aug 01 PHP
PHP实现的无限分类类库定义与用法示例【基于thinkPHP】
Aug 06 PHP
php7新特性的理解和比较总结
Apr 14 PHP
php面向对象重点知识分享
Sep 27 PHP
Laravel实现通过blade模板引擎渲染视图
Oct 25 PHP
使用PHP+Redis实现延迟任务,实现自动取消订单功能
Nov 21 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
Gregarius中文日期格式问题解决办法
2008/04/22 PHP
php设计模式 Proxy (代理模式)
2011/06/26 PHP
PHP单例模式定义与使用实例详解
2017/02/06 PHP
php 调用ffmpeg获取视频信息的简单实现
2017/04/03 PHP
TP5框架实现一次选择多张图片并预览的方法示例
2020/04/04 PHP
javascript 写的一个简单的timer
2009/07/30 Javascript
javascript奇异的arguments分析
2010/10/20 Javascript
浅析LigerUi开发中谨慎载入common.css文件
2013/07/09 Javascript
js的alert样式如何更改如背景颜色
2014/01/22 Javascript
HTML5使用DeviceOrientation实现摇一摇功能
2015/06/05 Javascript
jQuery 局部div刷新和全局刷新方法总结
2016/10/05 Javascript
jQuery实现图片滑动效果
2017/03/08 Javascript
ES6新增数据结构WeakSet的用法详解
2017/08/07 Javascript
[js高手之路]设计模式系列课程-发布者,订阅者重构购物车的实例
2017/08/29 Javascript
Vue-Router进阶之滚动行为详解
2017/09/13 Javascript
在Vue中获取组件声明时的name属性方法
2018/09/12 Javascript
vue+iview动态渲染表格详解
2019/03/19 Javascript
基于原生JS封装的Modal对话框插件的示例代码
2020/09/09 Javascript
[07:54]DOTA2 MV《我的动力鞋》 ImbaTV 出品
2014/11/21 DOTA
Linux 发邮件磁盘空间监控(python)
2016/04/23 Python
python实现监控某个服务 服务崩溃即发送邮件报告
2018/06/21 Python
python实现排序算法解析
2018/09/08 Python
Python2.7版os.path.isdir中文路径返回false的解决方法
2019/06/21 Python
Python + OpenCV 实现LBP特征提取的示例代码
2019/07/11 Python
django创建超级用户时指定添加其它字段方式
2020/05/14 Python
如何解决cmd运行python提示不是内部命令
2020/07/01 Python
世界知名接发和假发品牌:Poze Hair
2017/03/08 全球购物
美国紧身牛仔裤品牌:NYDJ
2017/05/24 全球购物
一道输出判断型Java面试题
2014/10/01 面试题
期末考试动员演讲稿
2014/01/10 职场文书
研修心得体会
2014/09/04 职场文书
公务员检讨书
2014/11/01 职场文书
element多个表单校验的实现
2021/05/27 Javascript
使用Python的开发框架Brownie部署以太坊智能合约
2021/05/28 Python
JPA如何使用entityManager执行SQL并指定返回类型
2021/06/15 Java/Android
Python字符串的转义字符
2022/04/07 Python