barcode
(mPDF ≥ 4.0)
barcode – Add a Barcode to the document
Description
<barcode $code [ $type ] [ $text ] [ $size ] [ $height ] [ $pr ] />
Add a Barcode to the document.
Note: See barcodes and the example file for further information.
Attributes
- $code
-
Specifies the code to translate to a barcode.
$code for EAN13 / ISBN / ISSN / UPCA / UPCE can contain hyphens (
-
) but no other characters are allowed.Check-digits can be optionally included for EAN13 / ISBN / ISSN / UPCA / UPCE
It is recommended you convert HTML special characters to entities using
htmlspecialchars('Content')
.REQUIRED
- $type
-
$type specifies the type of barcode required.
Default:
'EAN13'
Values
'EAN13'
,'ISBN'
,'ISSN'
,'UPCA'
,'UPCE'
,'EAN8'
'EAN13P2'
,'ISBNP2'
,'ISSNP2'
,'UPCAP2'
,'UPCEP2'
,'EAN8P2'
(with EAN-2 supplement code i.e. 01-99 )'EAN13P5'
,'ISBNP5'
,'ISSNP5'
,'UPCAP5'
,'UPCEP5'
,'EAN8P5'
(with EAN-5 supplement code e.g. 90000 ) ('UPCE'
needs the UPCA $code entered)'IMB'
,'RM4SCC'
,'KIX'
,'POSTNET'
,'PLANET'
'C128A'
,'C128B'
,'C128C'
'EAN128A'
,'EAN128B'
,'EAN128C'
'C39'
,'C39+'
,'C39E'
,'C39E+'
'S25'
,'S25+'
,'I25'
,'I25+'
,'I25B'
,'I25B+'
'C93'
'MSI'
,'MSI+'
'CODABAR'
'CODE11'
Note: Type with a
'+'
at the end includes check-digits. - $text
-
EAN13 only
Specifies whether to show the code at the top of an EAN13 barcode.
Note that ISBN and ISSN always show the text, prefixed with ISBN or ISSN.
Values:
1
or0
Default:
0
- $size
-
Specifies the size of the barcode.
$size (float) will scale the nominal size of the barcode as a factor of 1
size="1.5"
will generate a barcode one and half times the height and width of the nominal size set in mPDFNB Sizes between
'0.8'
and'2.0'
are recommended for EAN13 and similar barcodes.Default:
'1'
- $height
-
Specifies the height of the barcode.
$height (float) will determine the relative height of the barcode as a factor of 1
The height factor is applied after the $size
size="2" height="0.5"
will generate a barcode of twice the nominal width, but with the nominal height.NB Ignored for Postcode barcodes
Default:
'1'
- $pr
-
Specifies the print ratio i.e. narrow:wide bar width for some types of barcode.
Valid for:
'C39'
(Code 39),- Standard and Interleaved 2 of 5 (
'S25'
,'I25'
etc.), 'CODABAR'
and'CODE11'
Default: Varies between
2.5
and3.0
dependent on barcode specification (see barcodes)
Changelog
Version | Description |
---|---|
4.0 | The function was added. |
Examples
<barcode code="978-0-9542246-0" type="ISBN" height="0.66" text="1" />
<barcode code="04210000526" type="UPCE" />
<!-- Note the UPC-A code is required which is converted to UPCE -->
<barcode code="978-0-9542246-0-8 07" type="ISSNP2" text="1" />
<barcode code="01234567094987654321-01234567891" type="IMB" />
<barcode code="SN34RD1A" type="RM4SCC" />
<barcode code="54321068" type="I25" />
<barcode code="A34698735B" type="CODABAR" />
Notes
Note: The following CSS properties can be set on the <barcode />
element as though it were standard HTML:
vertical-align
(default: middle)border*
margin*
padding*
(default 2 mm for EAN13)color
(default: black)background-color
(default: white)
NB: padding has defaults as 0
(mm) if not specified
Padding is in addition to any specified quiet zones/light margins.
Example with CSS
<style>
.barcode {
padding: 1.5mm;
margin: 0;
vertical-align: top;
color: #000044;
}
.barcodecell {
text-align: center;
vertical-align: middle;
}
</style>
<div class="barcodecell"><barcode code="54321068" type="I25" class="barcode" /></div>
Note: mPDF will generate a Checkdigit for most barcodes if required, which is added to the barcode. If you need to know what the checkdigit is for a particular barcode, you could do the following:
Example - Generating a checkdigit
<?php
// Must not contain any - or spaces
include('../src/Barcode.php');
$bc = new \Mpdf\Barcode();
echo $bc->getChecksum('9344543204454', 'C93');
See Also
- Barcodes - More information on types of barcode