PHP GD库解析一张简单图片并输出
这里只演示一下2种颜色值的图片,简单描述下概念。
首先要安装下GD库。否则下面的代码运行不了。
$size = getimagesize('2.png'); // 获取图片大小
$res = imagecreatefrompng('2.png'); // 获取指定图片的资源对象for ($i = 0; $i < $size[1]; ++$i) {for ($j = 0; $j < $size[0]; ++$j) {$rgb = imagecolorat($res, $i, $j); // 获取坐标索引$rgbarray = imagecolorsforindex($res, $rgb); // 获取每个坐标的rgb颜色$sum = $rgbarray['red'] + $rgbarray['green'] + $rgbarray['blue']; // rgb颜色数值相加,主要为了区分/*** 演示图片有纯黑色 rgb(0,0,0) 颜色和其他颜色组成*/if ($sum == 0) {$data[$i][$j] = 1;} else {$data[$i][$j] = 2;}}
上述代码已经生成了整张图片每个像素的颜色块。
echo "<div style='border:1px solid #ccc;width: {$size[1]}px;height: {$size[0]}px;'>";for ($i = 0; $i < count ($data); $i++) {if (array_sum ($data[$i]) != 200) {for ($j = 0; $j < count ($data[$i]); $j++) {if ($data[$i][$j] == 1) {echo '<div style="width:1px;height:1px;background: #cccccc;float:left;"></div>';} else {echo '<div style="width:1px;height:1px;background: red;float:left;"></div>';}}}}echo "</div>";
通过上述代码就可以生成一个与指定图片一样的通过像素块堆积出来的图片。
similar_text 函数可以判断2个值的相似度。我再考虑是否可以使用a图片的二进制码和b图片的比对。判断相似度呢。
仅仅是个概念,还再继续研究,这样就可以实现文字识别的功能了。
PHP GD库解析一张简单图片并输出相关推荐
- php使用gd库将文字转换成图片
GD库是干什么用的呢!它是php处理图形的扩展库,GD库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成图片. <?php header("Content-type: ...
- 《Arduino》开发 之 TFT_eSPI 库 显示一张彩色图片
遇到的问题: 最近不少小伙伴遇到了 TFT_eSPI-master 库显示全彩图片时取模困难的问题,因为官方提供的图片数组是4位十六进制的数据(就像0xFFFF这样),然而我们用 Img2Lcd 取模 ...
- 7 张简单图片帮你弄懂企业级架构
想象一下你的铁杆 IT 极客与公司高管谈话的情景.他们会谈论些什么呢? 这听起来像一个呆伯特漫画...我知道...但它却突出了一个大问题 - 如何跨越业务和 IT 之间的鸿沟. 企业级架构是跨越这一鸿 ...
- php gd图片验证,php笔记之GD库图片创建/简单验证码
燕十八 公益PHP培训 课堂地址:YY频道88354001 学习社区:www.zixue.it php画图:比如说验证码,缩略图,加水印都要用到GD库,所以要开启gd2库,才能用 首先找到php.in ...
- PHP生产一个验证码图片,PHP使用GD库生成验证码图片,实现图片验证
本文记录从php 下载配置GD图片生成库 到使用该库生成验证码图片,网页上实现验证码. 使用技术: php使用GD库绘图 [php版本7.3] php session 缓存 实现最终效果: 一. 配置 ...
- php中GD库的简单使用
在php中需要图像处理的地方GD库会发挥重要的作用,php可以创建并处理包括GIF,PNG,JPEG,WBMP以及XPM在内的多种图像格式,简单的举几个例子: 1.用GD库会创建一块空白图片,然后绘制 ...
- Docker安装PHP-FPM5.6 (自带redis扩展,Mysql扩展,GD库扩展(支持JEPG))
打包一个安装好reids扩展,GD库扩展,mysql扩展的PHP-FPM(php 5.6)版本,镜像地址及安装步骤如下 1,下载镜像: docker pull zlilizh/phpfpm5.6:la ...
- (windows下)php-ini文件和开启gd库支持
本文主要是记录一下自己为了开启gd库的惨痛经历.(GD库是第三方函数库,可以在php中画图) 主要是针对从官网下载压缩包的安装方式.如果有权限问题,可以用管理员登录电脑去操作,一了百了,解决所有麻烦. ...
- php 将图片截取成3张,【php】php gd库怎么把一个图片裁剪成圆形的
微信的头像现在要加水印到一张图片上 弄成 圆形的 怎么裁剪呢 Imagick提供的有 gd库 怎么做呢 因为要在微信中生成这个图片发送给用户 所以必须是生成这样的图片的 css的border-radi ...
最新文章
- android标题 折叠效果,Android TextView仿微信可折叠效果
- ASP.NET中使用Global.asax文件
- doubleClick-v2-as3.0 学习笔记(2)--Video相关
- 二叉树的最近公共祖先—leetcode236
- C - 思考使用差分简化区间操作
- 淘宝如何保障业务稳定性——诺亚(Noah)自适应流控
- PHP Fatal error: Class 'com' not found in ... 的处理办法
- 第7篇 WPF C# 怎样定义类及其接口
- Flutter实战一Flutter聊天应用(九)
- 阿里乌镇大动作:平头哥开源 MCU 设计平台!
- Python 格式化输出 —— 小数转化为百分数
- java string 日期格式_Java 日期格式和String 转换
- L1-051 打折 (5 分)—团体程序设计天梯赛
- 有人培训设计模式,吾表示难以理解,因为根本没用
- 【RDMA】文档和教程和相关知识
- 实验5 类的继承、派生和多态
- 什么是意志力?如何提高意志力?
- 编程菜鸟到大鸟--代码积累
- 知网、维普、万方文献一网打尽免费下载,亲测好用哦!
- OpenKruise原理介绍和安装
热门文章
- springboot 关闭懒加载_SpringBoot新手入门篇
- 大数据正在改变客户服务的五种方式
- 【Xamarin挖墙脚系列:最重要的布局ListView】
- 高效率Oracle SQL语句
- kubenetes中port、targetPort、nodePort、containerPort的区别与联系
- java中的getfirst_Java LinkedList getFirst()用法及代码示例
- ubuntu php 树莓派,树莓派3 安装ROS环境(ubuntu mate 16.04+kinetic)
- java用easyexcel实现读取excell表格内容
- C语言二月天数计算,关于计算两个日期间天数的代码,大家来看看
- java communal_平台用英语怎么说