栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > PHP

详解PHP扫描图片转点阵、二维码转点阵

PHP 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力
本篇文章给大家介绍PHP扫描图片转点阵 二维码转点阵,有一定的参考价值,需要的朋友可以参考一下,希望对大家有所帮助。

    
    function imgToLattice(string $imgPath): array
    {
 $size = getimagesize($imgPath);// 得到图片的信息
 $im = imagecreatefrompng($imgPath);// 創建一張圖片
 // 储存二进制数组
 $lattice = [];
 $white = [
     'red' => 255,
     'green' => 255,
     'blue' => 255,
     'alpha' => 0,
 ];
 for ($i = 0; $i < $size[1]; ++ $i) {
     $lattice[$i] = '';
     for ($j = 0; $j < $size[0]; ++$j) {
  $rgb = imagecolorat($im, $j, $i);   //取得某像素的颜色索引值
  $rgbArr = imagecolorsforindex($im, $rgb);
  if ($white === $rgbArr){
      $lattice[$i] .= 0;
  }else{
      $lattice[$i] .= 1;
  }
     }
 }

 return [$lattice, $size];
    }

注解:

$rgbArr = imagecolorsforindex($im, $rgb);

这里返回一个RGB数组,跟$white数组一样,我因为二维码只有黑白,所以这里只做了黑白判断,黑就是1,白就是0,如果你的图片支持三种级以上,这里可以做判断,拼接其他数字

if ($white === $rgbArr){
    $lattice[$i] .= 0;}else{
    $lattice[$i] .= 1;}

打印出来效果:



转成HTML:



参考代码:
$this->image就上面PHP生成的数据,替换成自己的就行了

"; foreach ($this->image as $item) { $str .= $this->getBinaryOutRow($item); } $str .= "

"; return $str; } function getBinaryOutRow(string $string): string { $strLen = mb_strlen($string); $html = [ "

", "

", ]; $str="

"; for($i=0;$i<$strLen;$i++) { $str .= $html[$string[$i]]; } $str.="

"; return $str; } public function getHtml() { echo " 测试 .k { margin: 0px; padding: 0px; width: 296px; height:128px; background-color: #F8F8F8; float: none; border: 2px solid #999999; } .g { margin: 0px; padding: 0px; width: 100%; float: none; height: 1px; } .h{ background-color: #000000; } .g p{ margin: 0px; padding: 0px; width: 1px; float: left; height: 1px; position: relative; } .g p.h{ background-color: #000000; } "; } public function getFoot() { echo ' '; }}$lattice = new LatticeOutput();$lattice->getHtml();echo $lattice->getBinaryOutHtml();$lattice->getFoot();

【推荐学习:PHP视频教程】

以上就是详解PHP扫描图片转点阵、二维码转点阵的详细内容,更多请关注考高分网其它相关文章!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/262514.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号