svg.php 1.1 KB

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