Barcode (Barbecue 1.0.6d API)
Keywords: net.sourceforge.barbecue.Barcode class

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## net.sourceforge.barbecue
Class Barcode

    java.lang.Object
      java.awt.Component
          java.awt.Container
              javax.swing.JComponent
                  net.sourceforge.barbecue.Barcode

All Implemented Interfaces:
  java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable

Direct Known Subclasses:
  CodabarBarcode, Code128Barcode, Code39Barcode, PDF417Barcode

public abstract class Barcode
extends javax.swing.JComponent

Abstract barcode class that provides functionality that is common to all barcodes. Specific barcode implementations must subclass this and provide information specific to the barcode type they are implementing.

Author:
  Ian Bourke
See Also:
  Serialized Form

Nested Class Summary

Nested classes inherited from class javax.swing.JComponent
`javax.swing.JComponent.AccessibleJComponent`

Nested classes inherited from class java.awt.Container
`java.awt.Container.AccessibleAWTContainer`

Nested classes inherited from class java.awt.Component
`java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy`

Field Summary
`protected double` | `barHeight`
`protected double` | `barWidth`
`protected java.lang.String` | `data`
`protected boolean` | `drawingText`

Fields inherited from class javax.swing.JComponent
`accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW`

Fields inherited from class java.awt.Component
`BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT`

Fields inherited from interface java.awt.image.ImageObserver
`ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH`

Constructor Summary
`protected` | `Barcode(java.lang.String data)`

Method Summary
`protected java.lang.String` | `beautify(java.lang.String s)`
`protected abstract Module` | `calculateChecksum()`
`protected double` | `calculateMinimumBarHeight(int resolution)`
`void` | `draw(java.awt.Graphics2D g, int x, int y)` Renders this `Barcode` at the specified location in the specified `Graphics2D` context.
`protected double` | `drawModule(Module module, AbstractOutput params, double x, double y)`
`protected abstract Module[]` | `encodeData()`
`protected abstract double` | `getBarcodeWidth(int resolution)`
`java.awt.Rectangle` | `getBounds()` From `JComponent`.
`java.awt.Rectangle` | `getBounds(java.awt.Rectangle rv)` From `JComponent`.
`java.lang.String` | `getData()` Returns the data that the barcode is coding for.
`int` | `getHeight()` From `JComponent`.
`protected java.lang.String` | `getLabel()` Returns the text that will be displayed underneath the barcode (if requested).
`java.awt.Dimension` | `getMaximumSize()` From `JComponent`.
`java.awt.Dimension` | `getMinimumSize()` From `JComponent`.
`protected abstract Module` | `getPostAmble()`
`protected abstract Module` | `getPreAmble()`
`java.awt.Dimension` | `getPreferredSize()` From `JComponent`.
`protected int` | `getResolution()`
`java.awt.Dimension` | `getSize()` From `JComponent`.
`java.lang.String` | `getSVG()`
`int` | `getWidth()` From `JComponent`.
`int` | `getX()` From `JComponent`.
`int` | `getY()` From `JComponent`.
`boolean` | `isDrawingText()` Indicates whether the barcode is drawing a text label underneath the barcode or not.
`void` | `outputSVG(java.io.Writer out)`
`protected void` | `paintComponent(java.awt.Graphics g)` From `JComponent`.
`void` | `setBarHeight(double barHeight)` Sets the desired height for the bars in the barcode (in pixels).
`void` | `setBarWidth(double barWidth)` Sets the desired bar width for the barcode.
`void` | `setDrawingText(boolean drawingText)` Indicates whether the barcode data should be shown as a string underneath the barcode or not.
`void` | `setFont(java.awt.Font font)` Sets the font to use when drawing the barcode data string underneath the barcode.
`void` | `setResolution(int resolution)` Sets the desired output resolution for the barcode.
`void` | `setSVGScalar(double scalar, java.lang.String units)`

Methods inherited from class javax.swing.JComponent
`addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getNextFocusableComponent, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setForeground, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update, updateUI`

Methods inherited from class java.awt.Container
`add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree`

