Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Erläuterung der Konvertierung von PHP-gescannten Bildern in Bitmaps und QR-Codes in Bitmaps

Detaillierte Erläuterung der Konvertierung von PHP-gescannten Bildern in Bitmaps und QR-Codes in Bitmaps

藏色散人
藏色散人nach vorne
2021-04-14 09:54:533418Durchsuche

In diesem Artikel erfahren Sie, wie Sie gescannte Bilder mit PHP in Bitmaps konvertieren und wie Sie QR-Codes in Bitmaps umwandeln. Freunde, die ihn benötigen, können ihn hoffentlich als Referenz verwenden.

    /**
     * 图片转点阵(黑白)
     * @param string $imgPath
     * @return array
     */
    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];
    }

Hinweis:

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

Dies gibt ein RGB-Array zurück, das mit dem $white-Array identisch ist. Da der QR-Code nur Schwarz und Weiß hat, treffe ich hier nur eine Schwarz-Weiß-Beurteilung 0. Wenn Ihr Bild drei über der Artenebene unterstützt, können Sie hier Urteile fällen und andere Zahlen zusammenfügen die oben von PHP generierten Daten mit Ihren eigenen Daten. Das ist es

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Konvertierung von PHP-gescannten Bildern in Bitmaps und QR-Codes in Bitmaps. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:learnku.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen