com.lowagie.text.pdf
Class BarcodeDatamatrix

java.lang.Object
  extended by com.lowagie.text.pdf.BarcodeDatamatrix

public class BarcodeDatamatrix
extends java.lang.Object

A DataMatrix 2D barcode generator.


Field Summary
static int DM_ASCII
          ASCII encodation.
static int DM_AUTO
          The best encodation will be used.
static int DM_B256
          Binary encodation.
static int DM_C40
          C40 encodation.
static int DM_EDIFACT
          EDIFACT encodation.
static int DM_ERROR_EXTENSION
          An error while parsing an extension.
static int DM_ERROR_INVALID_SQUARE
          The dimensions given for the symbol are illegal.
static int DM_ERROR_TEXT_TOO_BIG
          The text is too big for the symbology capabilities.
static int DM_EXTENSION
          Allows extensions to be embedded at the start of the text.
static int DM_NO_ERROR
          No error.
static int DM_RAW
          No encodation needed.
static int DM_TEST
          Doesn't generate the image but returns all the other information.
static int DM_TEXT
          TEXT encodation.
static int DM_X21
          X21 encodation.
 
Constructor Summary
BarcodeDatamatrix()
          Creates an instance of this class.
 
Method Summary
 java.awt.Image createAwtImage(java.awt.Color foreground, java.awt.Color background)
          Creates a java.awt.Image.
 Image createImage()
          Gets an Image with the barcode.
 int generate(byte[] text, int textOffset, int textSize)
          Creates a barcode.
 int generate(java.lang.String text)
          Creates a barcode.
 int getHeight()
          Gets the height of the barcode.
 byte[] getImage()
          Gets the generated image.
 int getOptions()
          Gets the barcode options.
 int getWidth()
          Gets the width of the barcode.
 int getWs()
          Gets the whitespace border around the barcode.
 void setHeight(int height)
          Sets the height of the barcode.
 void setOptions(int options)
          Sets the options for the barcode generation.
 void setWidth(int width)
          Sets the width of the barcode.
 void setWs(int ws)
          Sets the whitespace border around the barcode.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DM_NO_ERROR

public static final int DM_NO_ERROR
No error.

See Also:
Constant Field Values

DM_ERROR_TEXT_TOO_BIG

public static final int DM_ERROR_TEXT_TOO_BIG
The text is too big for the symbology capabilities.

See Also:
Constant Field Values

DM_ERROR_INVALID_SQUARE

public static final int DM_ERROR_INVALID_SQUARE
The dimensions given for the symbol are illegal.

See Also:
Constant Field Values

DM_ERROR_EXTENSION

public static final int DM_ERROR_EXTENSION
An error while parsing an extension.

See Also:
Constant Field Values

DM_AUTO

public static final int DM_AUTO
The best encodation will be used.

See Also:
Constant Field Values

DM_ASCII

public static final int DM_ASCII
ASCII encodation.

See Also:
Constant Field Values

DM_C40

public static final int DM_C40
C40 encodation.

See Also:
Constant Field Values

DM_TEXT

public static final int DM_TEXT
TEXT encodation.

See Also:
Constant Field Values

DM_B256

public static final int DM_B256
Binary encodation.

See Also:
Constant Field Values

DM_X21

public static final int DM_X21
X21 encodation.

See Also:
Constant Field Values

DM_EDIFACT

public static final int DM_EDIFACT
EDIFACT encodation.

See Also:
Constant Field Values

DM_RAW

public static final int DM_RAW
No encodation needed. The bytes provided are already encoded.

See Also:
Constant Field Values

DM_EXTENSION

public static final int DM_EXTENSION
Allows extensions to be embedded at the start of the text.

See Also:
Constant Field Values

DM_TEST

public static final int DM_TEST
Doesn't generate the image but returns all the other information.

See Also:
Constant Field Values
Constructor Detail

BarcodeDatamatrix

public BarcodeDatamatrix()
Creates an instance of this class.

Method Detail

generate

public int generate(java.lang.String text)
             throws java.io.UnsupportedEncodingException
Creates a barcode. The String is interpreted with the ISO-8859-1 encoding

Parameters:
text - the text
Returns:
the status of the generation. It can be one of this values:

DM_NO_ERROR - no error.
DM_ERROR_TEXT_TOO_BIG - the text is too big for the symbology capabilities.
DM_ERROR_INVALID_SQUARE - the dimensions given for the symbol are illegal.
DM_ERROR_EXTENSION - an error was while parsing an extension.