Methods inherited from class java.awt.Component
`action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, getBackground, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### data

    protected java.lang.String data

### drawingText

    protected boolean drawingText

### barWidth

    protected double barWidth

### barHeight

    protected double barHeight

Constructor Detail

### Barcode

    protected Barcode(java.lang.String data)
               throws BarcodeException

Method Detail

### getData

    public java.lang.String getData()

  Returns the data that the barcode is coding for.

  Returns:
    The barcode raw data

### setFont

    public void setFont(java.awt.Font font)

  Sets the font to use when drawing the barcode data string underneath the barcode.

  Note that changing this setting after a barcode has been drawn will invalidate the component and may force a refresh.

  Parameters:
    `font` - The font to use

### setDrawingText

    public void setDrawingText(boolean drawingText)

  Indicates whether the barcode data should be shown as a string underneath the barcode or not.

  Note that changing this setting after a barcode has been drawn will invalidate the component and may force a refresh.

  Parameters:
    `drawingText` - True if the text should be shown, false if not

### isDrawingText

    public boolean isDrawingText()

  Indicates whether the barcode is drawing a text label underneath the barcode or not.

  Returns:
    True if the text is drawn, false otherwise

### setBarWidth

    public void setBarWidth(double barWidth)

  Sets the desired bar width for the barcode. This is the width (in pixels) of the thinnest bar in the barcode. Other bars will change their size relative to this.

  Note that changing this setting after a barcode has been drawn will invalidate the component and may force a refresh.

  Parameters:
    `barWidth` - The desired width of the thinnest bar in pixels

### setBarHeight

    public void setBarHeight(double barHeight)

  Sets the desired height for the bars in the barcode (in pixels). Note that some barcode implementations will not allow the height to go below a minimum size. This is not the height of the component as a whole, as it does not specify the height of any text that may be drawn and does not include borders.

  Note that changing this setting after a barcode has been drawn will invalidate the component and may force a refresh.

  Parameters:
    `barHeight` - The desired height of the barcode bars in pixels

### setResolution

    public void setResolution(int resolution)

  Sets the desired output resolution for the barcode. This method should be used in cases where the barcode is either being outputted to a device other than the screen, or the barcode is being generated on a headless machine (e.g. a rack mounted server) and the screen resolution cannot be determined. Note that is the barcode is generated in either of these situations and this method has not been called, the resolution is assumed to be 72 dots per inch.

  Parameters:
    `resolution` - The desired output resolution (in dots per inch)

### getX

    public int getX()

  From `JComponent`.

  Returns:
    The X co-ordinate of the component's origin

### getY

    public int getY()

  From `JComponent`.

  Returns:
    The Y co-ordinate of the component's origin

### getWidth

    public int getWidth()

  From `JComponent`.

  Returns:
    The width of this component

### getHeight

    public int getHeight()

  From `JComponent`.

  Returns:
    The height of this component

### getBounds

    public java.awt.Rectangle getBounds()

  From `JComponent`.

  Returns:
    The bounds of this component

### getBounds

    public java.awt.Rectangle getBounds(java.awt.Rectangle rv)

  From `JComponent`.

  Parameters:
    `rv` - The rectangle to set the bounds on
  Returns:
    The updated rv

### getPreferredSize

    public java.awt.Dimension getPreferredSize()

  From `JComponent`.

  Returns:
    The preferred size of this component

### getMinimumSize

    public java.awt.Dimension getMinimumSize()

  From `JComponent`.

  Returns:
    The minimum size of this component

### getMaximumSize

    public java.awt.Dimension getMaximumSize()

  From `JComponent`.

  Returns:
    The maximum size of this component

### getSize

    public java.awt.Dimension getSize()

  From `JComponent`.

  Returns:
    The actual size of this component

### draw

    public void draw(java.awt.Graphics2D g,
                     int x,
                     int y)

  Renders this `Barcode` at the specified location in the specified `Graphics2D` context. The origin of the layout is placed at x, y. Rendering may touch any point within `getBounds()` of this position. This leaves the `g2` unchanged.

  Parameters:
    `g` - The graphics context
    `x` - The horizontal value of the upper left co-ordinate of the bounding box
    `y` - The vertical value of the upper left co-ordinate of the bounding box

### getBarcodeWidth

    protected abstract double getBarcodeWidth(int resolution)

### encodeData

    protected abstract Module[] encodeData()

### calculateChecksum

    protected abstract Module calculateChecksum()

### getPreAmble

    protected abstract Module getPreAmble()

### getPostAmble

    protected abstract Module getPostAmble()

### getLabel

    protected java.lang.String getLabel()

  Returns the text that will be displayed underneath the barcode (if requested).

  Returns:
    The text label for the barcode

### calculateMinimumBarHeight

    protected double calculateMinimumBarHeight(int resolution)

### paintComponent

    protected void paintComponent(java.awt.Graphics g)

  From `JComponent`.

  Parameters:
    `g` - The graphics to paint the component onto

### getResolution

    protected int getResolution()

### drawModule

    protected double drawModule(Module module,
                                AbstractOutput params,
                                double x,
                                double y)

### beautify

    protected java.lang.String beautify(java.lang.String s)

### getSVG

    public java.lang.String getSVG()

### outputSVG

    public void outputSVG(java.io.Writer out)

### setSVGScalar

    public void setSVGScalar(double scalar,
                             java.lang.String units)

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD