Application.html 44 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <title>Documentation</title>
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <base href="../">
  8. <link rel="icon" href="images/favicon.ico"/>
  9. <link rel="stylesheet" href="css/normalize.css">
  10. <link rel="stylesheet" href="css/base.css">
  11. <link rel="preconnect" href="https://fonts.gstatic.com">
  12. <link href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@100;200;300;400;600;700&display=swap" rel="stylesheet">
  13. <link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
  14. <link rel="stylesheet" href="css/template.css">
  15. <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
  16. <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
  17. <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
  18. <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
  19. <script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
  20. <script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
  21. <script src="js/template.js"></script>
  22. <script src="js/search.js"></script>
  23. <script defer src="js/searchIndex.js"></script>
  24. </head>
  25. <body id="top">
  26. <header class="phpdocumentor-header phpdocumentor-section">
  27. <h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">Documentation</a></h1>
  28. <input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
  29. <label class="phpdocumentor-header__menu-icon" for="menu-button">
  30. <i class="fas fa-bars"></i>
  31. </label>
  32. <section data-search-form class="phpdocumentor-search">
  33. <label>
  34. <span class="visually-hidden">Search for</span>
  35. <svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
  36. <circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
  37. <line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
  38. </svg>
  39. <input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
  40. </label>
  41. </section>
  42. <nav class="phpdocumentor-topnav">
  43. <ul class="phpdocumentor-topnav__menu">
  44. <li class="phpdocumentor-topnav__menu-item -menu">
  45. <a href="https://php-qrcode.readthedocs.io">
  46. <span>
  47. User Manual
  48. </span>
  49. </a>
  50. </li>
  51. <li class="phpdocumentor-topnav__menu-item -social">
  52. <a href="https://github.com/chillerlan/php-qrcode">
  53. <span>
  54. <i class="fab fa-github"></i>
  55. </span>
  56. </a>
  57. </li>
  58. <li class="phpdocumentor-topnav__menu-item -social">
  59. <a href="https://github.com/chillerlan/php-qrcode/discussions">
  60. <span>
  61. <i class="fas fa-envelope-open-text"></i>
  62. </span>
  63. </a>
  64. </li>
  65. </ul>
  66. </nav>
  67. </header>
  68. <main class="phpdocumentor">
  69. <div class="phpdocumentor-section">
  70. <input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
  71. <label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
  72. Menu
  73. </label>
  74. <aside class="phpdocumentor-column -three phpdocumentor-sidebar">
  75. <section class="phpdocumentor-sidebar__category -namespaces">
  76. <h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
  77. <h4 class="phpdocumentor-sidebar__root-namespace">
  78. <a href="namespaces/chillerlan.html" class="">chillerlan</a>
  79. </h4>
  80. <ul class="phpdocumentor-list">
  81. <li>
  82. <a href="namespaces/chillerlan-qrcode.html" class="">QRCode</a>
  83. </li>
  84. <li>
  85. <a href="namespaces/chillerlan-qrcodetest.html" class="">QRCodeTest</a>
  86. </li>
  87. </ul>
  88. </section>
  89. <section class="phpdocumentor-sidebar__category -packages">
  90. <h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
  91. <h4 class="phpdocumentor-sidebar__root-namespace">
  92. <a href="packages/Application.html" class="-active">Application</a>
  93. </h4>
  94. </section>
  95. <section class="phpdocumentor-sidebar__category -reports">
  96. <h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
  97. <h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
  98. <h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
  99. <h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
  100. </section>
  101. <section class="phpdocumentor-sidebar__category -indices">
  102. <h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
  103. <h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
  104. </section>
  105. </aside>
  106. <div class="phpdocumentor-column -nine phpdocumentor-content">
  107. <section>
  108. <ul class="phpdocumentor-breadcrumbs">
  109. </ul>
  110. <article class="phpdocumentor-element -package">
  111. <h2 class="phpdocumentor-content__title">Application</h2>
  112. <h3 id="toc">
  113. Table of Contents
  114. <a href="packages/Application.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
  115. </h3>
  116. <h4 id="toc-interfaces">
  117. Interfaces
  118. <a href="packages/Application.html#toc-interfaces" class="headerlink"><i class="fas fa-link"></i></a>
  119. </h4>
  120. <dl class="phpdocumentor-table-of-contents">
  121. <dt class="phpdocumentor-table-of-contents__entry -interface"><a href="classes/chillerlan-QRCode-Common-LuminanceSourceInterface.html"><abbr title="\chillerlan\QRCode\Common\LuminanceSourceInterface">LuminanceSourceInterface</abbr></a></dt><dd>Interface for the luminance sources</dd> <dt class="phpdocumentor-table-of-contents__entry -interface"><a href="classes/chillerlan-QRCode-Data-QRDataModeInterface.html"><abbr title="\chillerlan\QRCode\Data\QRDataModeInterface">QRDataModeInterface</abbr></a></dt><dd>Specifies the methods reqired for the data modules (Number, Alphanum, Byte and Kanji)</dd> <dt class="phpdocumentor-table-of-contents__entry -interface"><a href="classes/chillerlan-QRCode-Output-QROutputInterface.html"><abbr title="\chillerlan\QRCode\Output\QROutputInterface">QROutputInterface</abbr></a></dt><dd>Converts the data matrix into readable output</dd> </dl>
  122. <h4 id="toc-classes">
  123. Classes
  124. <a href="packages/Application.html#toc-classes" class="headerlink"><i class="fas fa-link"></i></a>
  125. </h4>
  126. <dl class="phpdocumentor-table-of-contents">
  127. <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Common-BitBuffer.html"><abbr title="\chillerlan\QRCode\Common\BitBuffer">BitBuffer</abbr></a></dt><dd>Holds the raw binary data</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Common-EccLevel.html"><abbr title="\chillerlan\QRCode\Common\EccLevel">EccLevel</abbr></a></dt><dd>This class encapsulates the four error correction levels defined by the QR code standard.</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Common-ECICharset.html"><abbr title="\chillerlan\QRCode\Common\ECICharset">ECICharset</abbr></a></dt><dd>ISO/IEC 18004:2000 - 8.4.1 Extended Channel Interpretation (ECI) Mode</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Common-GDLuminanceSource.html"><abbr title="\chillerlan\QRCode\Common\GDLuminanceSource">GDLuminanceSource</abbr></a></dt><dd>This class is used to help decode images from files which arrive as GD Resource
  128. It does not support rotation.</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Common-GenericGFPoly.html"><abbr title="\chillerlan\QRCode\Common\GenericGFPoly">GenericGFPoly</abbr></a></dt><dd>Represents a polynomial whose coefficients are elements of a GF.</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Common-GF256.html"><abbr title="\chillerlan\QRCode\Common\GF256">GF256</abbr></a></dt><dd>This class contains utility methods for performing mathematical operations over
  129. the Galois Fields. Operations use a given primitive polynomial in calculations.</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Common-IMagickLuminanceSource.html"><abbr title="\chillerlan\QRCode\Common\IMagickLuminanceSource">IMagickLuminanceSource</abbr></a></dt><dd>This class is used to help decode images from files which arrive as Imagick Resource
  130. It does not support rotation.</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Common-LuminanceSourceAbstract.html"><abbr title="\chillerlan\QRCode\Common\LuminanceSourceAbstract">LuminanceSourceAbstract</abbr></a></dt><dd>The purpose of this class hierarchy is to abstract different bitmap implementations across
  131. platforms into a standard interface for requesting greyscale luminance values.</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Common-MaskPattern.html"><abbr title="\chillerlan\QRCode\Common\MaskPattern">MaskPattern</abbr></a></dt><dd>ISO/IEC 18004:2000 Section 8.8.1
  132. ISO/IEC 18004:2000 Section 8.8.2 - Evaluation of masking results</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Common-Mode.html"><abbr title="\chillerlan\QRCode\Common\Mode">Mode</abbr></a></dt><dd>Data mode information - ISO 18004:2006, 6.4.1, Tables 2 and 3</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Common-Version.html"><abbr title="\chillerlan\QRCode\Common\Version">Version</abbr></a></dt><dd>Version related tables and methods</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Data-AlphaNum.html"><abbr title="\chillerlan\QRCode\Data\AlphaNum">AlphaNum</abbr></a></dt><dd>Alphanumeric mode: 0 to 9, A to Z, space, $ % * + - . / :</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Data-Byte.html"><abbr title="\chillerlan\QRCode\Data\Byte">Byte</abbr></a></dt><dd>8-bit Byte mode, ISO-8859-1 or UTF-8</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Data-ECI.html"><abbr title="\chillerlan\QRCode\Data\ECI">ECI</abbr></a></dt><dd>Adds an ECI Designator</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Data-Hanzi.html"><abbr title="\chillerlan\QRCode\Data\Hanzi">Hanzi</abbr></a></dt><dd>Hanzi (simplified Chinese) mode, GBT18284-2000: 13-bit double-byte characters from the GB2312/GB18030 character set</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Data-Kanji.html"><abbr title="\chillerlan\QRCode\Data\Kanji">Kanji</abbr></a></dt><dd>Kanji mode: 13-bit double-byte characters from the Shift-JIS character set</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Data-Number.html"><abbr title="\chillerlan\QRCode\Data\Number">Number</abbr></a></dt><dd>Numeric mode: decimal digits 0 to 9</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Data-QRCodeDataException.html"><abbr title="\chillerlan\QRCode\Data\QRCodeDataException">QRCodeDataException</abbr></a></dt><dd>An exception container</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Data-QRData.html"><abbr title="\chillerlan\QRCode\Data\QRData">QRData</abbr></a></dt><dd>Processes the binary data and maps it on a QRMatrix which is then being returned</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Data-QRDataModeAbstract.html"><abbr title="\chillerlan\QRCode\Data\QRDataModeAbstract">QRDataModeAbstract</abbr></a></dt><dd>abstract methods for the several data modes</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Data-QRMatrix.html"><abbr title="\chillerlan\QRCode\Data\QRMatrix">QRMatrix</abbr></a></dt><dd>Holds an array representation of the final QR Code that contains numerical values for later output modifications;
  133. maps the ECC coded binary data and applies the mask pattern</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Data-ReedSolomonEncoder.html"><abbr title="\chillerlan\QRCode\Data\ReedSolomonEncoder">ReedSolomonEncoder</abbr></a></dt><dd>Reed-Solomon encoding - ISO/IEC 18004:2000 Section 8.5 ff</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Decoder-Binarizer.html"><abbr title="\chillerlan\QRCode\Decoder\Binarizer">Binarizer</abbr></a></dt><dd>This class implements a local thresholding algorithm, which while slower than the
  134. GlobalHistogramBinarizer, is fairly efficient for what it does. It is designed for
  135. high frequency images of barcodes with black data on white backgrounds. For this application,
  136. it does a much better job than a global blackpoint with severe shadows and gradients.</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Decoder-BitMatrix.html"><abbr title="\chillerlan\QRCode\Decoder\BitMatrix">BitMatrix</abbr></a></dt><dd>Extended QRMatrix to map read data from the Binarizer</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Decoder-Decoder.html"><abbr title="\chillerlan\QRCode\Decoder\Decoder">Decoder</abbr></a></dt><dd>The main class which implements QR Code decoding -- as opposed to locating and extracting
  137. the QR Code from an image.</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Decoder-DecoderResult.html"><abbr title="\chillerlan\QRCode\Decoder\DecoderResult">DecoderResult</abbr></a></dt><dd>Encapsulates the result of decoding a matrix of bits. This typically
  138. applies to 2D barcode formats. For now, it contains the raw bytes obtained
  139. as well as a String interpretation of those bytes, if applicable.</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Decoder-QRCodeDecoderException.html"><abbr title="\chillerlan\QRCode\Decoder\QRCodeDecoderException">QRCodeDecoderException</abbr></a></dt><dd>An exception container</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Decoder-ReedSolomonDecoder.html"><abbr title="\chillerlan\QRCode\Decoder\ReedSolomonDecoder">ReedSolomonDecoder</abbr></a></dt><dd>Implements Reed-Solomon decoding</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Detector-AlignmentPattern.html"><abbr title="\chillerlan\QRCode\Detector\AlignmentPattern">AlignmentPattern</abbr></a></dt><dd>Encapsulates an alignment pattern, which are the smaller square patterns found in
  140. all but the simplest QR Codes.</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Detector-AlignmentPatternFinder.html"><abbr title="\chillerlan\QRCode\Detector\AlignmentPatternFinder">AlignmentPatternFinder</abbr></a></dt><dd>This class attempts to find alignment patterns in a QR Code. Alignment patterns look like finder
  141. patterns but are smaller and appear at regular intervals throughout the image.</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Detector-Detector.html"><abbr title="\chillerlan\QRCode\Detector\Detector">Detector</abbr></a></dt><dd>Encapsulates logic that can detect a QR Code in an image, even if the QR Code
  142. is rotated or skewed, or partially obscured.</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Detector-FinderPattern.html"><abbr title="\chillerlan\QRCode\Detector\FinderPattern">FinderPattern</abbr></a></dt><dd>Encapsulates a finder pattern, which are the three square patterns found in
  143. the corners of QR Codes. It also encapsulates a count of similar finder patterns,
  144. as a convenience to the finder&#039;s bookkeeping.</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Detector-FinderPatternFinder.html"><abbr title="\chillerlan\QRCode\Detector\FinderPatternFinder">FinderPatternFinder</abbr></a></dt><dd>This class attempts to find finder patterns in a QR Code. Finder patterns are the square
  145. markers at three corners of a QR Code.</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Detector-GridSampler.html"><abbr title="\chillerlan\QRCode\Detector\GridSampler">GridSampler</abbr></a></dt><dd>Implementations of this class can, given locations of finder patterns for a QR code in an
  146. image, sample the right points in the image to reconstruct the QR code, accounting for
  147. perspective distortion. It is abstracted since it is relatively expensive and should be allowed
  148. to take advantage of platform-specific optimized implementations, like Sun&#039;s Java Advanced
  149. Imaging library, but which may not be available in other environments such as J2ME, and vice
  150. versa.</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Detector-PerspectiveTransform.html"><abbr title="\chillerlan\QRCode\Detector\PerspectiveTransform">PerspectiveTransform</abbr></a></dt><dd>This class implements a perspective transform in two dimensions. Given four source and four
  151. destination points, it will compute the transformation implied between them. The code is based
  152. directly upon section 3.4.2 of George Wolberg&#039;s &quot;Digital Image Warping&quot;; see pages 54-56.</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Detector-QRCodeDetectorException.html"><abbr title="\chillerlan\QRCode\Detector\QRCodeDetectorException">QRCodeDetectorException</abbr></a></dt><dd>An exception container</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Detector-ResultPoint.html"><abbr title="\chillerlan\QRCode\Detector\ResultPoint">ResultPoint</abbr></a></dt><dd>Encapsulates a point of interest in an image containing a barcode. Typically, this
  153. would be the location of a finder pattern or the corner of the barcode, for example.</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Output-QRCodeOutputException.html"><abbr title="\chillerlan\QRCode\Output\QRCodeOutputException">QRCodeOutputException</abbr></a></dt><dd>An exception container</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Output-QREps.html"><abbr title="\chillerlan\QRCode\Output\QREps">QREps</abbr></a></dt><dd>Encapsulated Postscript (EPS) output</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Output-QRFpdf.html"><abbr title="\chillerlan\QRCode\Output\QRFpdf">QRFpdf</abbr></a></dt><dd>QRFpdf output module (requires fpdf)</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Output-QRGdImage.html"><abbr title="\chillerlan\QRCode\Output\QRGdImage">QRGdImage</abbr></a></dt><dd>Converts the matrix into GD images, raw or base64 output (requires ext-gd)</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Output-QRGdImageAVIF.html"><abbr title="\chillerlan\QRCode\Output\QRGdImageAVIF">QRGdImageAVIF</abbr></a></dt><dd>GDImage avif output</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Output-QRGdImageBMP.html"><abbr title="\chillerlan\QRCode\Output\QRGdImageBMP">QRGdImageBMP</abbr></a></dt><dd>GdImage bmp output</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Output-QRGdImageGIF.html"><abbr title="\chillerlan\QRCode\Output\QRGdImageGIF">QRGdImageGIF</abbr></a></dt><dd>GdImage gif output</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Output-QRGdImageJPEG.html"><abbr title="\chillerlan\QRCode\Output\QRGdImageJPEG">QRGdImageJPEG</abbr></a></dt><dd>GdImage jpeg output</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Output-QRGdImagePNG.html"><abbr title="\chillerlan\QRCode\Output\QRGdImagePNG">QRGdImagePNG</abbr></a></dt><dd>GdImage png output</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Output-QRGdImageWEBP.html"><abbr title="\chillerlan\QRCode\Output\QRGdImageWEBP">QRGdImageWEBP</abbr></a></dt><dd>GdImage webp output</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Output-QRImagick.html"><abbr title="\chillerlan\QRCode\Output\QRImagick">QRImagick</abbr></a></dt><dd>ImageMagick output module (requires ext-imagick)</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Output-QRInterventionImage.html"><abbr title="\chillerlan\QRCode\Output\QRInterventionImage">QRInterventionImage</abbr></a></dt><dd>intervention/image (GD/ImageMagick) output</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Output-QRMarkup.html"><abbr title="\chillerlan\QRCode\Output\QRMarkup">QRMarkup</abbr></a></dt><dd>Abstract for markup types: HTML, SVG, ... XML anyone?</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Output-QRMarkupHTML.html"><abbr title="\chillerlan\QRCode\Output\QRMarkupHTML">QRMarkupHTML</abbr></a></dt><dd>HTML output (a cheap markup substitute when SVG is not available or not an option)</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Output-QRMarkupSVG.html"><abbr title="\chillerlan\QRCode\Output\QRMarkupSVG">QRMarkupSVG</abbr></a></dt><dd>SVG output</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Output-QRMarkupXML.html"><abbr title="\chillerlan\QRCode\Output\QRMarkupXML">QRMarkupXML</abbr></a></dt><dd>XML/XSLT output</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Output-QROutputAbstract.html"><abbr title="\chillerlan\QRCode\Output\QROutputAbstract">QROutputAbstract</abbr></a></dt><dd>common output abstract</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Output-QRStringJSON.html"><abbr title="\chillerlan\QRCode\Output\QRStringJSON">QRStringJSON</abbr></a></dt><dd>JSON Output</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-Output-QRStringText.html"><abbr title="\chillerlan\QRCode\Output\QRStringText">QRStringText</abbr></a></dt><dd>String/plaintext output (for CLI etc.)</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-QRCode.html"><abbr title="\chillerlan\QRCode\QRCode">QRCode</abbr></a></dt><dd>Turns a text string into a Model 2 QR Code</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-QRCodeException.html"><abbr title="\chillerlan\QRCode\QRCodeException">QRCodeException</abbr></a></dt><dd>An exception container</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCode-QROptions.html"><abbr title="\chillerlan\QRCode\QROptions">QROptions</abbr></a></dt><dd>The QRCode settings container</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Common-BitBufferTest.html"><abbr title="\chillerlan\QRCodeTest\Common\BitBufferTest">BitBufferTest</abbr></a></dt><dd>BitBuffer coverage test</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Common-EccLevelTest.html"><abbr title="\chillerlan\QRCodeTest\Common\EccLevelTest">EccLevelTest</abbr></a></dt><dd>EccLevel coverage test</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Common-ECICharsetTest.html"><abbr title="\chillerlan\QRCodeTest\Common\ECICharsetTest">ECICharsetTest</abbr></a></dt> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Common-MaskPatternTest.html"><abbr title="\chillerlan\QRCodeTest\Common\MaskPatternTest">MaskPatternTest</abbr></a></dt> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Common-ModeTest.html"><abbr title="\chillerlan\QRCodeTest\Common\ModeTest">ModeTest</abbr></a></dt><dd>Mode coverage test</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Common-VersionTest.html"><abbr title="\chillerlan\QRCodeTest\Common\VersionTest">VersionTest</abbr></a></dt><dd>Version coverage test</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Data-AlphaNumTest.html"><abbr title="\chillerlan\QRCodeTest\Data\AlphaNumTest">AlphaNumTest</abbr></a></dt><dd>Tests the AlphaNum class</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Data-ByteTest.html"><abbr title="\chillerlan\QRCodeTest\Data\ByteTest">ByteTest</abbr></a></dt><dd>Tests the Byte class</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Data-DataInterfaceTestAbstract.html"><abbr title="\chillerlan\QRCodeTest\Data\DataInterfaceTestAbstract">DataInterfaceTestAbstract</abbr></a></dt><dd>The data interface test abstract</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Data-ECITest.html"><abbr title="\chillerlan\QRCodeTest\Data\ECITest">ECITest</abbr></a></dt><dd>Tests the ECI class</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Data-HanziTest.html"><abbr title="\chillerlan\QRCodeTest\Data\HanziTest">HanziTest</abbr></a></dt><dd>Tests the Hanzi/GB2312 class</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Data-KanjiTest.html"><abbr title="\chillerlan\QRCodeTest\Data\KanjiTest">KanjiTest</abbr></a></dt><dd>Tests the Kanji class</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Data-NumberTest.html"><abbr title="\chillerlan\QRCodeTest\Data\NumberTest">NumberTest</abbr></a></dt><dd>Tests the Number class</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Data-QRDataTest.html"><abbr title="\chillerlan\QRCodeTest\Data\QRDataTest">QRDataTest</abbr></a></dt> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Data-QRMatrixTest.html"><abbr title="\chillerlan\QRCodeTest\Data\QRMatrixTest">QRMatrixTest</abbr></a></dt><dd>Tests the QRMatrix class</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Output-QREpsTest.html"><abbr title="\chillerlan\QRCodeTest\Output\QREpsTest">QREpsTest</abbr></a></dt><dd>Tests the QREps output class</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Output-QRFpdfTest.html"><abbr title="\chillerlan\QRCodeTest\Output\QRFpdfTest">QRFpdfTest</abbr></a></dt><dd>Tests the QRFpdf output class</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Output-QRGdImageAVIFTest.html"><abbr title="\chillerlan\QRCodeTest\Output\QRGdImageAVIFTest">QRGdImageAVIFTest</abbr></a></dt><dd>Tests the QRGdImage output classes</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Output-QRGdImageBMPTest.html"><abbr title="\chillerlan\QRCodeTest\Output\QRGdImageBMPTest">QRGdImageBMPTest</abbr></a></dt><dd>Tests the QRGdImage output classes</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Output-QRGdImageGIFTest.html"><abbr title="\chillerlan\QRCodeTest\Output\QRGdImageGIFTest">QRGdImageGIFTest</abbr></a></dt><dd>Tests the QRGdImage output classes</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Output-QRGdImageJPGTest.html"><abbr title="\chillerlan\QRCodeTest\Output\QRGdImageJPGTest">QRGdImageJPGTest</abbr></a></dt><dd>Tests the QRGdImage output classes</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Output-QRGdImagePNGTest.html"><abbr title="\chillerlan\QRCodeTest\Output\QRGdImagePNGTest">QRGdImagePNGTest</abbr></a></dt><dd>Tests the QRGdImage output classes</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Output-QRGdImageTestAbstract.html"><abbr title="\chillerlan\QRCodeTest\Output\QRGdImageTestAbstract">QRGdImageTestAbstract</abbr></a></dt><dd>Tests the QRGdImage output classes</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Output-QRGdImageWEBPTest.html"><abbr title="\chillerlan\QRCodeTest\Output\QRGdImageWEBPTest">QRGdImageWEBPTest</abbr></a></dt><dd>Tests the QRGdImage output classes</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Output-QRImagickTest.html"><abbr title="\chillerlan\QRCodeTest\Output\QRImagickTest">QRImagickTest</abbr></a></dt><dd>Tests the QRImagick output class</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Output-QRInterventionImageTest.html"><abbr title="\chillerlan\QRCodeTest\Output\QRInterventionImageTest">QRInterventionImageTest</abbr></a></dt><dd>Tests the QRInterventionImage output class</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Output-QRMarkupHTMLTest.html"><abbr title="\chillerlan\QRCodeTest\Output\QRMarkupHTMLTest">QRMarkupHTMLTest</abbr></a></dt><dd>Tests the QRMarkup output classes</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Output-QRMarkupSVGTest.html"><abbr title="\chillerlan\QRCodeTest\Output\QRMarkupSVGTest">QRMarkupSVGTest</abbr></a></dt><dd>Tests the QRMarkup output classes</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Output-QRMarkupTestAbstract.html"><abbr title="\chillerlan\QRCodeTest\Output\QRMarkupTestAbstract">QRMarkupTestAbstract</abbr></a></dt><dd>Tests the QRMarkup output classes</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Output-QRMarkupXMLTest.html"><abbr title="\chillerlan\QRCodeTest\Output\QRMarkupXMLTest">QRMarkupXMLTest</abbr></a></dt><dd>Tests the QRMarkup output classes</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Output-QROutputTestAbstract.html"><abbr title="\chillerlan\QRCodeTest\Output\QROutputTestAbstract">QROutputTestAbstract</abbr></a></dt><dd>Test abstract for the several (built-in) output modules,
  154. should also be used to test custom output modules</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Output-QRStringJSONTest.html"><abbr title="\chillerlan\QRCodeTest\Output\QRStringJSONTest">QRStringJSONTest</abbr></a></dt><dd>Tests the QRStringJSON output class</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-Output-QRStringTextTest.html"><abbr title="\chillerlan\QRCodeTest\Output\QRStringTextTest">QRStringTextTest</abbr></a></dt><dd>Tests the QRStringText output class</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-QRCodeReaderGDTest.html"><abbr title="\chillerlan\QRCodeTest\QRCodeReaderGDTest">QRCodeReaderGDTest</abbr></a></dt><dd>Tests the GD based reader</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-QRCodeReaderImagickTest.html"><abbr title="\chillerlan\QRCodeTest\QRCodeReaderImagickTest">QRCodeReaderImagickTest</abbr></a></dt><dd>Tests the Imagick based reader</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-QRCodeReaderTestAbstract.html"><abbr title="\chillerlan\QRCodeTest\QRCodeReaderTestAbstract">QRCodeReaderTestAbstract</abbr></a></dt><dd>Tests the QR Code reader</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-QRCodeTest.html"><abbr title="\chillerlan\QRCodeTest\QRCodeTest">QRCodeTest</abbr></a></dt><dd>Tests basic functions of the QRCode class</dd> <dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/chillerlan-QRCodeTest-QROptionsTest.html"><abbr title="\chillerlan\QRCodeTest\QROptionsTest">QROptionsTest</abbr></a></dt><dd>QROptions test</dd> </dl>
  155. <h4 id="toc-traits">
  156. Traits
  157. <a href="packages/Application.html#toc-traits" class="headerlink"><i class="fas fa-link"></i></a>
  158. </h4>
  159. <dl class="phpdocumentor-table-of-contents">
  160. <dt class="phpdocumentor-table-of-contents__entry -trait"><a href="classes/chillerlan-QRCode-Output-CssColorModuleValueTrait.html"><abbr title="\chillerlan\QRCode\Output\CssColorModuleValueTrait">CssColorModuleValueTrait</abbr></a></dt><dd>Module value checks for output classes that use CSS colors</dd> <dt class="phpdocumentor-table-of-contents__entry -trait"><a href="classes/chillerlan-QRCode-Output-RGBArrayModuleValueTrait.html"><abbr title="\chillerlan\QRCode\Output\RGBArrayModuleValueTrait">RGBArrayModuleValueTrait</abbr></a></dt><dd>Module value checks for output classes that use RGB color arrays</dd> <dt class="phpdocumentor-table-of-contents__entry -trait"><a href="classes/chillerlan-QRCode-QRCodeReaderOptionsTrait.html"><abbr title="\chillerlan\QRCode\QRCodeReaderOptionsTrait">QRCodeReaderOptionsTrait</abbr></a></dt><dd>Trait QRCodeReaderOptionsTrait</dd> <dt class="phpdocumentor-table-of-contents__entry -trait"><a href="classes/chillerlan-QRCode-QROptionsTrait.html"><abbr title="\chillerlan\QRCode\QROptionsTrait">QROptionsTrait</abbr></a></dt><dd>The QRCode plug-in settings &amp; setter functionality</dd> <dt class="phpdocumentor-table-of-contents__entry -trait"><a href="classes/chillerlan-QRCodeTest-Traits-BuildDirTrait.html"><abbr title="\chillerlan\QRCodeTest\Traits\BuildDirTrait">BuildDirTrait</abbr></a></dt><dd>Trait BuildDirTrait</dd> <dt class="phpdocumentor-table-of-contents__entry -trait"><a href="classes/chillerlan-QRCodeTest-Traits-CssColorModuleValueProviderTrait.html"><abbr title="\chillerlan\QRCodeTest\Traits\CssColorModuleValueProviderTrait">CssColorModuleValueProviderTrait</abbr></a></dt><dd>A data provider for use in tests that include CssColorModuleValueTrait</dd> <dt class="phpdocumentor-table-of-contents__entry -trait"><a href="classes/chillerlan-QRCodeTest-Traits-QRMatrixDebugTrait.html"><abbr title="\chillerlan\QRCodeTest\Traits\QRMatrixDebugTrait">QRMatrixDebugTrait</abbr></a></dt><dd>Trait QRMatrixDebugTrait</dd> <dt class="phpdocumentor-table-of-contents__entry -trait"><a href="classes/chillerlan-QRCodeTest-Traits-QRMaxLengthTrait.html"><abbr title="\chillerlan\QRCodeTest\Traits\QRMaxLengthTrait">QRMaxLengthTrait</abbr></a></dt><dd>Trait QRMaxLengthTrait</dd> <dt class="phpdocumentor-table-of-contents__entry -trait"><a href="classes/chillerlan-QRCodeTest-Traits-RGBArrayModuleValueProviderTrait.html"><abbr title="\chillerlan\QRCodeTest\Traits\RGBArrayModuleValueProviderTrait">RGBArrayModuleValueProviderTrait</abbr></a></dt><dd>A data provider for use in tests that include RGBArrayModuleValueTrait</dd> </dl>
  161. <div class="phpdocumentor-modal" id="source-view">
  162. <div class="phpdocumentor-modal-bg" data-exit-button></div>
  163. <div class="phpdocumentor-modal-container">
  164. <div class="phpdocumentor-modal-content">
  165. <pre style="max-height: 500px; overflow-y: scroll" data-src="" class="language-php line-numbers linkable-line-numbers"></pre>
  166. </div>
  167. <button data-exit-button class="phpdocumentor-modal__close">&times;</button>
  168. </div>
  169. </div>
  170. <script type="text/javascript">
  171. (function () {
  172. function loadExternalCodeSnippet(el, url, line) {
  173. Array.prototype.slice.call(el.querySelectorAll('pre[data-src]')).forEach((pre) => {
  174. const src = url || pre.getAttribute('data-src').replace(/\\/g, '/');
  175. const language = 'php';
  176. const code = document.createElement('code');
  177. code.className = 'language-' + language;
  178. pre.textContent = '';
  179. pre.setAttribute('data-line', line)
  180. code.textContent = 'Loading…';
  181. pre.appendChild(code);
  182. var xhr = new XMLHttpRequest();
  183. xhr.open('GET', src, true);
  184. xhr.onreadystatechange = function () {
  185. if (xhr.readyState !== 4) {
  186. return;
  187. }
  188. if (xhr.status < 400 && xhr.responseText) {
  189. code.textContent = xhr.responseText;
  190. Prism.highlightElement(code);
  191. d=document.getElementsByClassName("line-numbers");
  192. d[0].scrollTop = d[0].children[1].offsetTop;
  193. return;
  194. }
  195. if (xhr.status === 404) {
  196. code.textContent = '✖ Error: File could not be found';
  197. return;
  198. }
  199. if (xhr.status >= 400) {
  200. code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
  201. return;
  202. }
  203. code.textContent = '✖ Error: An unknown error occurred';
  204. };
  205. xhr.send(null);
  206. });
  207. }
  208. const modalButtons = document.querySelectorAll("[data-modal]");
  209. const openedAsLocalFile = window.location.protocol === 'file:';
  210. if (modalButtons.length > 0 && openedAsLocalFile) {
  211. console.warn(
  212. 'Viewing the source code is unavailable because you are opening this page from the file:// scheme; ' +
  213. 'browsers block XHR requests when a page is opened this way'
  214. );
  215. }
  216. modalButtons.forEach(function (trigger) {
  217. if (openedAsLocalFile) {
  218. trigger.setAttribute("hidden", "hidden");
  219. }
  220. trigger.addEventListener("click", function (event) {
  221. event.preventDefault();
  222. const modal = document.getElementById(trigger.dataset.modal);
  223. if (!modal) {
  224. console.error(`Modal with id "${trigger.dataset.modal}" could not be found`);
  225. return;
  226. }
  227. modal.classList.add("phpdocumentor-modal__open");
  228. loadExternalCodeSnippet(modal, trigger.dataset.src || null, trigger.dataset.line)
  229. const exits = modal.querySelectorAll("[data-exit-button]");
  230. exits.forEach(function (exit) {
  231. exit.addEventListener("click", function (event) {
  232. event.preventDefault();
  233. modal.classList.remove("phpdocumentor-modal__open");
  234. });
  235. });
  236. });
  237. });
  238. })();
  239. </script>
  240. </article>
  241. </section>
  242. <section class="phpdocumentor-on-this-page__sidebar">
  243. <section class="phpdocumentor-on-this-page__content">
  244. <strong class="phpdocumentor-on-this-page__title">On this page</strong>
  245. <ul class="phpdocumentor-list -clean">
  246. <li class="phpdocumentor-on-this-page-section__title">Table Of Contents</li>
  247. <li>
  248. <ul class="phpdocumentor-list -clean">
  249. <li><a href="packages/Application.html#toc-interfaces">Interfaces</a></li>
  250. <li><a href="packages/Application.html#toc-classes">Classes</a></li>
  251. <li><a href="packages/Application.html#toc-traits">Traits</a></li>
  252. </ul>
  253. </li>
  254. </ul>
  255. </section>
  256. </section>
  257. </div>
  258. <section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
  259. <section class="phpdocumentor-search-results__dialog">
  260. <header class="phpdocumentor-search-results__header">
  261. <h2 class="phpdocumentor-search-results__title">Search results</h2>
  262. <button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
  263. </header>
  264. <section class="phpdocumentor-search-results__body">
  265. <ul class="phpdocumentor-search-results__entries"></ul>
  266. </section>
  267. </section>
  268. </section>
  269. </div>
  270. <a href="packages/Application.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
  271. </main>
  272. <script>
  273. cssVars({});
  274. </script>
  275. <script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
  276. <script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
  277. <script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
  278. <script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
  279. </body>
  280. </html>