mirror of
https://github.com/chillerlan/php-qrcode.git
synced 2026-08-28 11:07:25 +00:00
Deploying to readthedocs from @ chillerlan/php-qrcode@af284bfb53 🚀
This commit is contained in:
+128
-23
@@ -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 current"><a class="current reference internal" href="#">QRGdImage</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#example">Example</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>
|
||||
@@ -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"><a class="reference internal" href="Built-In-Output-QRString.html">QRString</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QRString.html#plain-text">Plain text</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QRString.html#json">JSON</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QRString.html#additional-methods">Additional methods</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="Built-In-Output-QRString.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-QRString.html#options-that-have-no-effect">Options that have no effect</a></li>
|
||||
</ul>
|
||||
@@ -270,6 +285,99 @@
|
||||
<section id="qrgdimage">
|
||||
<h1>QRGdImage<a class="headerlink" href="#qrgdimage" title="Link to this heading"></a></h1>
|
||||
<p><a class="reference external" href="https://github.com/chillerlan/php-qrcode/blob/main/src/Output/QRGdImage.php">Class <code class="docutils literal notranslate"><span class="pre">QRGdImage</span></code></a>: <a class="reference external" href="https://www.php.net/manual/book.image">GdImage</a> raster graphic output (GIF, JPG, PNG)</p>
|
||||
<section id="example">
|
||||
<h2>Example<a class="headerlink" href="#example" title="Link to this heading"></a></h2>
|
||||
<p>See: <a class="reference external" href="https://github.com/chillerlan/php-qrcode/blob/main/examples/image.php">GdImage example</a></p>
|
||||
<p>Set the options:</p>
|
||||
<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="c1">// $outputType can be one of: GDIMAGE_BMP, GDIMAGE_GIF, GDIMAGE_JPG, GDIMAGE_PNG, GDIMAGE_WEBP</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">GDIMAGE_WEBP</span><span class="p">;</span>
|
||||
<span class="nv">$options</span><span class="o">-></span><span class="na">quality</span> <span class="o">=</span> <span class="mi">90</span><span class="p">;</span>
|
||||
<span class="c1">// the size of one qr module in pixels</span>
|
||||
<span class="nv">$options</span><span class="o">-></span><span class="na">scale</span> <span class="o">=</span> <span class="mi">20</span><span class="p">;</span>
|
||||
<span class="nv">$options</span><span class="o">-></span><span class="na">bgColor</span> <span class="o">=</span> <span class="p">[</span><span class="mi">200</span><span class="p">,</span> <span class="mi">150</span><span class="p">,</span> <span class="mi">200</span><span class="p">];</span>
|
||||
<span class="nv">$options</span><span class="o">-></span><span class="na">imageTransparent</span> <span class="o">=</span> <span class="k">true</span><span class="p">;</span>
|
||||
<span class="c1">// the color that will be set transparent</span>
|
||||
<span class="c1">// @see https://www.php.net/manual/en/function.imagecolortransparent</span>
|
||||
<span class="nv">$options</span><span class="o">-></span><span class="na">transparencyColor</span> <span class="o">=</span> <span class="p">[</span><span class="mi">200</span><span class="p">,</span> <span class="mi">150</span><span class="p">,</span> <span class="mi">200</span><span class="p">];</span>
|
||||
<span class="nv">$options</span><span class="o">-></span><span class="na">drawCircularModules</span> <span class="o">=</span> <span class="k">true</span><span class="p">;</span>
|
||||
<span class="nv">$options</span><span class="o">-></span><span class="na">drawLightModules</span> <span class="o">=</span> <span class="k">true</span><span class="p">;</span>
|
||||
<span class="nv">$options</span><span class="o">-></span><span class="na">circleRadius</span> <span class="o">=</span> <span class="mf">0.4</span><span class="p">;</span>
|
||||
<span class="nv">$options</span><span class="o">-></span><span class="na">keepAsSquare</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="p">,</span>
|
||||
<span class="nx">QRMatrix</span><span class="o">::</span><span class="na">M_FINDER_DOT</span><span class="p">,</span>
|
||||
<span class="nx">QRMatrix</span><span class="o">::</span><span class="na">M_ALIGNMENT_DARK</span><span class="p">,</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="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="mi">63</span><span class="p">,</span> <span class="mi">255</span><span class="p">],</span> <span class="c1">// dark (true)</span>
|
||||
<span class="nx">QRMatrix</span><span class="o">::</span><span class="na">M_FINDER_DOT</span> <span class="o">=></span> <span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="mi">63</span><span class="p">,</span> <span class="mi">255</span><span class="p">],</span> <span class="c1">// finder dot, dark (true)</span>
|
||||
<span class="nx">QRMatrix</span><span class="o">::</span><span class="na">M_FINDER</span> <span class="o">=></span> <span class="p">[</span><span class="mi">233</span><span class="p">,</span> <span class="mi">233</span><span class="p">,</span> <span class="mi">233</span><span class="p">],</span> <span class="c1">// light (false)</span>
|
||||
<span class="nx">QRMatrix</span><span class="o">::</span><span class="na">M_ALIGNMENT_DARK</span> <span class="o">=></span> <span class="p">[</span><span class="mi">255</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">255</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="p">[</span><span class="mi">233</span><span class="p">,</span> <span class="mi">233</span><span class="p">,</span> <span class="mi">233</span><span class="p">],</span>
|
||||
<span class="nx">QRMatrix</span><span class="o">::</span><span class="na">M_DATA_DARK</span> <span class="o">=></span> <span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">],</span>
|
||||
<span class="nx">QRMatrix</span><span class="o">::</span><span class="na">M_DATA</span> <span class="o">=></span> <span class="p">[</span><span class="mi">233</span><span class="p">,</span> <span class="mi">233</span><span class="p">,</span> <span class="mi">233</span><span class="p">],</span>
|
||||
<span class="p">];</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>Render the 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">$out</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="c1">// -> data:image/webp;base64,...</span>
|
||||
|
||||
<span class="nb">printf</span><span class="p">(</span><span class="s1">'<img alt="%s" src="%s" />'</span><span class="p">,</span> <span class="nv">$alt</span><span class="p">,</span> <span class="nv">$out</span><span class="p">);</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>Return the <code class="docutils literal notranslate"><span class="pre">GdImage</span></code> instance/resource (will ignore other output options):</p>
|
||||
<div class="highlight-php notranslate"><div class="highlight"><pre><span></span><span class="nv">$options</span><span class="o">-></span><span class="na">returnResource</span> <span class="o">=</span> <span class="k">true</span><span class="p">;</span>
|
||||
|
||||
<span class="sd">/** @var \GdImage|resource $gdImage */</span>
|
||||
<span class="nv">$gdImage</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="c1">// do stuff with the GdImage instance...</span>
|
||||
<span class="nv">$size</span> <span class="o">=</span> <span class="nb">imagesx</span><span class="p">(</span><span class="nv">$gdImage</span><span class="p">);</span>
|
||||
<span class="c1">// ...</span>
|
||||
|
||||
<span class="c1">// ...dump output</span>
|
||||
<span class="nb">header</span><span class="p">(</span><span class="s1">'Content-type: image/jpeg'</span><span class="p">);</span>
|
||||
|
||||
<span class="nb">imagejpeg</span><span class="p">(</span><span class="nv">$gdImage</span><span class="p">);</span>
|
||||
<span class="nb">imagedestroy</span><span class="p">(</span><span class="nv">$gdImage</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">drawImage()</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">void</span></code></p></td>
|
||||
<td><p>Draws the QR image</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p>(protected) <code class="docutils literal notranslate"><span class="pre">dumpImage()</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">string</span></code></p></td>
|
||||
<td><p>Creates the final image by calling the desired GD output function</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p>(protected) <code class="docutils literal notranslate"><span class="pre">module(int $x, int $y, int $M_TYPE)</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">void</span></code></p></td>
|
||||
<td><p>Renders a single module</p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p>(protected) <code class="docutils literal notranslate"><span class="pre">setBgColor()</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">void</span></code></p></td>
|
||||
<td><p>Sets the background color</p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p>(protected) <code class="docutils literal notranslate"><span class="pre">setTransparencyColor()</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">void</span></code></p></td>
|
||||
<td><p>Sets the transparency color</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">
|
||||
@@ -279,42 +387,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><code class="docutils literal notranslate"><span class="pre">bool</span></code></p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$imageBase64</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">$bgColor</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">mixed</span></code></p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$drawLightModules</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">$drawCircularModules</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">bool</span></code></p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$circleRadius</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">float</span></code></p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">$keepAsSquare</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">array</span></code></p></td>
|
||||
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">$drawCircularModules</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">bool</span></code></p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$scale</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">int</span></code></p></td>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$drawLightModules</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">$imageTransparent</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">bool</span></code></p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$transparencyColor</span></code></p></td>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$quality</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">int</span></code></p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">$keepAsSquare</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">array</span></code></p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$outputBase64</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">$returnResource</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">bool</span></code></p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$scale</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">int</span></code></p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">$transparencyColor</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">mixed</span></code></p></td>
|
||||
</tr>
|
||||
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">$pngCompression</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">int</span></code></p></td>
|
||||
</tr>
|
||||
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">$jpegQuality</span></code></p></td>
|
||||
<td><p><code class="docutils literal notranslate"><span class="pre">int</span></code></p></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<section id="options-that-have-no-effect">
|
||||
|
||||
Reference in New Issue
Block a user