Introduction
Code 39 contains all the capital letters, the numbers from 0 to 9, the following special characters "-.$/+%" and spaces.
It exists in an extended version which allows you to write all the ASCII characters from 0 to 127. To do this, the special characters "$/+%" are used. If you wish to use these special characters, check with your reader. If it is not configured in Code 39 Extended mode, it will not work properly.
If you want to use the extended characters, you have to use the BCGcode39extended.
This class inherits the BCGBarcode1D class.
Example
BCGcode39's Methods
- setChecksum($checksum) — Specifies if a checksum must be added
BCGBarcode1D's Methods
- getThickness() — Returns the thickness of the barcode
- setThickness($thickness) — Specifies the thickness of the barcode
- getLabel() — Gets the label
- setLabel($label) — Sets the label
- getFont() — Gets the text font for the label
- setFont($font) — Sets the text font for the label
- getChecksum() — Gets the checksum appended to the barcode
- setDisplayChecksum($display) — Specifies the checksum to be added to the label
BCGBarcode's Methods
- parse($text) — Analyzes a $text message to draw afterwards
- draw($im) — Draws the barcode on the $im
- getDimension($w, $h) — Returns an array containing the required size for the image
- getScale() — Gets the scale of the barcode
- setScale($x) — Sets the scale of the barcode
- getForegroundColor() — Gets the color of the spaces
- setForegroundColor($color) — Sets the color of the spaces
- getBackgroundColor() — Gets the color of the bars
- setBackgroundColor($color) — Sets the color of the bars
- setColor($fg, $bg) — Sets the color of the bars and spaces
- getOffsetX() — Gets the X offset
- setOffsetX($v) — Sets the X offset
- getOffsetY() — Gets the Y offset
- setOffsetY($v) — Sets the Y offset
- addLabel($label) — Adds a label to the graphic
- removeLabel($label) — Removes a label from the graphic
- clearLabels() — Removes the labels from the graphic
Code Example
<?php require('class/BCGFontFile.php'); require('class/BCGColor.php'); require('class/BCGDrawing.php'); require('class/BCGcode39.barcode.php'); $font = new BCGFontFile('./class/font/Arial.ttf', 18); $color_black = new BCGColor(0, 0, 0); $color_white = new BCGColor(255, 255, 255); // Barcode Part $code = new BCGcode39(); $code->setScale(2); $code->setThickness(30); $code->setForegroundColor($color_black); $code->setBackgroundColor($color_white); $code->setFont($font); $code->setChecksum(false); $code->parse('A123'); // Drawing Part $drawing = new BCGDrawing('', $color_white); $drawing->setBarcode($code); $drawing->draw(); header('Content-Type: image/png'); $drawing->finish(BCGDrawing::IMG_FORMAT_PNG); ?>
Methods Explanation
-
setChecksum($checksum)
— Specifies if a checksum must be added DescriptionSpecifies if a checksum must be added.
-
getThickness()
— Returns the thickness of the barcode DescriptionThe thickness of the barcode in pixels. The value isn't multiplied by the scale.Returnsint - value in pixels
-
setThickness($thickness)
— Specifies the thickness of the barcode DescriptionThe thickness of the barcode in pixels. This is the vertical size.
This value is multiplied by the scale. Check the setScale() method.
The default value is 30. -
getLabel()
— Gets the label DescriptionReturns the real value that will be displayed with the barcode. You have to have called the parse() method first.Returnsstring - final label
-
setLabel($label)
— Sets the label DescriptionThe text label will be written below or above the barcode depending on the barcode. You can write the special value BCGBarcode1D::AUTO_LABEL if you would like your text to be chosen automatically. It will be the value passed to the parse() method.
-
getFont()
— Gets the text font for the label DescriptionGets the text font of the label.ReturnsBCGFontFile, BCGFontPhp or int
-
setFont($font)
— Sets the text font for the label DescriptionThe value of the argument can be either an instance of the BCGFontFile class, BCGFontPhp, or a number between 1 and 5.
If you are using numbers 1 through 5, PHP fonts are used. Check the PHP Manual. -
getChecksum()
— Gets the checksum appended to the barcode DescriptionReturns the value that will be appended to the barcode. This method must be called after the method parse().Returnsint - checksum added or false if no checkum is included
-
setDisplayChecksum($display)
— Specifies the checksum to be added to the label DescriptionSetting true will append the checksum to the default label.
The default value is true. -
parse($text)
— Analyzes a $text message to draw afterwards DescriptionThe data you pass to the $text argument must be supported by the type of barcode you use.
Check each barcode's introduction section to obtain more information on how to use this method within each symbology. -
draw($im)
— Draws the barcode on the $im DescriptionThe value of the $im argument must be a GD2 image resource. The size of the image can be defined by the value received from getDimension().
-
getDimension($w, $h)
— Returns an array containing the required size for the image DescriptionReturns an array in which the first index is the image width and the second index is the image height.
The arguments are used to specify the starting point of the drawing. Should be 0 for both.
The BCGDrawing class uses this method to create the image resource.Returnsarray(int, int) - [0] is the width, [1] is the height -
getScale()
— Gets the scale of the barcode DescriptionGets the scale of the barcode. The value is the number of the "smallest" unit in pixel.Returnsint - value in pixels
-
setScale($x)
— Sets the scale of the barcode DescriptionThe barcode will be $x times bigger. Then a pixel will be $x by $x for its size.
-
getForegroundColor()
— Gets the color of the spaces DescriptionGets the color of the spaces of the barcode.Returns
- setForegroundColor($color) — Sets the color of the spaces
-
getBackgroundColor()
— Gets the color of the bars DescriptionGets the color of the bars of the barcode.Returns
- setBackgroundColor($color) — Sets the color of the bars
-
setColor($fg, $bg)
— Sets the color of the bars and spaces DescriptionAn easy and fast method to set the color of the bars and spaces. Check the setForegroundColor() and setBackgroundColor().
-
getOffsetX()
— Gets the X offset DescriptionGets the X offset of the barcode in pixels. The value isn't multiplied by the scale.Returnsint - value in pixels
-
setOffsetX($v)
— Sets the X offset DescriptionSpecifies the X offset of the barcode in pixels multiplied by the scale. The required size returned by getDimension() will be modified accordingly.
-
getOffsetY()
— Gets the Y offset DescriptionGets the Y offset of the barcode in pixels. The value isn't multiplied by the scale.Returnsint - value in pixels
-
setOffsetY($v)
— Sets the Y offset DescriptionSpecifies the Y offset of the barcode in pixels multiplied by the scale. The required size returned by getDimension() will be modified accordingly.
-
addLabel($label)
— Adds a label to the graphic DescriptionAdds a BCGLabel object to the drawing.
-
removeLabel($label)
— Removes a label from the graphic DescriptionRemoves a specific BCGLabel object from the drawing.
-
clearLabels()
— Removes the labels from the graphic DescriptionClears the BCGLabel objects from the drawing.
