111

Web サイトで QR コードを生成しようとしています。彼らがしなければならないことは、私のサイトの変数が提供する URL を含めることだけです。これを行う最も簡単な方法は何ですか?

4

7 に答える 7

218

@abaumgによって投稿された QR コード ライブラリに加えて、Google はQR コード API QR Codes APIリンクの更新について@Toukakoukan感謝します。

これを使用するには、基本的に:

https://chart.googleapis.com/chart?chs=300x300&cht=qr&chl=http%3A%2F%2Fwww.google.com%2F&choe=UTF-8
  • 300x300は、生成する QR 画像のサイズです。
  • これchlは、QR コードに変更する URL エンコードされた文字列です。
  • thechoeは (オプションの) エンコーディングです。

上記のリンクは詳細を提供しますが、それを使用するには、src次のように、操作された値を指す画像を指定するだけです。

<img src="https://chart.googleapis.com/chart?chs=300x300&cht=qr&chl=http%3A%2F%2Fwww.google.com%2F&choe=UTF-8" title="Link to Google.com" />

デモ:

于 2011-05-09T22:53:19.103 に答える
101

PHP で QR コードを生成する最も簡単な方法は、phpqrcode ライブラリです。

于 2011-05-09T22:49:27.553 に答える
19

endroid /QrCode ライブラリは使いやすく、よく管理されており、composer を使用してインストールできます。Symfony で直接使用するためのバンドルもあります。

インストール:

$ composer require endroid/qrcode

使用法 :

<?php

use Endroid\QrCode\QrCode;

$qrCode = new QrCode();
$qrCode
    ->setText('Life is too short to be generating QR codes')
    ->setSize(300)
    ->setPadding(10)
    ->setErrorCorrection('high')
    ->setForegroundColor(array('r' => 0, 'g' => 0, 'b' => 0, 'a' => 0))
    ->setBackgroundColor(array('r' => 255, 'g' => 255, 'b' => 255, 'a' => 0))
    ->setLabel('Scan the code')
    ->setLabelFontSize(16)
    ->setImageType(QrCode::IMAGE_TYPE_PNG)
;

// now we can directly output the qrcode
header('Content-Type: '.$qrCode->getContentType());
$qrCode->render();

// or create a response object
$response = new Response($qrCode->get(), 200, array('Content-Type' => $qrCode->getContentType()));

生成された QR コード

于 2016-11-23T12:16:55.750 に答える
6

私はしばらくGoogle qrcode apiを使用していましたが、生成された画像にアクセスするにはインターネットに接続する必要があるため、これはあまり好きではありませんでした.

コマンドラインで少し調べてみたところ、Linux にはqrencodeqr コードを生成するためのコマンドライン ツールがあることがわかりました。

私はこの小さなスクリプトを書きました。良い点は、生成された画像のサイズが 1KB 未満であることです。提供されるデータは単なる URL です。

$url = ($_SERVER['HTTPS'] ? "https://" : "http://").$_SERVER['HTTP_HOST'].'/profile.php?id='.$_GET['pid'];
$img = shell_exec('qrencode --output=- -m=1 '.escapeshellarg($url));

$imgData = "data:image/png;base64,".base64_encode($img);

次に、html で画像を読み込みます。

<img class="emrQRCode" src="<?=$imgData ?>" />

インストールしておく必要があります。[Linux 上のほとんどのイメージング アプリは、気付かないうちに内部にインストールされていたでしょう。

于 2014-09-24T10:28:33.213 に答える
5

問題は PHP を使用して QR コードを生成する方法であることは承知していますが、純粋な JavaScript でこれを行う Web サイトのコードを生成する方法を探している他の人にとっては、良い方法です。jquery-qrcode jquery プラグインはそれをうまく行います。

于 2014-02-05T00:07:09.510 に答える