ホームページ >バックエンド開発 >PHPチュートリアル >HP QR コードは、PHP QR コード生成ライブラリです。
HP QR Code は、QR コードを簡単に生成するために使用できる PHP QR コード生成ライブラリです。公式 Web サイトからダウンロードと複数のデモが提供されています。
http://phpqrcode.sourceforge.net/
公式サイト クラスライブラリをインストールしたら、phpqrcode.php を使用して QR コードを生成するだけです。 もちろん、PHP 環境が GD2 サポートを有効にする必要があります。
phpqrcode.php はキー png() メソッドを提供し、
パラメータ $text は 2 桁の情報テキストの生成を示します。
パラメータ $outfile は QR コード画像ファイルを出力するかどうかを示します。デフォルトは no です。 $level はフォールト トレランスを示します。割合、つまりカバーされる領域をまだ識別できるのは、L (QR_ECLEVEL_L、7%)、M (QR_ECLEVEL_M、15%)、Q (QR_ECLEVEL_Q、25%)、H (QR_ECLEVEL_H、30%) です。 );
パラメータ $ size は生成された画像のサイズを表し、デフォルトは 3 です。パラメータ $margin は QR コードの周囲の空白領域の間隔の値を表します。 QRコードを入力して表示させてください。
コードは次のとおりです:
public static function png($text, $outfile=false, $level=QR_ECLEVEL_L, $size=3, $margin=4, $saveandprint=false)
{
$enc = QRecode: :factory( $level, $size, $margin);
return $enc->encodePNG($text, $outfile, $saveandprint=false);
PHP QR コードの呼び出しは非常に簡単です。コンテンツ: 「http://www.cnblogs.com/txw1958/」 QR コード。
include 'phpqrcode.php'
QRcode::png('http://www.cnblogs.com/txw1958/'; );
実際のアプリケーションでは、宣伝効果を高めるためにQRコードの中央に独自のロゴを追加します。では、ロゴを含む QR コードを生成するにはどうすればよいでしょうか?実際、原理は非常に簡単です。まず、PHP QR コードを使用して QR コード画像を生成し、次に PHP の画像関連機能を使用して、生成された元の QR コード画像の中央に事前に用意されたロゴ画像を追加します。新しい QR コード画像を再生成します。コードは次のとおりです:
include 'phpqrcode.php';
$value = 'http://www.cnblogs.com/txw1958/'; //QR コードの内容
$errorCorrectionLevel = 'L';//エラー許容レベル
$matrixPointSize = 6;//画像サイズを生成
//QR コード画像を生成
QRcode::png($value, 'qrcode.png', $errorCorrectionLevel, $matrixPointSize, 2); logo.png';//用意されたロゴ画像
$QR = 'qrcode.png';//生成されたオリジナル QR コード画像
if ($logo !== FALSE) {
$QR = imagecreatefromstring(file_get_contents($ QR)) ;
$logo = imagecreatefromstring(file_get_contents($logo));
$QR_width = imagex($QR);//QR コード画像の幅
$QR_height = imagey($QR);//QR コード画像の高さ
$logo_width = imagex($logo);//ロゴ画像の幅
$logo_height = imagey($logo);//ロゴ画像の高さ
$logo_qr_width = $QR_width / 5;
$scale = $logo_width/$logo_qr_wid th; = $logo_height/$scale;
$from_width = ($QR_width - $logo_qr_width) / 2;
//画像を再構成し、サイズを変更します
imagecopyresampled($QR, $logo, $from_width, $from_width, 0, 0, $ logo_qr_width,
$ logo_qr_height, $ logo_height); "HelloWeixin.png" & GT ;'; 'phpqrcode.php'; txw1958/'; //QRコードの内容
$errorCorrectionLevel = 'L';//エラー許容レベル
$matrixPointSize = 6;//画像サイズを生成
//QRコード画像を生成
QRcode::png($value, ' qrcode.png', $errorCorrectionLevel, $matrixPointSize, 2);
$logo = 'logo.png' ;//用意されたロゴ画像
$QR = 'qrcode.png';//生成されたオリジナル QR コード画像
if ($ logo !== FALSE) {
$QR = imagecreatefromstring(file_get_contents($QR) );
$logo = imagecreatefromstring(file_get_contents($logo)); // QR コード画像の幅
$QR_height = imagey($QR);//QR コード画像の高さ
$logo_width = imagex($logo);//ロゴ画像の幅
$logo_height = imagey($logo);//ロゴ画像の高さ
$logo_qr_width = $QR_width / 5;
$scale = $logo_width/$logo_qr_width;
$from_width = ($QR_width - $logo_qr_width) / 2; imagecopyresampled($QR, $logo, $from_width, $from_width, 0, 0, $logo_qr_width,
$logo_qr_height, $logo_width, $logo_height)
}
//出力画像
imagepng($QR, 'helloweixin.png') );
echo ''
QR コードはある程度の耐障害性を備えているため、部分的にカバーされている場合でも、通常はデコードできます。 QR コードでは、途中までしかスキャン結果をデコードできません。これは、ジェネレーターがフォールト トレランスを向上させるために情報の一部を繰り返し表現するためです。これが、QR コードの途中にロゴ画像を追加する理由です。デコード結果には影響しません。
上記では、HP QR Code が PHP QR コード生成クラス ライブラリであることをさまざまな側面を含めて紹介しましたが、PHP チュートリアルに興味のある友人に役立つことを願っています。