فهرست منبع

:octocat: return QRMatrix created from result data

smiley 3 سال پیش
والد
کامیت
4258966a8d
1فایلهای تغییر یافته به همراه13 افزوده شده و 1 حذف شده
  1. 13 1
      src/Decoder/DecoderResult.php

+ 13 - 1
src/Decoder/DecoderResult.php

@@ -11,7 +11,8 @@
 
 
 namespace chillerlan\QRCode\Decoder;
 namespace chillerlan\QRCode\Decoder;
 
 
-use chillerlan\QRCode\Common\{EccLevel, MaskPattern, Version};
+use chillerlan\QRCode\Data\QRMatrix;
+use chillerlan\QRCode\Common\{BitBuffer, EccLevel, MaskPattern, Version};
 use function property_exists;
 use function property_exists;
 
 
 /**
 /**
@@ -83,4 +84,15 @@ final class DecoderResult{
 		return $this->structuredAppendParity >= 0 && $this->structuredAppendSequence >= 0;
 		return $this->structuredAppendParity >= 0 && $this->structuredAppendSequence >= 0;
 	}
 	}
 
 
+	/**
+	 * Returns a QRMatrix instance with thesettings and data of the reader result
+	 */
+	public function getMatrix():QRMatrix{
+		return (new QRMatrix($this->version, $this->eccLevel, $this->maskPattern))
+			->initFunctionalPatterns()
+			->writeCodewords(new BitBuffer($this->rawBytes))
+			->mask()
+		;
+	}
+
 }
 }