Throws:
java.io.UnsupportedEncodingException - on error

generate

public int generate(byte[] text,
                    int textOffset,
                    int textSize)
Creates a barcode.

Parameters:
text - the text
textOffset - the offset to the start of the text
textSize - the text size
Returns:
the status of the generation. It can be one of this values:

DM_NO_ERROR - no error.
DM_ERROR_TEXT_TOO_BIG - the text is too big for the symbology capabilities.
DM_ERROR_INVALID_SQUARE - the dimensions given for the symbol are illegal.
DM_ERROR_EXTENSION - an error was while parsing an extension.


createImage

public Image createImage()
                  throws BadElementException
Gets an Image with the barcode. A successful call to the method generate() before calling this method is required.

Returns:
the barcode Image
Throws:
BadElementException - on error

createAwtImage

public java.awt.Image createAwtImage(java.awt.Color foreground,
                                     java.awt.Color background)
Creates a java.awt.Image. A successful call to the method generate() before calling this method is required.

Parameters:
foreground - the color of the bars
background - the color of the background
Returns:
the image

getImage

public byte[] getImage()
Gets the generated image. The image is represented as a stream of bytes, each byte representing 8 pixels, 0 for white and 1 for black, with the high-order bit of each byte first. Each row is aligned at byte boundaries. The dimensions of the image are defined by height and width plus 2 * ws.

Returns:
the generated image

getHeight

public int getHeight()
Gets the height of the barcode. Will contain the real height used after a successful call to generate(). This height doesn't include the whitespace border, if any.

Returns:
the height of the barcode

setHeight

public void setHeight(int height)
Sets the height of the barcode. If the height is zero it will be calculated. This height doesn't include the whitespace border, if any.

The allowed dimensions are (height, width):

10, 10
12, 12
8, 18
14, 14
8, 32
16, 16
12, 26
18, 18
20, 20
12, 36
22, 22
16, 36
24, 24
26, 26
16, 48
32, 32
36, 36
40, 40
44, 44
48, 48
52, 52
64, 64
72, 72
80, 80
88, 88
96, 96
104, 104
120, 120
132, 132
144, 144

Parameters:
height - the height of the barcode

getWidth

public int getWidth()
Gets the width of the barcode. Will contain the real width used after a successful call to generate(). This width doesn't include the whitespace border, if any.

Returns:
the width of the barcode

setWidth

public void setWidth(int width)
Sets the width of the barcode. If the width is zero it will be calculated. This width doesn't include the whitespace border, if any.

The allowed dimensions are (height, width):

10, 10
12, 12
8, 18
14, 14
8, 32
16, 16
12, 26
18, 18
20, 20
12, 36
22, 22
16, 36
24, 24
26, 26
16, 48
32, 32
36, 36
40, 40
44, 44
48, 48
52, 52
64, 64
72, 72
80, 80
88, 88
96, 96
104, 104
120, 120
132, 132
144, 144

Parameters:
width - the width of the barcode

getWs

public int getWs()
Gets the whitespace border around the barcode.

Returns:
the whitespace border around the barcode

setWs

public void setWs(int ws)
Sets the whitespace border around the barcode.

Parameters:
ws - the whitespace border around the barcode

getOptions

public int getOptions()
Gets the barcode options.

Returns:
the barcode options

setOptions

public void setOptions(int options)
Sets the options for the barcode generation. The options can be:

One of:
DM_AUTO - the best encodation will be used
DM_ASCII - ASCII encodation
DM_C40 - C40 encodation
DM_TEXT - TEXT encodation
DM_B256 - binary encodation
DM_X21 - X21 encodation
DM_EDIFACT - EDIFACT encodation
DM_RAW - no encodation. The bytes provided are already encoded and will be added directly to the barcode, using padding if needed. It assumes that the encodation state is left at ASCII after the last byte.

One of:
DM_EXTENSION - allows extensions to be embedded at the start of the text:

exxxxxx - ECI number xxxxxx
m5 - macro 5
m6 - macro 6
f - FNC1
saabbccccc - Structured Append, aa symbol position (1-16), bb total number of symbols (2-16), ccccc file identification (0-64515)
p - Reader programming
. - extension terminator

Example for a structured append, symbol 2 of 6, with FNC1 and ECI 000005. The actual text is "Hello".

s020600075fe000005.Hello

One of:
DM_TEST - doesn't generate the image but returns all the other information.

Parameters:
options - the barcode options


iText 2.1.7