mirror of
https://github.com/chillerlan/php-qrcode.git
synced 2026-08-26 22:38:10 +00:00
Deploying to readthedocs from @ chillerlan/php-qrcode@af284bfb53 🚀
This commit is contained in:
+118
-19
@@ -99,6 +99,8 @@
|
||||
<p class="caption" role="heading"><span class="caption-text">Built-In Output Modules</span></p>
|
||||
<ul class="current">
|
||||
<li class="toctree-l1"><a class="reference internal" href="Built-In-Output-QREps.html">QREps</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QREps.html#example">Example</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QREps.html#additional-methods">Additional methods</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QREps.html#options-that-affect-this-module">Options that affect this module</a><ul>
|
||||
<li class="toctree-l3"><a class="reference internal" href="Built-In-Output-QREps.html#options-that-have-no-effect">Options that have no effect</a></li>
|
||||
</ul>
|
||||
@@ -106,6 +108,8 @@
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Built-In-Output-QRFpdf.html">QRFpdf</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QRFpdf.html#example">Example</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QRFpdf.html#additional-methods">Additional methods</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QRFpdf.html#options-that-affect-this-module">Options that affect this module</a><ul>
|
||||
<li class="toctree-l3"><a class="reference internal" href="Built-In-Output-QRFpdf.html#options-that-have-no-effect">Options that have no effect</a></li>
|
||||
</ul>
|
||||
@@ -113,6 +117,8 @@
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Built-In-Output-QRGdImage.html">QRGdImage</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QRGdImage.html#example">Example</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QRGdImage.html#additional-methods">Additional methods</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QRGdImage.html#options-that-affect-this-module">Options that affect this module</a><ul>
|
||||
<li class="toctree-l3"><a class="reference internal" href="Built-In-Output-QRGdImage.html#options-that-have-no-effect">Options that have no effect</a></li>
|
||||
</ul>
|
||||
@@ -120,6 +126,8 @@
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Built-In-Output-QRImagick.html">QRImagick</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QRImagick.html#example">Example</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QRImagick.html#additional-methods">Additional methods</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QRImagick.html#options-that-affect-this-module">Options that affect this module</a><ul>
|
||||
<li class="toctree-l3"><a class="reference internal" href="Built-In-Output-QRImagick.html#options-that-have-no-effect">Options that have no effect</a></li>
|
||||
</ul>
|
||||
@@ -127,6 +135,8 @@
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Built-In-Output-QRMarkupHTML.html">QRMarkupHTML</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QRMarkupHTML.html#example">Example</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QRMarkupHTML.html#additional-methods">Additional methods</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QRMarkupHTML.html#options-that-affect-this-module">Options that affect this module</a><ul>
|
||||
<li class="toctree-l3"><a class="reference internal" href="Built-In-Output-QRMarkupHTML.html#options-that-have-no-effect">Options that have no effect</a></li>
|
||||
</ul>
|
||||
@@ -134,6 +144,8 @@
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Built-In-Output-QRMarkupSVG.html">QRMarkupSVG</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QRMarkupSVG.html#example">Example</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QRMarkupSVG.html#additional-methods">Additional methods</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QRMarkupSVG.html#options-that-affect-this-module">Options that affect this module</a><ul>
|
||||
<li class="toctree-l3"><a class="reference internal" href="Built-In-Output-QRMarkupSVG.html#options-that-have-no-effect">Options that have no effect</a></li>
|
||||
</ul>
|
||||
@@ -141,6 +153,9 @@
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1 current"><a class="current reference internal" href="#">QRString</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#plain-text">Plain text</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#json">JSON</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#additional-methods">Additional methods</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#options-that-affect-this-module">Options that affect this module</a><ul>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#options-that-have-no-effect">Options that have no effect</a></li>
|
||||
</ul>
|
||||
@@ -270,6 +285,84 @@
|
||||
<section id="qrstring">
|
||||
<h1>QRString<a class="headerlink" href="#qrstring" title="Link to this heading"></a></h1>
|
||||
<p><a class="reference external" href="https://github.com/chillerlan/php-qrcode/blob/main/src/Output/QRString.php">Class <code class="docutils literal notranslate"><span class="pre">QRString</span></code></a>: String output: plain text, <a class="reference external" href="https://developer.mozilla.org/en-US/docs/Glossary/JSON">JSON</a></p>
|
||||
<section id="plain-text">
|
||||
<h2>Plain text<a class="headerlink" href="#plain-text" title="Link to this heading"></a></h2>
|
||||
<p>Render in a CLI console, using <a class="reference external" href="https://en.wikipedia.org/wiki/ANSI_escape_code#Colors">ANSI colors</a> and <a class="reference external" href="https://en.wikipedia.org/wiki/Block_Elements">block elements</a>:</p>
|
||||
<div class="highlight-php notranslate"><div class="highlight"><pre><span></span><span class="c1">// a little helper to a create proper ANSI 8-bit color escape sequence</span>
|
||||
<span class="k">function</span> <span class="nf">ansi8</span><span class="p">(</span><span class="nx">string</span> <span class="nv">$str</span><span class="p">,</span> <span class="nx">int</span> <span class="nv">$color</span><span class="p">,</span> <span class="nx">bool</span> <span class="nv">$background</span> <span class="o">=</span> <span class="k">false</span><span class="p">)</span><span class="o">:</span><span class="nx">string</span><span class="p">{</span>
|
||||
<span class="nv">$color</span> <span class="o">=</span> <span class="nb">max</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="nb">min</span><span class="p">(</span><span class="nv">$color</span><span class="p">,</span> <span class="mi">255</span><span class="p">));</span>
|
||||
<span class="nv">$background</span> <span class="o">=</span> <span class="p">(</span><span class="nv">$background</span> <span class="o">?</span> <span class="mi">48</span> <span class="o">:</span> <span class="mi">38</span><span class="p">);</span>
|
||||
|
||||
<span class="k">return</span> <span class="nb">sprintf</span><span class="p">(</span><span class="s2">"</span><span class="se">\x1b</span><span class="s2">[%s;5;%sm%s</span><span class="se">\x1b</span><span class="s2">[0m"</span><span class="p">,</span> <span class="nv">$background</span><span class="p">,</span> <span class="nv">$color</span><span class="p">,</span> <span class="nv">$str</span><span class="p">);</span>
|
||||
<span class="p">}</span>
|
||||
|
||||
<span class="nv">$options</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">QROptions</span><span class="p">;</span>
|
||||
|
||||
<span class="nv">$options</span><span class="o">-></span><span class="na">outputType</span> <span class="o">=</span> <span class="nx">QROutputInterface</span><span class="o">::</span><span class="na">STRING_TEXT</span><span class="p">;</span>
|
||||
<span class="nv">$options</span><span class="o">-></span><span class="na">eol</span> <span class="o">=</span> <span class="s2">"</span><span class="se">\n</span><span class="s2">"</span><span class="p">;</span>
|
||||
<span class="c1">// add some space on the line start</span>
|
||||
<span class="nv">$options</span><span class="o">-></span><span class="na">textLineStart</span> <span class="o">=</span> <span class="nb">str_repeat</span><span class="p">(</span><span class="s1">' '</span><span class="p">,</span> <span class="mi">6</span><span class="p">);</span>
|
||||
<span class="c1">// default values for unassigned module types</span>
|
||||
<span class="nv">$options</span><span class="o">-></span><span class="na">textDark</span> <span class="o">=</span> <span class="nx">QRString</span><span class="o">::</span><span class="na">ansi8</span><span class="p">(</span><span class="s1">'██'</span><span class="p">,</span> <span class="mi">253</span><span class="p">);</span>
|
||||
<span class="nv">$options</span><span class="o">-></span><span class="na">textLight</span> <span class="o">=</span> <span class="nx">QRString</span><span class="o">::</span><span class="na">ansi8</span><span class="p">(</span><span class="s1">'░░'</span><span class="p">,</span> <span class="mi">253</span><span class="p">);</span>
|
||||
<span class="nv">$options</span><span class="o">-></span><span class="na">moduleValues</span> <span class="o">=</span> <span class="p">[</span>
|
||||
<span class="nx">QRMatrix</span><span class="o">::</span><span class="na">M_FINDER_DARK</span> <span class="o">=></span> <span class="nx">QRString</span><span class="o">::</span><span class="na">ansi8</span><span class="p">(</span><span class="s1">'██'</span><span class="p">,</span> <span class="mi">124</span><span class="p">),</span>
|
||||
<span class="nx">QRMatrix</span><span class="o">::</span><span class="na">M_FINDER</span> <span class="o">=></span> <span class="nx">QRString</span><span class="o">::</span><span class="na">ansi8</span><span class="p">(</span><span class="s1">'░░'</span><span class="p">,</span> <span class="mi">124</span><span class="p">),</span>
|
||||
<span class="nx">QRMatrix</span><span class="o">::</span><span class="na">M_FINDER_DOT</span> <span class="o">=></span> <span class="nx">QRString</span><span class="o">::</span><span class="na">ansi8</span><span class="p">(</span><span class="s1">'██'</span><span class="p">,</span> <span class="mi">124</span><span class="p">),</span>
|
||||
<span class="nx">QRMatrix</span><span class="o">::</span><span class="na">M_ALIGNMENT_DARK</span> <span class="o">=></span> <span class="nx">QRString</span><span class="o">::</span><span class="na">ansi8</span><span class="p">(</span><span class="s1">'██'</span><span class="p">,</span> <span class="mi">2</span><span class="p">),</span>
|
||||
<span class="nx">QRMatrix</span><span class="o">::</span><span class="na">M_ALIGNMENT</span> <span class="o">=></span> <span class="nx">QRString</span><span class="o">::</span><span class="na">ansi8</span><span class="p">(</span><span class="s1">'░░'</span><span class="p">,</span> <span class="mi">2</span><span class="p">),</span>
|
||||
<span class="nx">QRMatrix</span><span class="o">::</span><span class="na">M_VERSION_DARK</span> <span class="o">=></span> <span class="nx">QRString</span><span class="o">::</span><span class="na">ansi8</span><span class="p">(</span><span class="s1">'██'</span><span class="p">,</span> <span class="mi">21</span><span class="p">),</span>
|
||||
<span class="nx">QRMatrix</span><span class="o">::</span><span class="na">M_VERSION</span> <span class="o">=></span> <span class="nx">QRString</span><span class="o">::</span><span class="na">ansi8</span><span class="p">(</span><span class="s1">'░░'</span><span class="p">,</span> <span class="mi">21</span><span class="p">),</span>
|
||||
<span class="p">];</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>Output:</p>
|
||||
<div class="highlight-php notranslate"><div class="highlight"><pre><span></span><span class="nv">$data</span> <span class="o">=</span> <span class="s1">'https://www.youtube.com/watch?v=dQw4w9WgXcQ'</span><span class="p">;</span>
|
||||
<span class="nv">$qrcode</span> <span class="o">=</span> <span class="p">(</span><span class="k">new</span> <span class="nx">QRCode</span><span class="p">(</span><span class="nv">$options</span><span class="p">))</span><span class="o">-></span><span class="na">render</span><span class="p">(</span><span class="nv">$data</span><span class="p">);</span>
|
||||
|
||||
<span class="k">echo</span> <span class="s2">"</span><span class="se">\n\n</span><span class="si">$qrcode</span><span class="se">\n\n</span><span class="s2">"</span><span class="p">;</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
</section>
|
||||
<section id="json">
|
||||
<h2>JSON<a class="headerlink" href="#json" title="Link to this heading"></a></h2>
|
||||
<div class="highlight-php notranslate"><div class="highlight"><pre><span></span><span class="nv">$options</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">QROptions</span><span class="p">;</span>
|
||||
|
||||
<span class="nv">$options</span><span class="o">-></span><span class="na">outputType</span> <span class="o">=</span> <span class="nx">QROutputInterface</span><span class="o">::</span><span class="na">STRING_JSON</span><span class="p">;</span>
|
||||
<span class="c1">// output the integer values ($M_TYPE) held in the matrix object</span>
|
||||
<span class="nv">$options</span><span class="o">-></span><span class="na">jsonAsBooleans</span> <span class="o">=</span> <span class="k">false</span><span class="p">;</span>
|
||||
|
||||
<span class="nb">header</span><span class="p">(</span><span class="s1">'Content-type: application/json'</span><span class="p">);</span>
|
||||
|
||||
<span class="k">echo</span> <span class="p">(</span><span class="k">new</span> <span class="nx">QRCode</span><span class="p">(</span><span class="nv">$options</span><span class="p">))</span><span class="o">-></span><span class="na">render</span><span class="p">(</span><span class="nv">$data</span><span class="p">);</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
</section>
|
||||
<section id="additional-methods">
|
||||
<h2>Additional methods<a class="headerlink" href="#additional-methods" title="Link to this heading"></a></h2>
|
||||
<table class="docutils align-default">
|
||||
<thead>
|
||||
<tr class="row-odd"><th class="head"><p>method</p></th>
|
||||
<th class="head"><p>return</p></th>
|
||||
<th class="head"><p>description</p></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="row-even"><td><p>(protected) <code class="docutils literal notranslate"><span class="pre">text()</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">string</span></code></p></td>
|
||||
<td><p>string output</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p>(protected) <code class="docutils literal notranslate"><span class="pre">json()</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">string</span></code></p></td>
|
||||
<td><p>JSON output</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">ansi8(string</span> <span class="pre">$str,</span> <span class="pre">int</span> <span class="pre">$color,</span> <span class="pre">bool</span> <span class="pre">$background</span> <span class="pre">=</span> <span class="pre">null)</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">string</span></code></p></td>
|
||||
<td><p>a little helper to create a proper ANSI 8-bit color escape sequence</p></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
<section id="options-that-affect-this-module">
|
||||
<h2>Options that affect this module<a class="headerlink" href="#options-that-affect-this-module" title="Link to this heading"></a></h2>
|
||||
<table class="docutils align-default">
|
||||
@@ -282,10 +375,16 @@
|
||||
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">$eol</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">string</span></code></p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$textDark</span></code></p></td>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$jsonAsBooleans</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">bool</span></code></p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">$textDark</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">string</span></code></p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">$textLight</span></code></p></td>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$textLight</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">string</span></code></p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">$textLineStart</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">string</span></code></p></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
@@ -299,39 +398,39 @@
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">$returnResource</span></code></p></td>
|
||||
<td><p>N/A</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$imageBase64</span></code></p></td>
|
||||
<td><p>N/A</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">$bgColor</span></code></p></td>
|
||||
<td><p>N/A</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$drawLightModules</span></code></p></td>
|
||||
<td><p>not implemented</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">$drawCircularModules</span></code></p></td>
|
||||
<td><p>N/A</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$circleRadius</span></code></p></td>
|
||||
<td><p>N/A</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">$keepAsSquare</span></code></p></td>
|
||||
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">$connectPaths</span></code></p></td>
|
||||
<td><p>N/A</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$connectPaths</span></code></p></td>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$drawCircularModules</span></code></p></td>
|
||||
<td><p>N/A</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">$excludeFromConnect</span></code></p></td>
|
||||
<td><p>N/A</p></td>
|
||||
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">$drawLightModules</span></code></p></td>
|
||||
<td><p>not implemented</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$scale</span></code></p></td>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$excludeFromConnect</span></code></p></td>
|
||||
<td><p>N/A</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">$imageTransparent</span></code></p></td>
|
||||
<td><p>N/A</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$keepAsSquare</span></code></p></td>
|
||||
<td><p>N/A</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">$outputBase64</span></code></p></td>
|
||||
<td><p>N/A</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$returnResource</span></code></p></td>
|
||||
<td><p>N/A</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">$scale</span></code></p></td>
|
||||
<td><p>N/A</p></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
|
||||
Reference in New Issue
Block a user