QRMarkupHTML

Class QRMarkupHTML: HTML output

This class is a cheap markup substitute for when SVG is not available or not an option (which was an issue before ca 2012). As a general rule: if you plan to display the QR Code in a web browser, you should be using the SVG output.

Example

See: HTML example

Set the options:

$options = new QROptions;

$options->outputInterface = QRMarkupHTML::class;
$options->cssClass        = 'qrcode';
$options->moduleValues    = [
	// finder
	QRMatrix::M_FINDER_DARK    => '#A71111', // dark (true)
	QRMatrix::M_FINDER_DOT     => '#A71111', // finder dot, dark (true)
	QRMatrix::M_FINDER         => '#FFBFBF', // light (false)
	// alignment
	QRMatrix::M_ALIGNMENT_DARK => '#A70364',
	QRMatrix::M_ALIGNMENT      => '#FFC9C9',
];

Output in a HTML document (via PHP):

<?php

$data = 'https://www.youtube.com/watch?v=dQw4w9WgXcQ';
$out  = (new QRCode($options))->render($data);

header('Content-type: text/html');

?>
<!DOCTYPE html>
<html lang="none">
<head>
	<meta charset="UTF-8"/>
	<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
	<title>QRCode HTML Example</title>
	<style>
		div.qrcode{
			margin: 1em;
		}

		/* rows */
		div.qrcode > div {
			height: 10px;
		}

		/* modules */
		div.qrcode > div > span {
			display: inline-block;
			width: 10px;
			height: 10px;
		}
	</style>
</head>
<body>
<!-- php poutput -->
<?php echo $out; ?>
</body>
</html>

Additional methods

method

return

description

(protected) createMarkup(bool $saveToFile)

string

Returns the fully parsed and rendered markup string for the given input

(protected) getCssClass(int $M_TYPE = 0)

string

Returns a string with all css classes for the current element

Options that affect this module

property

type

$cssClass

string

$eol

string

Options that have no effect

property

reason

$bgColor

via CSS

$circleRadius

N/A

$connectPaths

N/A

$drawCircularModules

N/A

$drawLightModules

N/A

$excludeFromConnect

N/A

$imageTransparent

N/A

$keepAsSquare

N/A

$outputBase64

N/A

$returnResource

N/A

$scale

via CSS