45 lines
1.1 KiB
PHP
45 lines
1.1 KiB
PHP
|
<?php
|
||
|
/**
|
||
|
*
|
||
|
* @filesource imageWithLogo.php
|
||
|
* @created 18.11.2020
|
||
|
* @author smiley <smiley@chillerlan.net>
|
||
|
* @copyright 2020 smiley
|
||
|
* @license MIT
|
||
|
*/
|
||
|
|
||
|
namespace chillerlan\QRCodeExamples;
|
||
|
|
||
|
use chillerlan\QRCode\{QRCode, QROptions};
|
||
|
|
||
|
require_once __DIR__.'/../vendor/autoload.php';
|
||
|
|
||
|
$data = 'https://www.youtube.com/watch?v=DLzxrzFCyOs&t=43s';
|
||
|
/**
|
||
|
* @property int $logoWidth
|
||
|
* @property int $logoHeight
|
||
|
*
|
||
|
* @noinspection PhpIllegalPsrClassPathInspection
|
||
|
*/
|
||
|
class LogoOptions extends QROptions{
|
||
|
protected $logoWidth;
|
||
|
protected $logoHeight;
|
||
|
}
|
||
|
|
||
|
$options = new LogoOptions;
|
||
|
|
||
|
$options->version = 7;
|
||
|
$options->eccLevel = QRCode::ECC_H;
|
||
|
$options->imageBase64 = false;
|
||
|
$options->logoWidth = 13;
|
||
|
$options->logoHeight = 13;
|
||
|
$options->scale = 5;
|
||
|
$options->imageTransparent = false;
|
||
|
|
||
|
header('Content-type: image/png');
|
||
|
|
||
|
$qrOutputInterface = new QRImageWithLogo($options, (new QRCode($options))->getMatrix($data));
|
||
|
|
||
|
// dump the output, with an additional logo
|
||
|
echo $qrOutputInterface->dump(null, __DIR__.'/octocat.png');
|