Manual - MaxiCode
Introduction
MaxiCode comes from the 2D barcode family. You can encode a specific amount of information within a single barcode.
All the ASCII characters from 0 to 255 are supported. MaxiCode encodes data differently based on the type of characters provided. Some characters are encoded with a higher compression level. See the compression level on the technical page.
This class inherits the BCGBarcode2D class.
Example
Methods
BCGmaxicode's Methods
- getQuietZone() — Gets if the quiet zone will be drawn
-
setQuietZone(
quietZone ) — Specifies to draw a quiet zone around the barcode - getMode() — Gets the barcode mode
-
setMode(
mode ) — Specifies the mode -
setPrimaryMessage(
serviceClass ,countryCode ,postalCode ) — Sets the primary message -
setAcceptECI(
accept ) — Specifies to accepts the ECI codes -
setStructuredAppend(
snum ,st ) — Specifies that data will be expanded between multiple barcodes
BCGBarcode2D's Methods
-
setScaleX(
scaleX ) — Sets the scaling X for the barcode -
setScaleY(
scaleY ) — Sets the scaling Y for the barcode
BCGBarcode's Methods
-
parse(
text ) — Analyzes atext message to draw afterwards -
draw(
image ) — Draws the barcode on theimage -
getDimension(
width ,height ) — Returns an array containing the required size for the image - getScale() — Gets the scale of the barcode
-
setScale(
scale ) — Sets the scale of the barcode - getForegroundColor() — Gets the color of the bars
-
setForegroundColor(
color ) — Sets the color of the bars - getBackgroundColor() — Gets the color of the spaces
-
setBackgroundColor(
color ) — Sets the color of the spaces -
setColor(
foregroundColor ,backgroundColor ) — Sets the color of the bars and spaces - getOffsetX() — Gets the X offset
-
setOffsetX(
value ) — Sets the X offset - getOffsetY() — Gets the Y offset
-
setOffsetY(
value ) — 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
'use strict';
import { createServer } from 'http';
import { BCGColor, BCGDrawing, createSurface, toBuffer } from '@barcode-bakery/barcode-nodejs';
import { BCGmaxicode } from '@barcode-bakery/barcode-nodejs/maxicode';
http.createServer(function (request, response) {
const colorBlack = new BCGColor(0, 0, 0);
const colorWhite = new BCGColor(255, 255, 255);
// Barcode Part
const code = new BCGmaxicode();
code.setScale(2); // Resolution
code.setForegroundColor(colorBlack); // Color of bars
code.setBackgroundColor(colorWhite); // Color of spaces
code.parse('Maxicode');
// Drawing Part
const drawing = new BCGDrawing(createSurface);
toBuffer(drawing, BCGDrawing.ImageFormat.Png, function (err, buffer) {
response.writeHead(200, { "Content-Type": "image/png" });
response.end(buffer);
});
}).listen(8124);
Method explanations
-
getQuietZone()
—
Gets if the quiet zone will be drawn
Returns
bool -true if activated,false otherwise -
setQuietZone(
quietZone ) — Specifies to draw a quiet zone around the barcodeDescriptionTo be read correctly, the MaxiCode must have a quiet zone around the image. You can, however, turn this off.
The default value is true. -
getMode()
—
Gets the barcode mode
DescriptionGets the barcode mode.Returns
int -
setMode(
mode ) — Specifies the modeDescriptionSpecifies the mode to generate the barcode. You can use a mode from 2 to 6. See the technical information page for more information.
The default value is 4. -
setPrimaryMessage(
serviceClass ,countryCode ,postalCode ) — Sets the primary messageDescriptionSets the primary message for modes 2 or 3. If you use this method, you can use theparse() method to populate the secondary message. If you don't use this method but use modes 2 or 3, the barcode will try to extract the data from the message passed to theparse() method.
The service class must be a number between 0 and 999. The country code must be an ISO 3166 country number between 0 and 999. The postal code can be numeric only (mode 2), or alphanumberic (mode 3).
Set theserviceClass to -1 to reset the primary message. -
setAcceptECI(
accept ) — Specifies to accepts the ECI codesDescriptionBy settingtrue in this argument, the backslash characters (ASCII 92 \) will be processed as special characters. These are the special characters you can write.
- \\ : Writes a simple backslash
- \xxxxxx : Writes the ECI xxxxxx character with x representing an integer from 0 to 9
The default value is false. -
setStructuredAppend(
snum ,st ) — Specifies that data will be expanded between multiple barcodesDescriptionMaxiCode data can be separated throughout many different barcodes.
The first argument is the barcode number (beginning with 1), the second argument is the total number of barcodes you have.
It is possible to encode the data on a maximum of 8 different barcodes.Returnsbool -true on success,false on failure
-
setScaleX(
scaleX ) — Sets the scaling X for the barcodeDescriptionThe width in pixel of one module.
The default value is 1.
Note that this method is protected. -
setScaleY(
scaleY ) — Sets the scaling Y for the barcodeDescriptionThe height in pixel of one module.
The default value is 1.
Note that this method is protected.
-
parse(
text ) — Analyzes atext message to draw afterwardsDescriptionThe data you pass to thetext 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(
image ) — Draws the barcode on theimage DescriptionThe value of theimage argument must be an image resource. The size of the image can be defined by the value received fromgetDimension() . -
getDimension(
width ,height ) — Returns an array containing the required size for the imageDescriptionReturns 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.
TheBCGDrawing 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.Returns
int - value in pixels -
setScale(
scale ) — Sets the scale of the barcodeDescriptionThe barcode will bex times bigger. Then a pixel will bex byx for its size. -
getForegroundColor()
—
Gets the color of the bars
DescriptionGets the color of the bars of the barcode.Returns
-
setForegroundColor(
color ) — Sets the color of the bars -
getBackgroundColor()
—
Gets the color of the spaces
DescriptionGets the color of the spaces of the barcode.Returns
-
setBackgroundColor(
color ) — Sets the color of the spaces -
setColor(
foregroundColor ,backgroundColor ) — Sets the color of the bars and spacesDescriptionAn easy and fast method to set the color of the bars and spaces. Check thesetForegroundColor() andsetBackgroundColor() . -
getOffsetX()
—
Gets the X offset
DescriptionGets the X offset of the barcode in pixels. The value isn't multiplied by the scale.Returns
int - value in pixels -
setOffsetX(
value ) — Sets the X offsetDescriptionSpecifies the X offset of the barcode in pixels multiplied by the scale. The required size returned bygetDimension() 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.Returns
int - value in pixels -
setOffsetY(
value ) — Sets the Y offsetDescriptionSpecifies the Y offset of the barcode in pixels multiplied by the scale. The required size returned bygetDimension() will be modified accordingly. -
addLabel(
label ) — Adds a label to the graphicDescriptionAdds aBCGLabel object to the drawing. -
removeLabel(
label ) — Removes a label from the graphicDescriptionRemoves a specificBCGLabel object from the drawing. -
clearLabels()
—
Removes the labels from the graphic
DescriptionClears the
BCGLabel objects from the drawing.