Files
php-qrcode/API-QRMatrix.html
T

562 lines
38 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html class="writer-html5" lang="en" >
<head>
<meta charset="utf-8" /><meta name="generator" content="Docutils 0.18.1: http://docutils.sourceforge.net/" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>QRMatrix &mdash; PHP-QRCode main
Manual</title>
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
<!--[if lt IE 9]>
<script src="_static/js/html5shiv.min.js"></script>
<![endif]-->
<script src="_static/jquery.js?v=5d32c60e"></script>
<script src="_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
<script src="_static/documentation_options.js?v=a8da1a53"></script>
<script src="_static/doctools.js?v=888ff710"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
<script src="_static/js/theme.js"></script>
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="DecoderResult" href="API-DecoderResult.html" />
<link rel="prev" title="QROutputInterface" href="API-QROutputInterface.html" />
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="index.html" class="icon icon-home">
PHP-QRCode
</a>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
<input type="text" name="q" placeholder="Search docs" aria-label="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<p class="caption" role="heading"><span class="caption-text">Usage</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="Usage-Overview.html">Overview</a><ul>
<li class="toctree-l2"><a class="reference internal" href="Usage-Overview.html#features">Features</a></li>
<li class="toctree-l2"><a class="reference internal" href="Usage-Overview.html#requirements">Requirements</a></li>
<li class="toctree-l2"><a class="reference internal" href="Usage-Overview.html#framework-integration">Framework Integration</a></li>
<li class="toctree-l2"><a class="reference internal" href="Usage-Overview.html#shameless-advertising">Shameless advertising</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="Usage-Installation.html">Installation</a><ul>
<li class="toctree-l2"><a class="reference internal" href="Usage-Installation.html#installation-with-composer">Installation with Composer</a><ul>
<li class="toctree-l3"><a class="reference internal" href="Usage-Installation.html#composer-json">composer.json</a><ul>
<li class="toctree-l4"><a class="reference internal" href="Usage-Installation.html#version-switch">Version switch</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="Usage-Installation.html#terminal">Terminal</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="Usage-Installation.html#manual-installation">Manual installation</a><ul>
<li class="toctree-l3"><a class="reference internal" href="Usage-Installation.html#can-i-use-this-library-without-using-composer">Can i use this library without using composer?</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="Usage-Installation.html#supported-php-versions-extension-requirements">Supported PHP versions &amp; extension requirements</a></li>
<li class="toctree-l2"><a class="reference internal" href="Usage-Installation.html#imagemagick">ImageMagick</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="Usage-Quickstart.html">Quickstart</a><ul>
<li class="toctree-l2"><a class="reference internal" href="Usage-Quickstart.html#import-the-library">Import the library</a></li>
<li class="toctree-l2"><a class="reference internal" href="Usage-Quickstart.html#create-your-first-qr-code">Create your first QR Code</a><ul>
<li class="toctree-l3"><a class="reference internal" href="Usage-Quickstart.html#configuration">Configuration</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="Usage-Quickstart.html#reading-qr-codes">Reading QR Codes</a></li>
<li class="toctree-l2"><a class="reference internal" href="Usage-Quickstart.html#notes">Notes</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="Usage-Advanced-usage.html">Advanced usage</a><ul>
<li class="toctree-l2"><a class="reference internal" href="Usage-Advanced-usage.html#configuration-via-qroptions">Configuration via <code class="docutils literal notranslate"><span class="pre">QROptions</span></code></a><ul>
<li class="toctree-l3"><a class="reference internal" href="Usage-Advanced-usage.html#supply-an-iterable-of-options">Supply an <code class="docutils literal notranslate"><span class="pre">iterable</span></code> of options</a></li>
<li class="toctree-l3"><a class="reference internal" href="Usage-Advanced-usage.html#load-and-save-json">Load and save JSON</a></li>
<li class="toctree-l3"><a class="reference internal" href="Usage-Advanced-usage.html#extending-the-qroptions-class">Extending the <code class="docutils literal notranslate"><span class="pre">QROptions</span></code> class</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="Usage-Advanced-usage.html#qrcode-methods"><code class="docutils literal notranslate"><span class="pre">QRCode</span></code> methods</a><ul>
<li class="toctree-l3"><a class="reference internal" href="Usage-Advanced-usage.html#save-to-file">Save to file</a></li>
<li class="toctree-l3"><a class="reference internal" href="Usage-Advanced-usage.html#render-a-qrmatrix-instance">Render a <code class="docutils literal notranslate"><span class="pre">QRMatrix</span></code> instance</a></li>
<li class="toctree-l3"><a class="reference internal" href="Usage-Advanced-usage.html#mixed-mode">Mixed mode</a></li>
<li class="toctree-l3"><a class="reference internal" href="Usage-Advanced-usage.html#qr-code-reader">QR Code reader</a></li>
</ul>
</li>
</ul>
</li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Built-In Output Modules</span></p>
<ul>
<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>
</li>
</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>
</li>
</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>
</li>
</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>
</li>
</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>
</li>
</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>
</li>
</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>
</li>
</ul>
</li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Public API</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="API-QRCode.html">QRCode</a><ul>
<li class="toctree-l2"><a class="reference internal" href="API-QRCode.html#methods">Methods</a><ul>
<li class="toctree-l3"><a class="reference internal" href="API-QRCode.html#deprecated-methods">Deprecated methods</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="API-QRCode.html#constants">Constants</a><ul>
<li class="toctree-l3"><a class="reference internal" href="API-QRCode.html#deprecated-constants">Deprecated constants</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="API-QROptions.html">QROptions</a><ul>
<li class="toctree-l2"><a class="reference internal" href="API-QROptions.html#methods">Methods</a></li>
<li class="toctree-l2"><a class="reference internal" href="API-QROptions.html#properties">Properties</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="API-QROutputInterface.html">QROutputInterface</a><ul>
<li class="toctree-l2"><a class="reference internal" href="API-QROutputInterface.html#methods">Methods</a></li>
<li class="toctree-l2"><a class="reference internal" href="API-QROutputInterface.html#constants">Constants</a></li>
</ul>
</li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">QRMatrix</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#methods">Methods</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#deprecated-methods">Deprecated methods</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#constants">Constants</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="API-DecoderResult.html">DecoderResult</a><ul>
<li class="toctree-l2"><a class="reference internal" href="API-DecoderResult.html#methods">Methods</a></li>
<li class="toctree-l2"><a class="reference internal" href="API-DecoderResult.html#magic-properties-read-only">Magic Properties (read-only)</a></li>
</ul>
</li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Appendix</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="Appendix-Terminology.html">Terminology</a><ul>
<li class="toctree-l2"><a class="reference internal" href="Appendix-Terminology.html#qr-code">QR Code</a></li>
<li class="toctree-l2"><a class="reference internal" href="Appendix-Terminology.html#matrix">Matrix</a><ul>
<li class="toctree-l3"><a class="reference internal" href="Appendix-Terminology.html#module">Module</a></li>
<li class="toctree-l3"><a class="reference internal" href="Appendix-Terminology.html#version">Version</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="Appendix-Terminology.html#function-patterns">Function Patterns</a><ul>
<li class="toctree-l3"><a class="reference internal" href="Appendix-Terminology.html#finder-pattern">Finder Pattern</a></li>
<li class="toctree-l3"><a class="reference internal" href="Appendix-Terminology.html#alignment-pattern">Alignment Pattern</a></li>
<li class="toctree-l3"><a class="reference internal" href="Appendix-Terminology.html#timing-pattern">Timing Pattern</a></li>
<li class="toctree-l3"><a class="reference internal" href="Appendix-Terminology.html#separators">Separators</a></li>
<li class="toctree-l3"><a class="reference internal" href="Appendix-Terminology.html#quiet-zone">Quiet Zone</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="Appendix-Terminology.html#encoding-region">Encoding Region</a><ul>
<li class="toctree-l3"><a class="reference internal" href="Appendix-Terminology.html#data">Data</a></li>
<li class="toctree-l3"><a class="reference internal" href="Appendix-Terminology.html#version-information">Version Information</a></li>
<li class="toctree-l3"><a class="reference internal" href="Appendix-Terminology.html#format-information">Format Information</a></li>
<li class="toctree-l3"><a class="reference internal" href="Appendix-Terminology.html#darkmodule">Darkmodule</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="Appendix-Terminology.html#mode">Mode</a><ul>
<li class="toctree-l3"><a class="reference internal" href="Appendix-Terminology.html#segment">Segment</a></li>
<li class="toctree-l3"><a class="reference internal" href="Appendix-Terminology.html#extended-channel-interpretation-eci">Extended Channel Interpretation (ECI)</a></li>
<li class="toctree-l3"><a class="reference internal" href="Appendix-Terminology.html#mixed-mode">Mixed Mode</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="Appendix-Terminology.html#ecc-error-correction-coding">ECC (Error Correction Coding)</a><ul>
<li class="toctree-l3"><a class="reference internal" href="Appendix-Terminology.html#ecc-level">ECC Level</a></li>
<li class="toctree-l3"><a class="reference internal" href="Appendix-Terminology.html#maximum-data-capacity">Maximum data capacity</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="Appendix-Terminology.html#data-masking">Data masking</a><ul>
<li class="toctree-l3"><a class="reference internal" href="Appendix-Terminology.html#evaluation">Evaluation</a></li>
<li class="toctree-l3"><a class="reference internal" href="Appendix-Terminology.html#mask-pattern">Mask pattern</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="Appendix-Terminology.html#reflectance">Reflectance</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="Appendix-URI-Content.html">Popular content and URI schemes</a><ul>
<li class="toctree-l2"><a class="reference internal" href="Appendix-URI-Content.html#url-https">URL <code class="docutils literal notranslate"><span class="pre">https</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="Appendix-URI-Content.html#e-mail-mailto">E-Mail <code class="docutils literal notranslate"><span class="pre">mailto</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="Appendix-URI-Content.html#phone-numbers-tel">Phone numbers <code class="docutils literal notranslate"><span class="pre">tel</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="Appendix-URI-Content.html#geo-coordinates-geo">Geo Coordinates <code class="docutils literal notranslate"><span class="pre">geo</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="Appendix-URI-Content.html#mobile-authenticators-otpauth">Mobile Authenticators <code class="docutils literal notranslate"><span class="pre">otpauth</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="Appendix-URI-Content.html#wireless-network-configuration">Wireless Network configuration</a></li>
<li class="toctree-l2"><a class="reference internal" href="Appendix-URI-Content.html#contact-information-vcard">Contact information: vCard</a></li>
<li class="toctree-l2"><a class="reference internal" href="Appendix-URI-Content.html#calendar-events-vcalendar-and-icalendar">Calendar Events: vCalendar and iCalendar</a></li>
<li class="toctree-l2"><a class="reference internal" href="Appendix-URI-Content.html#see-also">See also</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="Appendix-License.html">License</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="index.html">PHP-QRCode</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="Page navigation">
<ul class="wy-breadcrumbs">
<li><a href="index.html" class="icon icon-home" aria-label="Home"></a></li>
<li class="breadcrumb-item active">QRMatrix</li>
<li class="wy-breadcrumbs-aside">
<a href="https://github.com/chillerlan/php-qrcode/blob/main/docs/API-QRMatrix.md" class="fa fa-github"> Edit on GitHub</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<section id="qrmatrix">
<h1>QRMatrix<a class="headerlink" href="#qrmatrix" title="Link to this heading"></a></h1>
<p>The full phpDocumentor API documentation can be found at <a class="reference external" href="https://chillerlan.github.io/php-qrcode/classes/chillerlan-QRCode-Data-QRMatrix.html">chillerlan.github.io/php-qrcode</a>.</p>
<section id="methods">
<h2>Methods<a class="headerlink" href="#methods" title="Link to this heading"></a></h2>
<!-- using non-breaking spaces chr(255) in the longest method signature to force the silly table to stretch -->
<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><code class="docutils literal notranslate"><span class="pre">__construct(Version</span> <span class="pre">$version,</span> <span class="pre">EccLevel</span> <span class="pre">$eccLevel)</span></code></p></td>
<td><p>-</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">initFunctionalPatterns()</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">self</span></code></p></td>
<td><p>shortcut to initialize the functional patterns</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">getMatrix()</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">array</span></code></p></td>
<td><p>the internal matrix representation as a 2 dimensional array</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">getVersion()</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">Version|null</span></code></p></td>
<td><p>the current QR Code version instance</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">getEccLevel()</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">EccLevel|null</span></code></p></td>
<td><p>the current ECC level instance</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">getMaskPattern()</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">MaskPattern|null</span></code></p></td>
<td><p>the used mask pattern instance</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">getSize()</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">int</span></code></p></td>
<td><p>the absoulute size of the matrix, including quiet zone (if set). <code class="docutils literal notranslate"><span class="pre">$version</span> <span class="pre">*</span> <span class="pre">4</span> <span class="pre">+</span> <span class="pre">17</span> <span class="pre">+</span> <span class="pre">2</span> <span class="pre">*</span> <span class="pre">$quietzone</span></code></p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">get(int</span> <span class="pre">$x,</span> <span class="pre">int</span> <span class="pre">$y)</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">int</span></code></p></td>
<td><p>returns the value of the module</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">set(int</span> <span class="pre">$x,</span> <span class="pre">int</span> <span class="pre">$y,</span> <span class="pre">bool</span> <span class="pre">$value,</span> <span class="pre">int</span> <span class="pre">$M_TYPE)</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">self</span></code></p></td>
<td><p>sets the <code class="docutils literal notranslate"><span class="pre">$M_TYPE</span></code> value for the module</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">setArea(int $startX, int $startY, int $width, int $height, bool $value, int $M_TYPE)</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">self</span></code></p></td>
<td><p>Fills an area of $width * $height, from the given starting point $startX, $startY (top left) with $value for $M_TYPE</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">checkType(int</span> <span class="pre">$x,</span> <span class="pre">int</span> <span class="pre">$y,</span> <span class="pre">int</span> <span class="pre">$M_TYPE)</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">bool</span></code></p></td>
<td><p>Checks whether a module is of the given $M_TYPE</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">checkTypeIn(int</span> <span class="pre">$x,</span> <span class="pre">int</span> <span class="pre">$y,</span> <span class="pre">array</span> <span class="pre">$M_TYPES)</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">bool</span></code></p></td>
<td><p>Checks whether the module at ($x, $y) is in the given array of $M_TYPES, returns true if a match is found, otherwise false</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">check(int</span> <span class="pre">$x,</span> <span class="pre">int</span> <span class="pre">$y)</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">bool</span></code></p></td>
<td><p>checks whether a module is true (dark) or false (light)</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">checkNeighbours(int</span> <span class="pre">$x,</span> <span class="pre">int</span> <span class="pre">$y,</span> <span class="pre">int</span> <span class="pre">$M_TYPE</span> <span class="pre">=</span> <span class="pre">null)</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">int</span></code></p></td>
<td><p>Checks the status neighbouring modules of the given module at ($x, $y) and returns a bitmask with the results.</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">setDarkModule()</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">self</span></code></p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">setFinderPattern()</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">self</span></code></p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">setSeparators()</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">self</span></code></p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">setAlignmentPattern()</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">self</span></code></p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">setTimingPattern()</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">self</span></code></p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">setVersionNumber()</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">self</span></code></p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">setFormatInfo(MaskPattern</span> <span class="pre">$maskPattern</span> <span class="pre">=</span> <span class="pre">null)</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">self</span></code></p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">setQuietZone(int</span> <span class="pre">$quietZoneSize)</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">self</span></code></p></td>
<td><p>Draws the “quiet zone” of $quietZoneSize around the matrix</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">rotate90()</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">self</span></code></p></td>
<td><p>Rotates the matrix by 90 degrees clock wise</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">setLogoSpace(int</span> <span class="pre">$width,</span> <span class="pre">int</span> <span class="pre">$height</span> <span class="pre">=</span> <span class="pre">null,</span> <span class="pre">int</span> <span class="pre">$startX</span> <span class="pre">=</span> <span class="pre">null,</span> <span class="pre">int</span> <span class="pre">$startY</span> <span class="pre">=</span> <span class="pre">null)</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">self</span></code></p></td>
<td><p>Clears a space of $width * $height in order to add a logo or text.</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">writeCodewords(BitBuffer</span> <span class="pre">$bitBuffer)</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">self</span></code></p></td>
<td><p>Maps the interleaved binary data on the matrix</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">mask(MaskPattern</span> <span class="pre">$maskPattern)</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">self</span></code></p></td>
<td><p>Applies/reverses the mask pattern</p></td>
</tr>
</tbody>
</table>
<section id="deprecated-methods">
<h3>Deprecated methods<a class="headerlink" href="#deprecated-methods" title="Link to this heading"></a></h3>
<table class="docutils align-default">
<thead>
<tr class="row-odd"><th class="head"><p>method</p></th>
<th class="head"><p>since</p></th>
<th class="head"><p>replacement</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">matrix()</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">5.0.0</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">QRMatrix::getMatrix()</span></code></p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">eccLevel()</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">5.0.0</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">QRMatrix::getEccLevel()</span></code></p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">version()</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">5.0.0</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">QRMatrix::getVersion()</span></code></p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">maskPattern()</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">5.0.0</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">QRMatrix::getMaskPattern()</span></code></p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">size()</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">5.0.0</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">QRMatrix::getSize()</span></code></p></td>
</tr>
</tbody>
</table>
</section>
</section>
<section id="constants">
<h2>Constants<a class="headerlink" href="#constants" title="Link to this heading"></a></h2>
<p>The <code class="docutils literal notranslate"><span class="pre">_DARK</span></code> and <code class="docutils literal notranslate"><span class="pre">_LIGHT</span></code> postfixed constans exist purely for convenience - their value is the same as
<code class="docutils literal notranslate"><span class="pre">QRMatrix::M_XXX</span> <span class="pre">|</span> <span class="pre">QRMatrix::IS_DARK</span></code> and <code class="docutils literal notranslate"><span class="pre">QRMatrix::M_XXX</span> <span class="pre">^</span> <span class="pre">QRMatrix::IS_DARK</span></code> respectively,
see <a class="reference internal" href="API-QROutputInterface.html"><span class="std std-doc"><code class="docutils literal notranslate"><span class="pre">QROutputInterface</span></code></span></a>.</p>
<table class="docutils align-default">
<thead>
<tr class="row-odd"><th class="head"><p>name</p></th>
<th class="head"><p>description</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">IS_DARK</span></code></p></td>
<td><p>sets the “dark” flag for the given value: <code class="docutils literal notranslate"><span class="pre">QRMatrix::M_DATA</span> <span class="pre">|</span> <span class="pre">QRMatrix::IS_DARK</span></code></p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">M_NULL</span></code></p></td>
<td><p>module not set</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">M_DARKMODULE_LIGHT</span></code></p></td>
<td><p>convenience (reversed reflectance)</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">M_DARKMODULE</span></code></p></td>
<td><p>once per matrix at <code class="docutils literal notranslate"><span class="pre">$xy</span> <span class="pre">=</span> <span class="pre">[8,</span> <span class="pre">4</span> <span class="pre">*</span> <span class="pre">$version</span> <span class="pre">+</span> <span class="pre">9]</span></code></p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">M_DATA</span></code></p></td>
<td><p>the actual encoded data</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">M_DATA_DARK</span></code></p></td>
<td><p>convenience</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">M_FINDER</span></code></p></td>
<td><p>the 7x7 finder patterns</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">M_FINDER_DARK</span></code></p></td>
<td><p>convenience</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">M_FINDER_DOT_LIGHT</span></code></p></td>
<td><p>convenience (reversed reflectance)</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">M_FINDER_DOT</span></code></p></td>
<td><p>the inner 3x3 block of the finder pattern</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">M_SEPARATOR</span></code></p></td>
<td><p>separator lines along the finder patterns</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">M_SEPARATOR_DARK</span></code></p></td>
<td><p>convenience</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">M_ALIGNMENT</span></code></p></td>
<td><p>the 5x5 alignment patterns</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">M_ALIGNMENT_DARK</span></code></p></td>
<td><p>convenience</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">M_TIMING</span></code></p></td>
<td><p>the timing pattern lines</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">M_TIMING_DARK</span></code></p></td>
<td><p>convenience</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">M_FORMAT</span></code></p></td>
<td><p>format information pattern</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">M_FORMAT_DARK</span></code></p></td>
<td><p>convenience</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">M_VERSION</span></code></p></td>
<td><p>version information pattern</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">M_VERSION_DARK</span></code></p></td>
<td><p>convenience</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">M_QUIETZONE</span></code></p></td>
<td><p>margin around the QR Code</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">M_QUIETZONE_DARK</span></code></p></td>
<td><p>convenience</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">M_LOGO</span></code></p></td>
<td><p>space for a logo image (not used yet)</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">M_LOGO_DARK</span></code></p></td>
<td><p>convenience</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">M_TEST</span></code></p></td>
<td><p>test value</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">M_TEST_DARK</span></code></p></td>
<td><p>convenience</p></td>
</tr>
</tbody>
</table>
</section>
</section>
</div>
</div>
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
<a href="API-QROutputInterface.html" class="btn btn-neutral float-left" title="QROutputInterface" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<a href="API-DecoderResult.html" class="btn btn-neutral float-right" title="DecoderResult" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
</div>
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2023, smiley.</p>
</div>
</footer>
</div>
</div>
</section>
</div>
<script>
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>