最近在弄圖片處理, 看網上在線生成的四色二維碼挺有趣的。 本身弄了一個。git
總體思路:github
用composer
的qrcode包生成一個黑白二維碼。composer
使用imagecolorat
獲取當前像素的顏色spa
若是當前顏色是黑色, 就使用imagesetpixel
填充彩色點code
其中一個比較有意思的就是須要判斷當前像素點處於哪一塊區域blog
/** * 獲取當前所在像素點的位置 * $x, $y 是當前像素位置, * $block 是二維碼有多少個色塊,好比 4 個, 9個 */ function getLocationIndex($x, $y, $block) { $x_index = (int) floor($x / ($img_width / $block)); $y_index = (int) floor($y / ($img_height / $block)); // 接下來的這個 $index 就是當前像素點算出來處於第幾個色塊 $index = $x_index + (2 * $y_index); return $index; }
效果圖:
圖片
第三個是從個人頭像中複製過來的。 是否是還能夠辨認出一些
圖片處理
而後我進行了封裝,代碼也放到了Github
上面, 支持composer
安裝,又須要的朋友能夠看一下。順便來個star
最後祝你們每一天都是快樂*\(^_^)/*
github地址:https://github.com/WaitMoonMan/qrcodeplusrem