svg.php 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. <?php
  2. /**
  3. *
  4. * @filesource svg.php
  5. * @created 21.12.2017
  6. * @author Smiley <smiley@chillerlan.net>
  7. * @copyright 2017 Smiley
  8. * @license MIT
  9. */
  10. use chillerlan\QRCode\{QRCode, QROptions};
  11. require_once __DIR__.'/../vendor/autoload.php';
  12. $data = 'https://www.youtube.com/watch?v=DLzxrzFCyOs&t=43s';
  13. $options = new QROptions([
  14. 'version' => 5,
  15. 'outputType' => QRCode::OUTPUT_MARKUP_SVG,
  16. 'eccLevel' => QRCode::ECC_L,
  17. 'scale' => 10,
  18. 'moduleValues' => [
  19. // finder
  20. 1536 => '#A71111', // dark (true)
  21. 6 => '#FFBFBF', // light (false)
  22. // alignment
  23. 2560 => '#A70364',
  24. 10 => '#FFC9C9',
  25. // timing
  26. 3072 => '#98005D',
  27. 12 => '#FFB8E9',
  28. // format
  29. 3584 => '#003804',
  30. 14 => '#00FB12',
  31. // version
  32. 4096 => '#650098',
  33. 16 => '#E0B8FF',
  34. // data
  35. 1024 => '#4A6000',
  36. 4 => '#ECF9BE',
  37. // darkmodule
  38. 512 => '#080063',
  39. // separator
  40. 8 => '#AFBFBF',
  41. // quietzone
  42. 18 => '#FFFFFF',
  43. ],
  44. ]);
  45. header('Content-type: image/svg+xml');
  46. echo (new QRCode($options))->render($data);