Skip to content

Instantly share code, notes, and snippets.

@aspose-com-gists
Last active July 23, 2020 08:17
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save aspose-com-gists/9dea2dd38be50330a824dd05da062a97 to your computer and use it in GitHub Desktop.
Save aspose-com-gists/9dea2dd38be50330a824dd05da062a97 to your computer and use it in GitHub Desktop.
Aspose.BarCode for Java

This Gist contains code snippets for sample code of Aspose.BarCode for Java.

Gists for Aspose.BarCode for Java
// The path to the resource directory.
String dataDir = Utils.getDataDir(ApplyALicense.class) + "License/";
// Apply a license to avoid the evaluation WaterMark in the BarCode image.
License license = new License();
license.setLicense(dataDir + "Aspose.Total.Java.lic");
// Apply a license to avoid the evaluation WaterMark in the BarCode image.
License license = new License();
license.setLicense(new java.io.FileInputStream("Aspose.BarCode.Java.lic"));
// set metered public and private keys
com.aspose.barcode.metered.Metered objMeter = new com.aspose.barcode.metered.Metered();
// Access the setMeteredKey property and pass public and private keys as parameters
objMeter.setMeteredKey("PublicKey", "PrivateKey");
// DO PROCESSING
// get metered data amount
double amount = com.aspose.barcode.metered.Metered.getConsumptionQuantity();
// Display information
System.out.println("Amount consumed: " + amount);
// The path to the resource directory.
String dataDir = Utils.getDataDir(Checksum.class) + "Barcode/AdvancedFeatures/";
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.CODE_128, "12345");
generator.getParameters().getBarcode().setChecksumAlwaysShow(true);
// Save the Barcode image to file
generator.save(dataDir + "checksum.jpg");
// The path to the resource directory.
String dataDir = Utils.getDataDir(ApplyingChecksumValidation.class) + "Barcode/AdvancedFeatures/";
// Generation
// Instantiate BarcodeGenerator object
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODABAR, "1234567890");
// Set the EnableChecksum property to yes
generator.getParameters().getBarcode().setChecksumEnabled(EnableChecksum.YES);
// Set the CodabarChecksumMode
generator.getParameters().getBarcode().getCodabar().setCodabarChecksumMode(CodabarChecksumMode.MOD_10);
// Save the image on the system
generator.save(dataDir + "Codabar_Mod10.png");
// Recognition
// Initialize reader object
BarCodeReader reader = new BarCodeReader(dataDir + "Codabar_Mod10.png", DecodeType.CODABAR);
// Set ChecksumValidation property of the reader to On
reader.setChecksumValidation(ChecksumValidation.ON);
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println("CodeText: " + result.getCodeText());
System.out.println("Symbology type: " + result.getCodeType());
// Get checksum value
System.out.println("Checksum:" + result.getExtended().getOneD().getCheckSum());
}
// The path to the resource directory.
String dataDir = Utils.getDataDir(ApplyingChecksumValidation.class) + "Barcode/AdvancedFeatures/";
// Create an instance of BarCodeReader class and load an existing
// oncecode barcode.
BarCodeReader reader = new BarCodeReader(dataDir + "onecode.png", DecodeType.ONE_CODE);
// Set the ChecksumValidation property to Off.
reader.setChecksumValidation(ChecksumValidation.OFF);
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println("CodeText: " + result.getCodeText());
System.out.println("Symbology type: " + result.getCodeType());
}
// The path to the resource directory.
String dataDir = Utils.getDataDir(SupplementData.class) + "Barcode/AdvancedFeatures/";
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.DATABAR_EXPANDED_STACKED,
"(01)98898765432106(3202)012345(15)991231");
// Set the column property to define segments per row
generator.getParameters().getBarcode().getDataBar().setColumns(6);
// Save the image
generator.save(dataDir + "6segmets.png");
// The path to the resource directory.
String dataDir = Utils.getDataDir(Checksum.class) + "Barcode/AdvancedFeatures/";
BarcodeGenerator bb = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_39_STANDARD, "1234567");
// Make the checksum to be visible on the barcode
bb.getParameters().getBarcode().setChecksumEnabled(EnableChecksum.DEFAULT);
// Save the Barcode image to file
bb.save(dataDir + "checksum.jpg");
// The path to the resource directory.
String dataDir = Utils.getDataDir(GenerateAPatchCode.class) + "Barcode/AdvancedFeatures/";
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.PATCH_CODE, "Patch T");
generator.save(dataDir + "patch.bmp");
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.PATCH_CODE, "Patch T");
generator.getParameters().getImageWidth().setMillimeters(150); // in millimeters
generator.getParameters().getBarcode().getPadding().getTop().setPixels(0.5f);// make the same small margins
generator.getParameters().getBarcode().getPadding().getRight().setPixels(0.5f);
generator.getParameters().getBarcode().getPadding().getLeft().setPixels(0.5f);
generator.getParameters().getBarcode().getPadding().getBottom().setPixels(0.5f);
// to hide codetext
generator.getParameters().getBarcode().getCodeTextParameters().setLocation(CodeLocation.NONE);
BufferedImage topImg = generator.generateBarCodeImage();
generator.getParameters().setRotationAngle(90);
BufferedImage leftImg = generator.generateBarCodeImage();
generator.getParameters().setRotationAngle(90);
BufferedImage bottomImg = generator.generateBarCodeImage();
generator.getParameters().setRotationAngle(90);
BufferedImage rigthtImg = generator.generateBarCodeImage();
BufferedImage frameImg = new BufferedImage(topImg.getWidth(), rigthtImg.getHeight() + 2 * topImg.getHeight(),
rigthtImg.getType());
// Initialize graphics object from the image
Graphics graphics = frameImg.getGraphics();
graphics.drawImage(topImg, 0, 0, null);
graphics.drawImage(leftImg, 0, topImg.getHeight(), null);
graphics.drawImage(bottomImg, 0, topImg.getHeight() + leftImg.getHeight(), null);
graphics.drawImage(rigthtImg, topImg.getWidth() - rigthtImg.getWidth(), topImg.getHeight(), null);
// save Patch code frame
File outputfile = new File(
Utils.getDataDir(GenerateAPatchCode.class) + "Barcode/AdvancedFeatures/" + "patch-code-frame.png");
ImageIO.write(frameImg, "png", outputfile);
// The path to the resource directory.
String dataDir = Utils.getDataDir(GenerateAPatchCode.class) + "Barcode/AdvancedFeatures/";
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.PATCH_CODE, "Patch T");
generator.getParameters().getBarcode().getPatchCode().setPatchFormat(PatchFormat.US_LETTER);
generator.save(dataDir + "patch.bmp");
// The path to the resource directory.
String dataDir = Utils.getDataDir(GenerateAustraliaPostBarcode.class) + "Barcode/AdvancedFeatures/";
// Create instance of BarcodeGenerator, specify code-text and Symbology in the
// constructor
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.AUSTRALIA_POST, "1234567890");
// Save the image to disk in PNG format
generator.save(dataDir + "australiaPostBarcode.png");
// The path to the resource directory.
String dataDir = Utils.getDataDir(ManageXAndYDimension.class) + "Barcode/AdvancedFeatures/";
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_128, "12345678");
// Set the x-dimension for the bars of the barcode
generator.getParameters().getBarcode().getXDimension().setMillimeters(0.5f);
// Save the Barcode image to file
generator.save(dataDir + "xDimention.jpg");
// The path to the resource directory.
String dataDir = Utils.getDataDir(ManageXAndYDimension.class) + "Barcode/AdvancedFeatures/";
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.PDF_417, "12345678");
// Set the Y-Dimension for the bars of the barcode
generator.getParameters().getBarcode().getBarHeight().setMillimeters(4);
// Save the Barcode image to file
generator.save(dataDir + "yDimention.jpg");
// The path to the resource directory.
String dataDir = Utils.getDataDir(SetBarsHeight.class) + "Barcode/AdvancedFeatures/";
// Instantiate barcode object
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_128, "12345678");
// Set the bar height to be 3 milimeter
generator.getParameters().getBarcode().getBarHeight().setMillimeters(3.0f);
// Save the Barcode image to file
generator.save(dataDir + "barsHeight.jpg");
// The path to the resource directory.
String dataDir = Utils.getDataDir(SetStartAndStopSymbols.class) + "Barcode/AdvancedFeatures/";
// Create instance of BarcodeGenerator, specify codetext and symbology in the
// constructor
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODABAR, "12345678");
// Set the Codabar start symbol to A
generator.getParameters().getBarcode().getCodabar().setCodabarStartSymbol(CodabarSymbol.A);
// Set the Codabar stop symbol to D
generator.getParameters().getBarcode().getCodabar().setCodabarStopSymbol(CodabarSymbol.D);
// Save the image to disk in PNG format
generator.save(dataDir + "startAndStopSymbols.png");
// The path to the resource directory.
String dataDir = Utils.getDataDir(SupplementData.class) + "Barcode/AdvancedFeatures/";
// Create instance of BarcodeGenerator, specify codetext and symbology in the
// constructor
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.EAN_13, "123456789123");
// Set the supplement data (5 Digit)
generator.getParameters().getBarcode().getSupplement().setSupplementData("12345");
// Set space between the supplemental barcode and main barcode
generator.getParameters().getBarcode().getSupplement().getSupplementSpace().setPoint(2.0f);
// Save the Barcode image to file
generator.save(dataDir + "supplementData.jpg");
// The path to the resource directory.
String dataDir = Utils.getDataDir(WideNarrowRatio.class) + "Barcode/AdvancedFeatures/";
// Instantiate barcode object
// Create instance of BarcodeGenerator, specify codetext and symbology in the
// constructor
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_128, "12345678");
// Set the wide to narrow ratio for the barcode
generator.getParameters().getBarcode().setWideNarrowRatio(3.0f);
// Save the image to disk in PNG format
generator.save(dataDir + "wideNarrowRatio.png");
// The path to the resource directory.
String dataDir = Utils.getDataDir(BarcodeCaption.class) + "Barcode/BasicFeatures/";
// Create instance of BarcodeGenerator, specify codetext and symbology in the
// constructor
BarcodeGenerator bb = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_128, "12345678");
bb.getParameters().getCaptionAbove().setAlignment(TextAlignment.LEFT);
bb.getParameters().getCaptionAbove().setText("Aspose.Demo");
bb.getParameters().getCaptionAbove().setVisible(true);
bb.getParameters().getCaptionAbove().getFont().setFamilyName("Pristina");
bb.getParameters().getCaptionAbove().getFont().getSize().setPoint(14);
bb.getParameters().getCaptionAbove().setTextColor(java.awt.Color.RED);
bb.getParameters().getCaptionBelow().setAlignment(TextAlignment.RIGHT);
bb.getParameters().getCaptionBelow().setText("Aspose.Demo");
bb.getParameters().getCaptionBelow().setVisible(true);
bb.getParameters().getCaptionBelow().getFont().setFamilyName("Pristina");
bb.getParameters().getCaptionBelow().getFont().getSize().setPoint(14);
bb.getParameters().getCaptionBelow().setTextColor(java.awt.Color.RED);
// Save the Barcode image to file
bb.save(dataDir + "barcodeCaption.jpg");
// The path to the resource directory.
String dataDir = Utils.getDataDir(CodeTextForegroundColor.class) + "Barcode/BasicFeatures/";
// Create instance of BarcodeGenerator, specify codetext and symbology in the
// constructor
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_128, "12345678");
// Set up code text color
generator.getParameters().getBarcode().getCodeTextParameters().setColor(Color.RED);
// Save the Barcode image to file
generator.save(dataDir + "codeTextForegroundColor.jpg");
// The path to the resource directory.
String dataDir = Utils.getDataDir(CodeTextLocation.class) + "Barcode/BasicFeatures/";
// Create instance of BarcodeGenerator, specify codetext and symbology in the
// constructor
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.DATA_MATRIX,
"GTIN:898978777776665655 " + "UID: 121212121212121212 " + "Batch:GH768 " + "Exp.Date:150923");
// Set up code text color
generator.getParameters().getBarcode().getCodeTextParameters().setLocation(CodeLocation.ABOVE);
generator.save(dataDir + "codetextAbove.png");
// The path to the resource directory.
String dataDir = Utils.getDataDir(SetCodeText.class) + "Barcode/BasicFeatures/";
// Create instance of BarcodeGenerator, specify codetext and symbology in the
// constructor
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_128, "12345678");
// Set the width of the bars to 0.5 millimeter
generator.getParameters().getBarcode().getXDimension().setMillimeters(0.5f);
// Save the barcode image to file
generator.save(dataDir + "setCodeText.jpg");
// The path to the resource directory.
String dataDir = Utils.getDataDir(SpecifySymbology.class) + "Barcode/BasicFeatures/";
// Create instance of BarcodeGenerator, specify codetext and symbology in the
// constructor
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_39_STANDARD, "Test-123");
generator.save(dataDir + "Code39Standard.jpg");
// The path to the resource directory.
String dataDir = Utils.getDataDir(BarcodeImageBorders.class) + "BarcodeImage/BasicFeatures/";
// Instantiate Barcode object, Set the Symbology type to code128 and Set the
// Code text for the barcode
BarcodeGenerator bb = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_128, "1234567");
// Set border style to solid
bb.getParameters().getBorder().setDashStyle(BorderDashStyle.SOLID);
// Set border margins for Top, Right, Left and Bottom
bb.getParameters().getBarcode().getPadding().getTop().setPixels(2f);
bb.getParameters().getBarcode().getPadding().getRight().setPixels(2f);
bb.getParameters().getBarcode().getPadding().getLeft().setPixels(2f);
bb.getParameters().getBarcode().getPadding().getBottom().setPixels(2f);
// Set border width
bb.getParameters().getBorder().getWidth().setPixels(2.5f);
// Set the border's color to red
bb.getParameters().getBorder().setColor(java.awt.Color.RED);
// Enable border to be shown in the barcode
bb.getParameters().getBorder().setVisible(true);
// Save the image
bb.save(dataDir + "barcode-image-borders.jpg");
// Enable border to be shown in the barcode
bb.getParameters().getBorder().setVisible(true);
// The path to the resource directory.
String dataDir = Utils.getDataDir(BarcodeImageMargins.class) + "BarcodeImage/BasicFeatures/";
BarcodeGenerator bb = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_128, "1234567");
//Set border margins for Top, Right, Left and Bottom
bb.getParameters().getBarcode().getPadding().getTop().setPixels(2f);
bb.getParameters().getBarcode().getPadding().getRight().setPixels(2f);
bb.getParameters().getBarcode().getPadding().getLeft().setPixels(2f);
bb.getParameters().getBarcode().getPadding().getBottom().setPixels(2f);
// Save the image
bb.save(dataDir + "barcode-image-margins.jpg");
// The path to the resource directory.
String dataDir = Utils.getDataDir(BarcodeImageQuality.class) + "BarcodeImage/BasicFeatures/";
BarcodeGenerator bb = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_128,"1234567");
bb.getParameters().setResolution(400);
// Save the image
bb.save(dataDir + "barcode-image-quality.jpg");
// The path to the resource directory.
String dataDir = Utils.getDataDir(ColorizeBarcodeImage.class) + "BarcodeImage/BasicFeatures/";
BarcodeGenerator bb = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_128,"1234567");
//Set background color of the barcode
bb.getParameters().setBackColor(Color.YELLOW);
//Set the foreground color of the barcode
bb.getParameters().getBarcode().setBarColor(Color.BLUE);
//Set border's color
bb.getParameters().getBorder().setColor(Color.RED);
//Set the code text's color
bb.getParameters().getBarcode().getCodeTextParameters().setColor(Color.RED);
// Save the image
bb.save(dataDir + "colorizeBarcode.png");
// The path to the resource directory.
String dataDir = Utils.getDataDir(GenerateBarcodeWithEmptyBars.class) + "BarcodeImage/BasicFeatures/";
//Create an instance of BarcodeGenerator and initialize it with CodeText and Symbology
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_128, "TEXT");
//Set the FilledBars property to false
generator.getParameters().getBarcode().setFilledBars(false);
//Save the resultant barcode image on disk
generator.save(dataDir + "barcodeWithEmptyBars.png", BarCodeImageFormat.PNG);
// The path to the resource directory.
String dataDir = Utils.getDataDir(RotateBarcodeImage.class) + "BarcodeImage/BasicFeatures/";
BarcodeGenerator bb = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_39_EXTENDED,"1234567");
//Rotate clockwise for 180 degree (upside down)
bb.getParameters().setRotationAngle(180);
// Save the image
bb.save(dataDir + "barcode-image-rotate.jpg");
public class RenderBarcodeToGraphicsObject {
public static void main(String[] args) {
// Create frame instance
Frame f = new Frame();
// Set frame size
f.setSize(300, 300);
// Create and add barcode instance to frame
f.add(new MyBarCode());
// Display frame
f.setVisible(true);
}
}
class MyBarCode extends java.awt.Canvas {
public void paint(Graphics g) {
// The path to the resource directory.
String dataDir = Utils.getDataDir(MyBarCode.class) + "BarcodeImage/RenderingFeatures/";
String fileName = dataDir + "barcode.png";
BarcodeGenerator bb = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_128, "12345678");
try {
bb.save(fileName);
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
// Load and Draw the image on applet
MediaTracker tr = new MediaTracker(this);
File sourceimage = new File(fileName);
Image image;
try {
image = ImageIO.read(sourceimage);
tr.addImage(image, 0);
g.drawImage(image, 0, 0, this);
} catch (IOException e) {
e.printStackTrace();
}
}
public Dimension getPreferredSize() {
return new Dimension(300, 300);
}
}
BarcodeGenerator bb = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_128, "12345678");
// Generate bar code image
Image image = bb.generateBarCodeImage();
public class RenderBarcodeToPrinter {
public static void main(String[] args) {
// Create frame instance
Frame f = new Frame();
// Set frame size
f.setSize(300, 300);
// Create and add barcode instance to frame
f.add(new RenderBarCode());
// Display frame
f.setVisible(true);
}
}
class RenderBarCode extends java.awt.Canvas {
public void paint(Graphics g) {
BarcodeGenerator bb = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_128, "1234567");
BufferedImage bimg = (BufferedImage) bb.generateBarCodeImage();
int w = bimg.getWidth();
int h = bimg.getHeight();
int[] rgb = new int[w * h];
bimg.getRGB(0, 0, w, h, rgb, 0, w);
if (rgb.length > 0) {
System.out.println("RGB OK.");
}
g.drawImage(bimg, 0, 0, this);
}
public Dimension getPreferredSize() {
return new Dimension(300, 300);
}
}
public class RenderBarcodeToServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
BarcodeGenerator bb = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_128, "1234567");
BufferedImage image = bb.generateBarCodeImage();
response.setContentType("image/png");
OutputStream outputStream = response.getOutputStream();
ImageIO.write(image, "png", outputStream);
outputStream.close();
}
}
// The path to the resource directory.
String dataDir = Utils.getDataDir(BarcodeCustomSize.class) + "BarcodeImage/UtilityFeatures/";
// Instantiate barcode object, Set the Code text for the barcode and the
// symbology type to Code39Standard
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_39_STANDARD,
"1234567890");
// Set auto size false
generator.getParameters().setAutoSizeMode(AutoSizeMode.NEAREST);
// Set height
generator.getParameters().getImageHeight().setMillimeters(50);
// Set width
generator.getParameters().getImageWidth().setMillimeters(120);
// Save the image
generator.save(dataDir + "barcode-custom-size.jpg");
// The path to the resource directory.
String dataDir = Utils.getDataDir(BarcodeImageResolution.class) + "BarcodeImage/UtilityFeatures/";
// Instantiate barcode object, Set the symbology type to code128 and Set the
// Code text for the barcode
BarcodeGenerator bb = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_128, "1234567");
// customized resolution settings
bb.getParameters().setResolution(200f);
// Save the image
bb.save(dataDir + "barcode-image-resolution.jpg");
// The path to the resource directory.
String dataDir = Utils.getDataDir(BarcodeCustomSize.class) + "BarcodeImage/UtilityFeatures/";
// Instantiate barcode object, Set the symbology type to code128 and Set the
// Code text for the barcode
BarcodeGenerator bb = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_128, "1234567");
bb.getParameters().setAutoSizeMode(AutoSizeMode.NONE);
// Set image height & width to minimum
bb.getParameters().getImageWidth().setMillimeters(1);
bb.getParameters().getImageHeight().setMillimeters(1);
// Save the barcode image
javax.imageio.ImageIO.write(bb.generateBarCodeImage(), "PNG", new java.io.File(dataDir + "minimumresult.png"));
// The path to the resource directory.
String dataDir = Utils.getDataDir(SaveBarcodeImagesToDifferentFormats.class) + "BarcodeImage/UtilityFeatures/";
// Instantiate barcode object, Set the symbology type to code128 and Set the
// Code text for the barcode
BarcodeGenerator bb = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_128, "1234567");
// Save the image to your system and set its image format to Jpeg
bb.save(dataDir + "barcode-image-format.jpg", BarCodeImageFormat.JPEG);
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.CODE_128, "123456");
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
generator.save(outStream, BarCodeImageFormat.JPEG);
// The path to the resource directory.
String dataDir = Utils.getDataDir(SetSizeUnitForBarcodeImage.class) + "BarcodeImage/UtilityFeatures/";
// Instantiate barcode object, Set the symbology type to code128 and Set the
// Code text for the barcode
BarcodeGenerator bb = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.CODE_128, "1234567");
// Set the bar height to 3 points
bb.getParameters().getBarcode().getBarHeight().setPoint(3.0f);
// Save the image
bb.save(dataDir + "barcode-size-unit.jpg");
// The path to the resource directory.
String dataDir = Utils.getDataDir(BarcodeOrientation.class) + "BarcodeReader/advanced_features/";
// Read code39 barcode from image
String image = dataDir + "code39Extended.jpg";
BarCodeReader reader = new BarCodeReader(image, DecodeType.CODE_39_STANDARD);
// Barcode orientation is detected automatically
// Try to recognize all possible barcodes in the image
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println("BarCode CodeText: " + result.getCodeText());
System.out.println("BarCode CodeType: " + result.getCodeTypeName());
}
// The path to the resource directory.
String dataDir = Utils.getDataDir(BarcodeRegionInformationFromTheImage.class)
+ "BarcodeReader/advanced_features/";
// Read code39 barcode from image
String imageFilePath = dataDir + "code39Extended.jpg";
BarCodeReader reader = new BarCodeReader(imageFilePath,
com.aspose.barcode.barcoderecognition.DecodeType.CODE_39_STANDARD);
// Try to recognize all possible barcodes in the image
reader.readBarCodes();
for (BarCodeResult result : reader.readBarCodes()) {
if (result.getRegion() != null) {
// Display x and y coordinates of barcode detected
Point[] point = result.getRegion().getPoints();
System.out.println("Top left coordinates: X = " + point[0].x + ", Y = " + point[0].y);
System.out.println("Bottom left coordinates: X = " + point[1].x + ", Y = " + point[1].y);
System.out.println("Bottom right coordinates: X = " + point[2].x + ", Y = " + point[2].y);
System.out.println("Top right coordinates: X = " + point[3].x + ", Y = " + point[3].y);
}
}
// The path to the resource directory.
String dataDir = Utils.getDataDir(FasterImageProcessingForBarcodeRecognition.class)
+ "BarcodeReader/advanced_features/";
// Read code39 barcode from image
String imageFilePath = dataDir + "datamatrix.bmp";
// Create an instance of BarCodeReader and set image and symbology type to
// recognize
BarCodeReader reader = new BarCodeReader(imageFilePath,
com.aspose.barcode.barcoderecognition.DecodeType.DATA_MATRIX);
// set high performance mode
reader.setQualitySettings(QualitySettings.getHighPerformance());
// set separate options
reader.getQualitySettings().setAllowMedianSmoothing(true);
reader.getQualitySettings().setMedianSmoothingWindowSize(4);
// Try to recognize the barcode from the image
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println("BarCode CodeText: " + result.getCodeText());
System.out.println("BarCode CodeType: " + result.getCodeTypeName());
}
// The path to the resource directory.
String dataDir = Utils.getDataDir(GenerateMultipleBarcodesOnASingleImage.class)
+ "BarcodeReader/advanced_features/";
HashMap collection = new HashMap();
collection.put("ONE123", EncodeTypes.CODE_39_STANDARD);
collection.put("Process Collection", EncodeTypes.DATA_MATRIX);
collection.put("Dictionary Collection", EncodeTypes.QR);
collection.put("X06712AT", EncodeTypes.CODE_128);
collection.put("979026000043", EncodeTypes.EAN_13);
collection.put("Aztec BarCode", EncodeTypes.AZTEC);
ArrayList<BufferedImage> images = new ArrayList<BufferedImage>();
for (Object key : collection.keySet()) {
BarcodeGenerator bb = new BarcodeGenerator((BaseEncodeType) collection.get(key));
bb.setCodeText((String) key);
// bb.setSymbologyType((Long) collection.get(key));
images.add(bb.generateBarCodeImage());
}
int maxWidth = 0;
int sumHeight = 0;
for (BufferedImage bmp : images) {
sumHeight += bmp.getHeight();
if (maxWidth < bmp.getWidth())
maxWidth = bmp.getWidth();
}
int offset = 10;
BufferedImage resultBitmap = new BufferedImage(maxWidth + offset * 2, sumHeight + offset * images.size(),
BufferedImage.TYPE_INT_ARGB);
Graphics g = resultBitmap.getGraphics();
g.setColor(Color.white);
// g.drawRect(0, 0, width, height);
g.fillRect(0, 0, resultBitmap.getWidth(), resultBitmap.getHeight());
int yPosition = offset;
for (int i = 0; i < images.size(); ++i) {
BufferedImage currentBitmap = images.get(i);
g.drawImage(currentBitmap, offset, yPosition, null);
yPosition += currentBitmap.getHeight() + offset;
}
File outputfile = new File(dataDir + "output.png");
ImageIO.write(resultBitmap, "png", outputfile);
// Initialize the BarCodeReader object
BarCodeReader reader = new BarCodeReader(dataDir + "MultipleBarcodes.png", DecodeType.CODE_128);
// Now get all possible barcodes
int iCount = 0;
for (BarCodeResult result : reader.readBarCodes()) {
// Display code text, symbology, detected angle, recognition percentage of the
// barcode
System.out.println("Code Text: " + result.getCodeText() + " Symbology: " + result.getCodeTypeName()
+ " Recognition percentage: " + result.getRegion().getAngle());
// Display x and y coordinates of barcode detected
Point[] point = result.getRegion().getPoints();
System.out.println("Top left coordinates: X = " + point[0].getX() + ", Y = " + point[0].getY());
System.out.println("Bottom left coordinates: X = " + point[1].getX() + ", Y = " + point[1].getY());
System.out.println("Bottom right coordinates: X = " + point[2].getX() + ", Y = " + point[2].getY());
System.out.println("Top right coordinates: X = " + point[3].getX() + ", Y = " + point[3].getY());
iCount = iCount + 1;
}
// The path to the resource directory.
String dataDir = Utils.getDataDir(GetBarCodeRecognitionQualityInPercent.class)
+ "BarcodeReader/advanced_features/";
// Initialize the BarCodeReader object
BarCodeReader reader = new BarCodeReader(dataDir + "code39Extended.jpg",
com.aspose.barcode.barcoderecognition.DecodeType.ALL_SUPPORTED_TYPES);
// Call read method
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println(result.getCodeText() + " Type: " + result.getCodeType());
double percent = result.getReadingQuality();
System.out.println("Percent: " + percent);
}
// The path to the resource directory.
String dataDir = Utils.getDataDir(UsingManualHintsToOptimizeScan.class) + "BarcodeReader/advanced_features/";
// Create an instance of BarCodeReader class
// Set file path
// Set the recognition type
BarCodeReader reader = new BarCodeReader(dataDir + "1_1.png", DecodeType.CODE_128);
// Perform read operation
for (BarCodeResult result : reader.readBarCodes())
{
// Create an array of Code128DataPortion class
// Call the GetCode128DataPortions method
Code128DataPortion[] code128DataPortions = result.getExtended().getCode128().getCode128DataPortions();
// Execute Loop for each Code128DataPortion instance
for (Code128DataPortion code128DataPortion : code128DataPortions)
{
// Display the subtype and data
System.out.println("Code128SubType: " + code128DataPortion.getCode128SubType());
System.out.println("Data:" + code128DataPortion.getData());
}
}
// The path to the resource directory.
String dataDir = Utils.getDataDir(MarkingBarcodeRegionsInAnImage.class) + "BarcodeReader/advanced_features/";
// Create an instance of BarCodeReader class and specify the image and symbology
BarCodeReader reader = new BarCodeReader(dataDir + "Code39Std.png", DecodeType.CODE_39_STANDARD);
// Read all the barcodes from the images
for (BarCodeResult result : reader.readBarCodes())
{
// Display the symbology type
System.out.println("BarCode Type: " + result.getCodeType());
// Display the codetext
System.out.println("BarCode CodeText: " + result.getCodeText());
if (result.getRegion() != null) {
// Initialize an object of type BufferedImage to get the Graphics object
BufferedImage bufferedImage = ImageIO.read(new File(dataDir + "Code39Std.png"));
// Initialize graphics object from the image
Graphics g = bufferedImage.getGraphics();
// Initialize paint object
Paint p = new GradientPaint(0, 0, Color.red, 100, 100, Color.pink, true);
// Save the image
ImageIO.write(bufferedImage, "png", new File(dataDir + "Code39StdOut.png"));
}
}
// The path to the resource directory.
String dataDir = Utils.getDataDir(ReadBarcodeFromSpecificRegionOfImage.class)
+ "BarcodeReader/advanced_features/";
// Open the stream. Read only access is enough for Aspose.BarCode to load an
// image.
InputStream stream = new FileInputStream(dataDir + "specificRegion.png");
// Get BufferedImage with exact bar code only
java.awt.image.BufferedImage img = javax.imageio.ImageIO.read(new java.io.File(dataDir));
// Create an instance of BarCodeReader class
// and specify an area to look for the barcode
BarCodeReader reader = new BarCodeReader(img, new Rectangle(0, 0, 100, 50), DecodeType.PDF_417);
// Read all barcodes in the provided area
for (BarCodeResult result : reader.readBarCodes()) {
// Display the codetext and symbology type of the barcode found
System.out.println("Codetext: " + result.getCodeText() + " Symbology: " + result.getCodeType());
}
public class ReadMultipleMacropdf417BarcodeImages {
public static void main(String[] args) throws Exception {
ApplyALicense.applyALicense();
// The path to the resource directory.
String dataDir = Utils.getDataDir(ReadMultipleMacropdf417BarcodeImages.class)
+ "BarcodeReader/advanced_features/";
String strFileID = "1";
File dir = new File(dataDir);
File[] files = dir.listFiles(new Filter(strFileID));
for (int nCount = 1; nCount <= files.length; nCount++) {
// We got list of all the files, now read barcodes
BarCodeReader reader = new BarCodeReader(files[nCount - 1].getAbsolutePath(), DecodeType.MACRO_PDF_417);
for (BarCodeResult result : reader.readBarCodes())
{
System.out.println("File: " + files[nCount - 1].getAbsolutePath()
+ " == FileID: " + result.getExtended().getPdf417().getMacroPdf417FileID()
+ " == SegmentID: " + result.getExtended().getPdf417().getMacroPdf417SegmentID()
+ " == CodeText: " + result.getCodeText());
}
}
}
}
//Create new class for filtering the files list
class Filter implements FileFilter {
String fileID = "";
public Filter(String fileID) {
this.fileID = fileID;
}
@Override
public boolean accept(File file) {
// File names are in the format of FileID_*.png
return file.getName().endsWith("png") && file.getName().startsWith(fileID + "_");
}
}
// The path to the documents directory.
String dataDir = Utils.getDataDir(SingleWipedBarsInPattern.class) + "BarcodeReader/advanced_features/";
// Create an instance of BarCodeReader class
// Set file path
// Set the recognition type
BarCodeReader reader = new BarCodeReader(dataDir + "file.tiff", DecodeType.CODE_128);
// Perform read operation
reader.getQualitySettings().setAllowOneDWipedBarsRestoration(true);
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println("CodeText: " + result.getCodeText());
System.out.println("Symbology type: " + result.getCodeType());
}
// The path to the resource directory.
String dataDir = Utils.getDataDir(SwitchBarcodeRecognitionModes.class) + "BarcodeReader/advanced_features/";
// Create an instance of BarCodeReader and set image and symbology type to
// recognize
BarCodeReader reader = new BarCodeReader(dataDir + "code39Extended.jpg",
com.aspose.barcode.barcoderecognition.DecodeType.DATA_MATRIX);
// Set recognition mode
reader.setQualitySettings(QualitySettings.getHighPerformance());
// Try to recognize the barcode from the image
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println("CodeText: " + result.getCodeText());
System.out.println("Symbology type: " + result.getCodeType());
}
// The path to the resource directory.
String dataDir = Utils.getDataDir(UsingManualHintsToOptimizeScan.class) + "BarcodeReader/advanced_features/";
long s = System.currentTimeMillis();
String filename = dataDir + "datamatrix.bmp";
BarCodeReader reader = new BarCodeReader(filename,
com.aspose.barcode.barcoderecognition.DecodeType.GS_1_DATA_MATRIX);
System.out.println("Skip rotated barcodes");
reader.setQualitySettings(QualitySettings.getHighQuality());
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println(result.getCodeType() + ": " + result.getCodeText() + " QA:" + result.getReadingQuality());
}
long res1 = System.currentTimeMillis() - s;
System.out.println(res1);
System.out.println();
s = System.currentTimeMillis();
reader = new BarCodeReader(filename, com.aspose.barcode.barcoderecognition.DecodeType.GS_1_DATA_MATRIX);
System.out.println("Not skip rotated barcodes");
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println(result.getCodeType() + ": " + result.getCodeText() + " QA:" + result.getReadingQuality());
}
long res2 = System.currentTimeMillis() - s;
System.out.println(res2);
// The path to the resource directory.
String dataDir = Utils.getDataDir(Barcode_Recognition.class) + "BarcodeReader/basic_features/";
// Initialize barcode reader
BarCodeReader reader = new BarCodeReader(dataDir + "CodeText.jpg");
// read barcode of type Code39Extended
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println("CodeText: " + result.getCodeText());
System.out.println("Symbology type: " + result.getCodeType());
}
// The path to the resource directory.
String dataDir = Utils.getDataDir(RecognizingMultipleSymbologiesInSingleImage.class)
+ "BarcodeReader/basic_features/";
BufferedImage img = ImageIO.read(new File(dataDir + "MultipleBarcodes.png"));
// Initialize barcode reader
BarCodeReader reader = new BarCodeReader(img, DecodeType.ALL_SUPPORTED_TYPES);
// Read all types of barcode
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println("CodeText: " + result.getCodeText());
System.out.println("Symbology type: " + result.getCodeType());
}
// The path to the resource directory.
String dataDir = Utils.getDataDir(SpecificBarcodeSymbology.class) + "BarcodeReader/basic_features/";
BufferedImage img = ImageIO.read(new File(dataDir + "CodeText.jpg"));
// Initialize barcode reader
BarCodeReader reader = new BarCodeReader(img, com.aspose.barcode.barcoderecognition.DecodeType.CODE_128);
// Read barcode of type Code39Extended
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println("CodeText: " + result.getCodeText());
System.out.println("Symbology type: " + result.getCodeType());
}
// The path to the resource directory.
String dataDir = Utils.getDataDir(RecognizingMultipleSymbologiesInSingleImage.class)
+ "BarcodeReader/basic_features/";
BufferedImage img = ImageIO.read(new File(dataDir + "MultipleBarcodes.png"));
// Initialize barcode reader
BarCodeReader reader = new BarCodeReader(img, DecodeType.CODE_39_EXTENDED);
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println("CodeText: " + result.getCodeText());
System.out.println("Symbology type: " + result.getCodeType());
}
// The path to the resource directory.
String dataDir = Utils.getDataDir(LoadingFromAFile.class) + "BarcodeReader/loading_images/";
// Initialize bar code reader
BarCodeReader reader = new BarCodeReader(dataDir + "CodeText.jpg");
// OR
// Initialize bar code reader
BarCodeReader barcodeReader = new BarCodeReader(dataDir + "CodeText.jpg", DecodeType.CODE_39_EXTENDED);
// The path to the resource directory.
String dataDir = Utils.getDataDir(LoadingFromAStream.class) + "BarcodeReader/loading_images/";
// Open the stream. Read only access is enough for Aspose.BarCode to load an
// image.
InputStream stream = new FileInputStream(dataDir + "CodeText.jpg");
// Create an instance of BarCodeReader class
// and pass InputStream object as a parameter
BarCodeReader reader = new BarCodeReader(stream);
// OR
// Open the stream. Read only access is enough for Aspose.BarCode to load an
// image.
InputStream stream1 = new FileInputStream(dataDir + "CodeText.jpg");
// Create an instance of BarCodeReader class
// and pass InputStream object and bar code symbology type as parameters
BarCodeReader reader1 = new BarCodeReader(stream, DecodeType.CODE_39_EXTENDED);
// OR
// Open the stream. Read only access is enough for Aspose.BarCode to load an
// image.
InputStream stream2 = new FileInputStream(dataDir + "CodeText.jpg");
// Load the image. Read only access is enough for Aspose.BarCode to load an
// image.
BufferedImage img3 = ImageIO.read(new File(dataDir + "CodeText.jpg"));
// Create an instance of BarCodeReader class
// and pass BufferedImage object as parameter
BarCodeReader reader3 = new BarCodeReader(img3);
// OR
// Create an instance of BarCodeReader class
// and pass image object, Rectangle object and bar code symbology type as
// parameters
BarCodeReader reader2 = new BarCodeReader(img3, new Rectangle(0, 0, 100, 50), DecodeType.CODE_39_EXTENDED);
// OR
// Load the image. Read only access is enough for Aspose.BarCode to load an
// image.
BufferedImage img4 = ImageIO.read(new File(dataDir + "CodeText.jpg"));
// Create an instance of BarCodeReader class
// and pass BufferedImage object and bar code symbology type as parameters
BarCodeReader reader4 = new BarCodeReader(img4, DecodeType.PDF_417);
// OR
// Load the image. Read only access is enough for Aspose.BarCode to load an
// image.
BufferedImage img5 = ImageIO.read(new File(dataDir + "CodeText.jpg"));
// Create an instance of BarCodeReader class
// and pass BufferedImage object, Rectangle object and bar code symbology type
// as parameters
BarCodeReader reader5 = new BarCodeReader(img5, new Rectangle(0, 0, 100, 50), DecodeType.CODE_39_EXTENDED);
BarCodeReader reader = new BarCodeReader(dataDir + "test.png", DecodeType.MOST_COMMON_TYPES);
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println("BarCode CodeText: " + result.getCodeText());
System.out.println("BarCode CodeType: " + result.getCodeTypeName());
}
BarCodeReader reader = new BarCodeReader("test.png", DecodeType.POSTAL_TYPES);
reader.readBarCodes();
for (int i = 0; reader.getFoundCount() > i; ++i) {
System.out.println("BarCode CodeText: " + reader.getFoundBarCodes()[i].getCodeText());
System.out.println("BarCode CodeType: " + reader.getFoundBarCodes()[i].getCodeTypeName());
}
BarCodeReader reader = new BarCodeReader("test.png", DecodeType.TYPES_1D);
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println("BarCode CodeText: " + result.getCodeText());
System.out.println("BarCode CodeType: " + result.getCodeTypeName());
}
public class Common
{
public static String HOST_URI = "jdbc:mysql://host/test";
public static String USERNAME = "root";
public static String PASSWORD = "pwd";
}
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import com.aspose.barcode.barcoderecognition.BarCodeReader;
import com.aspose.barcode.barcoderecognition.BarCodeResult;
import com.aspose.barcode.barcoderecognition.DecodeType;
// This class will select the records from MySQL DB
// read a BLOB type column to fetch image stream from DB
// construct a file on disk and recognize the barcode from the image
public class FetchAndRecognizeBarCode {
public void PerformRecognition() {
try {
String strBarCodeImage = "c:\\temp\\code39.jpg";
// Step-1 - Select the record from the DB on the basis of ProductNumber
// String strProductNumber = "NOK-E71";
// Open a connection to the database
Connection con = null;
Class.forName("com.mysql.jdbc.Driver").newInstance();
con = DriverManager.getConnection(Common.HOST_URI, Common.USERNAME, Common.PASSWORD);
// Create a statement to execute the SELECT SQL
PreparedStatement st = con.prepareStatement("SELECT * FROM Product ");
// st.setString(1, strProductNumber);
st.executeQuery();
// Get the resultset
ResultSet rs = st.getResultSet();
// Now check if we have any record in the resultset
int nCount = 0;
while (rs.next()) {
// We got a record, read BLOB field and create image from it
String len1 = rs.getString("BarCodeImage");
int len = len1.length();
byte[] b = new byte[len];
// Create stream to read the image
InputStream in = rs.getBinaryStream("BarCodeImage");
// Write the stream to a file
int index = in.read(b, 0, len);
OutputStream outImgBarCode = new FileOutputStream(strBarCodeImage);
while (index != -1) {
// Write bytes to file
outImgBarCode.write(b, 0, index);
// Read next bytes
index = in.read(b, 0, len);
}
// Close the stream and connection
outImgBarCode.close();
// Now that we have got the image from the database
// read the barcode from the image
BarCodeReader reader = new BarCodeReader(strBarCodeImage, DecodeType.CODE_39_STANDARD);
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println("CodeText: " + result.getCodeText());
System.out.println("Symbology type: " + result.getCodeType());
}
nCount++;
}
System.out.println(nCount + " records found.");
con.close();
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
}
import java.io.File;
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import com.aspose.barcode.EncodeTypes;
import com.aspose.barcode.generation.BarcodeGenerator;
// This class will generate a barcode image, save it to file on disk
// then create the stream from file and insert the image stream into DB (BLOB type column)
public class GenerateAndSaveBarCode {
public void PerformInsertExample() {
try {
// Step-1 - Generate barcode and save temporarily in a file
String strBarCodeImage = "c:\\temp\\code39.jpg";
String strCodeText = "NOK-E71";
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.CODE_39_STANDARD);
generator.setCodeText(strCodeText);
generator.save(strBarCodeImage);
// Step-2 - insert a new record in MySQL DB
Connection con = null;
// Open connection
Class.forName("com.mysql.jdbc.Driver").newInstance();
con = DriverManager.getConnection(Common.HOST_URI, Common.USERNAME, Common.PASSWORD);
// Prepare statement
PreparedStatement pre = con.prepareCall(
"Insert INTO Product (ProductNumber, ProductName, BarCodeImage) " + "VALUES (?, ?, ?) ");
// Set product number and product name
pre.setString(1, "NOK-E71");
pre.setString(2, "Nokia E Series - E71");
// 3rd column is for barcode image. DB type is BLOB
// for saving the image, we need to create stream from the image file
File imgFile = new File(strBarCodeImage);
FileInputStream fin = new FileInputStream(imgFile);
pre.setBinaryStream(3, fin, (int) imgFile.length());
// Now execute the statement
pre.executeUpdate();
System.out.println("Insertion successfull.");
// Close connection
pre.close();
con.close();
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
public void PerformUpdateExample() {
try {
// Step-1 - Generate barcode and save temporarily in a file
String strBarCodeImage = "c:\\temp\\code39.jpg";
String strCodeText = "NOK-E71-UPDATED";
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.CODE_39_STANDARD);
generator.setCodeText(strCodeText);
generator.save(strBarCodeImage);
// Step-2 - update the record in MySQL DB
Connection con = null;
// Open connection
Class.forName("com.mysql.jdbc.Driver").newInstance();
con = DriverManager.getConnection(Common.HOST_URI, Common.USERNAME, Common.PASSWORD);
// Prepare statement
PreparedStatement pre = con.prepareCall("UPDATE Product SET BarCodeImage = ? WHERE ProductNumber = ? ");
// Barcode image column. DB type is BLOB
// For saving the image, we need to create stream from the image file
File imgFile = new File(strBarCodeImage);
FileInputStream fin = new FileInputStream(imgFile);
pre.setBinaryStream(1, fin, (int) imgFile.length());
// 2nd column in where condition is the ProductNumber
pre.setString(2, "NOK-E71");
// Now execute the statement
pre.executeUpdate();
System.out.println("Update successfull.");
// Close connection
pre.close();
con.close();
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
}
public class Main {
public static void main(String[] args) {
// To insert and update barcode image in MySQL DB
GenerateAndSaveBarCode sample1 = new GenerateAndSaveBarCode();
sample1.PerformInsertExample();
sample1.PerformUpdateExample();
// To fetch the image from DB and recognize codetext
FetchAndRecognizeBarCode sample2 = new FetchAndRecognizeBarCode();
sample2.PerformRecognition();
}
}
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.QR, "Aspose.BarCode sample");
generator.getParameters().getBarcode().getXDimension().setPixels(3);
generator.getParameters().getBarcode().getPadding().getLeft().setPixels(20);
generator.getParameters().getBarcode().getPadding().getRight().setPixels(20);
generator.save(dataDir + "GenerateBarcodeWithoutRestrictedBarcodeSize_out.png");
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.QR, "Aspose.BarCode sample");
generator.getParameters().setAutoSizeMode(AutoSizeMode.NEAREST);
generator.getParameters().getImageWidth().setPixels(200);
generator.getParameters().getImageHeight().setPixels(200);
generator.save(dataDir + "GenerateBarcodeWithRestrictedBarcodeSize_out.png");
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.CODE_16_K);
generator.getParameters().setAutoSizeMode(AutoSizeMode.NEAREST);
generator.getParameters().getImageWidth().setPixels(100);
generator.getParameters().getBarcode().getCodeTextParameters().setLocation(CodeLocation.NONE);
generator.save(dataDir + "Code16K_Nearest.png");
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.QR, "Aspose.BarCode sample");
generator.getParameters().getBarcode().getXDimension().setPixels(3);
generator.getParameters().getBarcode().getQR().setAspectRatio(1.5f);
System.out.println("Width = " + generator.getParameters().getImageWidth().getPixels());
System.out.println("Height = " + generator.getParameters().getImageHeight().getPixels());
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.AUSTRALIAN_POSTE_PARCEL);
String codetext = generator.getCodeText(); // 99712345678901234567890103456
generator = new BarcodeGenerator(EncodeTypes.EAN_13);
codetext = generator.getCodeText(); // 590123412345
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.QR);
generator.getParameters().getBarcode().getQR().setQrVersion(QRVersion.VERSION_18);
generator.getParameters().getBarcode().getQR().setQrErrorLevel(QRErrorLevel.LEVEL_M);
generator.save(dataDir + "GroupingPropertiesByBarcodeType_out.png");
String CODICE = "(90)0843110730<<<<452287005001T8";
String displayedText = "(90)0843" + "\r\n" + "110730<<<<" + "\r\n" + "452287" + "\r\n" + "005001T8" + "\r\n";
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.GS_1_DATA_MATRIX, CODICE);
generator.getParameters().getBarcode().getCodeTextParameters().setLocation(CodeLocation.ABOVE);
generator.getParameters().getBarcode().getCodeTextParameters().setTwoDDisplayText(displayedText);
BufferedImage bitmap = generator.generateBarCodeImage();
File imageFile = new File(dataDir + "Display2DText.png");
ImageIO.write(bitmap, "png", imageFile);
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.DOT_CODE);
generator.getParameters().getBarcode().getDotCode().setDotCodeMask(2);
BufferedImage bitmap = generator.generateBarCodeImage();
File imageFile = new File(dataDir + "DotCode.png");
ImageIO.write(bitmap, "png", imageFile);
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.DATA_MATRIX);
generator.getParameters().setAutoSizeMode(AutoSizeMode.INTERPOLATION);
generator.getParameters().getImageWidth().setMillimeters(50);
generator.getParameters().getImageHeight().setInches(1.3f);
BufferedImage bitmap = generator.generateBarCodeImage();
File imageFile = new File(dataDir + "DataMatrix.png");
ImageIO.write(bitmap, "png", imageFile);
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MAXI_CODE);
generator.getParameters().getBarcode().getMaxiCode().setMaxiCodeEncodeMode(5);
BufferedImage bitmap = generator.generateBarCodeImage();
File imageFile = new File(dataDir + "MaxiCodeEncodeMode.png");
ImageIO.write(bitmap, "png", imageFile);
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.UPCA_GS_1_CODE_128_COUPON);
// UPCA part is "514141100906", GS1Code128 part is "(8102)03"
generator.setCodeText("514141100906(8102)03");
generator.save(dataDir + "UpcaGs1Code128Coupon.png");
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.UPCA_GS_1_DATABAR_COUPON);
// UPCA part is "514141100906", GS1Databar part is "(8110)001234502239811110555"
generator.setCodeText("512345678900(8110)001234502239811110555");
generator.save("UpcaGs1DatabarCoupon.png");
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.QR, "Aspose.BarCode sample");
generator.getParameters().setAutoSizeMode(AutoSizeMode.NEAREST);
generator.getParameters().getImageWidth().setMillimeters(20);
generator.getParameters().getImageHeight().setMillimeters(20);
generator.save(dataDir + "for_display_out.png");
generator.getParameters().setResolution(300);
generator.save(dataDir + "for_printer_out.png");
// Instantiate barcode object and set CodeText
SwissQRCodetext swissQRCodetext = new SwissQRCodetext();
swissQRCodetext.getBill().setAccount("Account");
swissQRCodetext.getBill().setBillInformation("BillInformation");
swissQRCodetext.getBill().setCurrency("EUR");
ComplexBarcodeGenerator generator = new ComplexBarcodeGenerator(swissQRCodetext);
BufferedImage img = generator.generateBarCodeImage();
generator.getParameters().getBarcode().getCodeTextParameters().setTwoDDisplayText("test");
// Save the Barcode image in JPEG format
generator.save(dataDir + "swissQRCodetext_out.png", BarCodeImageFormat.PNG);
BarCodeReader reader = new BarCodeReader(dataDir + "swissQRCodetext_out.png", DecodeType.QR);
for (BarCodeResult barcodeResult : reader.readBarCodes()) {
SwissQRCodetext result = ComplexCodetextReader.tryDecodeSwissQR(barcodeResult.getCodeText());
System.out.println("Account :" + result.getBill().getAccount());
System.out.println("BillInformation = " + result.getBill().getBillInformation());
System.out.println("Currency :" + result.getBill().getCurrency());
}
System.out.println("Assembly version: " + BuildVersionInfo.ASSEMBLY_VERSION);
System.out.println("Product: " + BuildVersionInfo.PRODUCT);
System.out.println("Release Date: " + BuildVersionInfo.RELEASE_DATE);
// Instantiate linear barcode object, Set the Code text and symbology type for the barcode
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.CODE_39_STANDARD, "1234567");
generator.save(dataDir + "barcodeToPDF.bmp", BarCodeImageFormat.BMP);
InputStream in = new FileInputStream(dataDir + "barcodeToPDF.bmp");
// Create a PDF document and Add a section to the PDF document
Document doc = new Document();
doc.getPages().add();
// Open document
PdfFileMend mender = new PdfFileMend();
// Create PdfFileMend object to add Barcode image
mender.bindPdf(doc);
// Add image in the PDF file
mender.addImage(in, 1, 100, 600, 200, 700);
// Save changes
mender.save(dataDir + "AddImage_out.pdf");
// Close PdfFileMend object
mender.close();
// Create a PDF document and Add a section to the PDF document
Document doc = new Document();
doc.getPages().add();
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.EAN_13, "348503498549085409");
// Error message will not been thrown in case of false, default value is also
// false
generator.getParameters().getBarcode().setThrowExceptionWhenCodeTextIncorrect(true);
// Get barcode image
BufferedImage image = generator.generateBarCodeImage();
String dataDir = Utils.getDataDir(CreateAndSetSizeForWholePictureWithBarcode.class) + "TechnicalArticles/";
// Generate the bar code
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.PDF_417);
// Set the code text
generator.setCodeText("One thing 2 thing");
// Set the code text location
generator.getParameters().getBarcode().getCodeTextParameters().setLocation(CodeLocation.NONE);
// Set margins
generator.getParameters().getBarcode().getPadding().getBottom().setPixels(0);
generator.getParameters().getBarcode().getPadding().getLeft().setPixels(0);
generator.getParameters().getBarcode().getPadding().getRight().setPixels(0);
generator.getParameters().getBarcode().getPadding().getTop().setPixels(0);
// Get BufferedImage with exact bar code only
BufferedImage img = generator.generateBarCodeImage();
// Saving the buffered image
File outputfile = new File(dataDir + "custombarcode.png");
ImageIO.write(img, "png", outputfile);
String dataDir = Utils.getDataDir(CreateAnImageWithExactBarcodeOnly.class) + "TechnicalArticles/";
// Generate the barcode
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.CODE_128);
// Set the code text
generator.getParameters().getBarcode().getCodeTextParameters().setTwoDDisplayText("123456");
// Get bitmap with exact barcode only
BufferedImage image = generator.generateBarCodeImage();
// Saving the buffered image
File outputfile = new File(dataDir + "custombarcode.png");
ImageIO.write(image, "png", outputfile);
// Instantiate BarCodeReader object
BarCodeReader reader = new BarCodeReader("rotatedbarcode.jpg", DecodeType.CODE_128);
// read Code128 bar code
for (BarCodeResult result : reader.readBarCodes()) {
// detect bar code orientation
System.out.println("Rotaion Angle: " + result.getRegion().getAngle());
}
public class FoundBarCodes {
String CodeText;
BarCodeRegionParameters BarCodeRegion;
public FoundBarCodes(String cText, BarCodeRegionParameters barCodeRegionParameters) {
this.CodeText = cText;
this.BarCodeRegion = barCodeRegionParameters;
}
public String getCodeText() {
return CodeText;
}
public com.aspose.barcode.barcoderecognition.BarCodeRegionParameters getRegion() {
return BarCodeRegion;
}
}
String dataDir = Utils.getDataDir(Pdf417BarcodeWithChineseCharacters.class) + "TechnicalArticles/";
// Generate the barcode
BarcodeGenerator gen = new BarcodeGenerator(EncodeTypes.PDF_417);
// Set the code text
String codetext = "被洪水困�的";
ByteBuffer bytebuffer = Charset.forName("MS936").encode(codetext);
byte[] bytes = bytebuffer.array();
String codeText = new String(bytes);
gen.setCodeText(codeText);
// Set the display text
gen.getParameters().getBarcode().getCodeTextParameters().setTwoDDisplayText(codetext);
gen.save(dataDir + "barcode.png");
String dataDir = Utils.getDataDir(Pdf417BarcodeWithTurkishCharacters.class) + "TechnicalArticles/";
// Generate the barcode
BarcodeGenerator gen = new BarcodeGenerator(EncodeTypes.PDF_417);
// Set the code text
String codetext = "AYŞE" + "\n" + "Ümit" + "\n" + "Ümit@estee.com" + "\n" + "Türkiye";
ByteBuffer bytebuffer = Charset.forName("windows-1254").encode(codetext);
byte[] bytes = bytebuffer.array();
String codeText = new String(bytes);
gen.setCodeText(codeText);
// Set the display text
gen.getParameters().getBarcode().getCodeTextParameters().setTwoDDisplayText(codetext);
gen.save(dataDir + "barcode.png");
String dataDir = Utils.getDataDir(ReadAndSortBarcodesInSpecificOrder.class) + "TechnicalArticles/";
String path = dataDir + "barcode.png";
List<FoundBarCodes> found = new ArrayList<FoundBarCodes>();
BarCodeReader reader = new BarCodeReader(path, DecodeType.CODE_128);
for (BarCodeResult result : reader.readBarCodes())
{
found.add(new FoundBarCodes(result.getCodeText(), result.getRegion()));
}
Comparator<FoundBarCodes> foundComparator = new Comparator<FoundBarCodes>() {
@Override
public int compare(FoundBarCodes e1, FoundBarCodes e2) {
return e1.getCodeText().compareTo(e2.getCodeText());
}
};
found.sort(foundComparator);
int i = 1;
for (FoundBarCodes barcode : found) {
Point[] point = barcode.BarCodeRegion.getPoints();
System.out.println("Codetext ( " + i + " ): " + barcode.CodeText);
System.out.println("Top left coordinates: X = " + point[0].getX() + ", Y = " + point[0].getY());
System.out.println("Bottom left coordinates: X = " + point[1].getX() + ", Y = " + point[1].getY());
System.out.println("Bottom right coordinates: X = " + point[2].getX() + ", Y = " + point[2].getY());
System.out.println("Top right coordinates: X = " + point[3].getX() + ", Y = " + point[3].getY());
System.out.println();
i++;
}
import com.aspose.barcode.*;
import com.aspose.barcode.License;
import com.aspose.barcode.barcoderecognition.BarCodeReader;
import com.aspose.barcode.barcoderecognition.BarCodeResult;
import com.aspose.barcode.barcoderecognition.BaseDecodeType;
import com.aspose.barcode.barcoderecognition.DecodeType;
import com.aspose.barcode.examples.ApplyALicense;
import com.aspose.barcode.examples.Utils;
import com.aspose.barcode.examples.barcode_recognition.advanced_features.BarcodeOrientation;
import com.aspose.barcode.generation.BarcodeGenerator;
import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;
import com.aspose.pdf.*;
import com.aspose.pdf.facades.PdfExtractor;
public class RecognitionFromPDF {
public static void main(String[] args) {
try {
// Set license for Barcode
ApplyALicense.applyALicense();
// Set license for PDF
com.aspose.pdf.License licBarCode = new com.aspose.pdf.License();
licBarCode.setLicense("Aspose.Pdf.Java.lic");
String dataDir = Utils.getDataDir(RecognitionFromPDF.class) + "TechnicalArticles/";
String strPdfDoc = dataDir + "output1.pdf";
String strBarCodeImage = "";
// Generate barcode and add to PDF file
BarcodeGenerator builder = new BarcodeGenerator(EncodeTypes.CODE_39_STANDARD);
builder.setCodeText("test123");
String strBarCodeImageSave = dataDir + "input_image1.jpg";
builder.save(strBarCodeImageSave);
Document pdf1 = new Document();
// Get the page you want to add the image to
Page page = pdf1.getPages().add();
// Load image
BufferedImage originalImage = ImageIO.read(new File(strBarCodeImageSave));
// Add an image to the Images collection of the page resources
page.getResources().getImages().add(originalImage);
// Save the Pdf
pdf1.save(strPdfDoc);
// Instantiate PdfExtractor object
PdfExtractor extractor = new PdfExtractor();
// Bind the input PDF document to extractor
extractor.bindPdf(strPdfDoc);
// Extract images from the input PDF document
extractor.extractImage();
String suffix = ".jpg";
int imageCount = 1;
while (extractor.hasNextImage()) {
System.out.println("Extracting image " + imageCount);
strBarCodeImage = "tmpbarcode" + imageCount + suffix;
extractor.getNextImage(strBarCodeImage);
// Recognize barcode from image
BarCodeReader reader = new BarCodeReader(strBarCodeImage, DecodeType.CODE_39_EXTENDED);
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println("CodeText: " + result.getCodeText());
System.out.println("Symbology type: " + result.getCodeType());
}
imageCount++;
}
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
}
import java.text.MessageFormat;
import com.aspose.barcode.EncodeTypes;
import com.aspose.barcode.barcoderecognition.BarCodeReader;
import com.aspose.barcode.barcoderecognition.BarCodeResult;
import com.aspose.barcode.barcoderecognition.DecodeType;
import com.aspose.barcode.examples.Utils;
import com.aspose.barcode.generation.BarcodeGenerator;
import com.aspose.words.ImageType;
import com.aspose.words.NodeCollection;
import com.aspose.words.NodeType;
public class RecognitionFromWord {
public static void main(String[] args) {
try {
String dataDir = Utils.getDataDir(RecognitionFromWord.class) + "TechnicalArticles/";
// Generate barcode image
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.CODE_39_STANDARD);
generator.setCodeText("test-123");
String strBarCodeImageSave = dataDir + "img.jpg";
generator.save(strBarCodeImageSave);
// Add the image to a Word doc
com.aspose.words.Document doc = new com.aspose.words.Document();
com.aspose.words.DocumentBuilder docBuilder = new com.aspose.words.DocumentBuilder(doc);
docBuilder.insertImage(strBarCodeImageSave);
String strWordFile = "docout.doc";
doc.save(dataDir + strWordFile);
// Recognition part
// Extract image from the Word document
NodeCollection<com.aspose.words.Shape> shapes = doc.getChildNodes(NodeType.SHAPE, true);
int imageIndex = 0;
for (com.aspose.words.Shape shape : shapes) {
if (shape.hasImage()) {
// If this shape is an image, extract image to file
String extension = ImageTypeToExtension(shape.getImageData().getImageType());
String imageFileName = MessageFormat.format("Image.ExportImages.{0} Out.{1}", imageIndex,
extension);
String strBarCodeImageExtracted = "" + imageFileName;
shape.getImageData().save(strBarCodeImageExtracted);
// Recognize barcode from this image
// BufferedImage img = (BufferedImage)
// Toolkit.getDefaultToolkit().getImage(strBarCodeImageExtracted);
BarCodeReader reader = new BarCodeReader(strBarCodeImageSave, DecodeType.CODE_39_STANDARD);
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println("CodeText: " + result.getCodeText());
System.out.println("Symbology type: " + result.getCodeType());
}
imageIndex++;
}
}
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
private static String ImageTypeToExtension(int imageType) throws Exception {
switch (imageType) {
case ImageType.BMP:
return "bmp";
case ImageType.EMF:
return "emf";
case ImageType.JPEG:
return "jpeg";
case ImageType.PICT:
return "pict";
case ImageType.PNG:
return "png";
case ImageType.WMF:
return "wmf";
default:
throw new Exception("Unknown image type.");
}
}
}
import com.aspose.barcode.*;
import com.aspose.barcode.generation.BarcodeGenerator;
import com.aspose.barcode.barcoderecognition.BarCodeReader;
import com.aspose.barcode.barcoderecognition.BarCodeResult;
import com.aspose.barcode.barcoderecognition.DecodeType;
import com.aspose.barcode.examples.Utils;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
public class RecognitionUnicode {
public static void main(String[] args) throws IOException {
String dataDir = Utils.getDataDir(Pdf417BarcodeWithTurkishCharacters.class) + "TechnicalArticles/";
try {
License lic = new License();
lic.setLicense("aspose.barcode.lic");
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
String file = dataDir + "pdf417_un.png";
String scodeText = "منحة";
System.out.println("codetext: " + scodeText);
String codeText = getCodeTextFromUnicode(scodeText);
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.PDF_417, codeText);
generator.save(file);
BarCodeReader reader = new BarCodeReader(file, DecodeType.PDF_417);
for (BarCodeResult result : reader.readBarCodes()) {
String rc = result.getCodeText();
try {
String s = getUnicodeFromCodeText(rc);
System.out.println(s);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
}
private static String getCodeTextFromUnicode(String s) throws UnsupportedEncodingException {
byte[] bs = s.getBytes("UTF-8");
StringBuffer buf = new StringBuffer();
for (int i = 0; i < bs.length; i++) {
byte b = bs[i];
if (b >= 0) {
buf.append((char) b);
} else {
buf.append((char) (127 - b));
}
}
return buf.toString();
}
private static String getUnicodeFromCodeText(String cs) throws UnsupportedEncodingException {
byte[] bs = new byte[cs.length()];
for (int i = 0; i < cs.length(); i++) {
char c = cs.charAt(i);
if (c < 128) {
bs[i] = (byte) c;
} else {
bs[i] = (byte) (127 - c);
}
}
return new String(bs, " UTF-8");
}
}
String dataDir = Utils.getDataDir(RecognizePdf417BarcodeWithChineseCharacters.class) + "TechnicalArticles/";
// Load barcode image
BarCodeReader reader = new BarCodeReader(dataDir + "barcode.png", DecodeType.PDF_417);
// Read barcode
for (BarCodeResult result : reader.readBarCodes()) {
// Get byte array and decode
byte[] bytes = result.getCodeBytes();
ByteBuffer bytebuf = ByteBuffer.wrap(bytes);
System.out.println(Charset.forName("MS936").decode(bytebuf).toString());
}
String dataDir = Utils.getDataDir(RecognizePdf417BarcodeWithTurkishCharacters.class) + "TechnicalArticles/";
// Load barcode image
BarCodeReader reader = new BarCodeReader(dataDir + "barcode.png", DecodeType.PDF_417);
// Read barcode
for (BarCodeResult result : reader.readBarCodes()) {
// Get byte array and decode
byte[] bytes = result.getCodeBytes();
ByteBuffer bytebuf = ByteBuffer.wrap(bytes);
System.out.println(Charset.forName("windows-1254").decode(bytebuf).toString());
}
import com.aspose.barcode.License;
import com.aspose.barcode.barcoderecognition.BarCodeReader;
import com.aspose.barcode.barcoderecognition.BarCodeResult;
import com.aspose.barcode.barcoderecognition.DecodeType;
import com.aspose.barcode.examples.Utils;
public class SampleCode {
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
String dataDir = Utils.getDataDir(SampleCode.class) + "TechnicalArticles/";
BarCodeReader reader = new BarCodeReader(dataDir + "MyBarCode.jpg", DecodeType.PDF_417);
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println("Symbol:" + result.getCodeTypeName() + " Code :" + result.getCodeText());
}
}
}
String fileName = dataDir + "multi_page.tiff";
Iterator readers = javax.imageio.ImageIO.getImageReadersBySuffix("tiff");
if (readers.hasNext()) {
File fi = new File(fileName);
ImageInputStream iis = javax.imageio.ImageIO.createImageInputStream(fi);
TIFFDecodeParam param = null;
ImageDecoder dec = ImageCodec.createImageDecoder("tiff", fi, param);
// Get the page count of the TIFF image
int pageCount = dec.getNumPages();
ImageReader _imageReader = (ImageReader) (readers.next());
if (_imageReader != null) {
_imageReader.setInput(iis, true);
// Feed each page to the BarCodeReader
for (int i = 0; i < pageCount; i++) {
BufferedImage _bufferedImage = _imageReader.read(i);
BarCodeReader reader = new BarCodeReader(_bufferedImage, DecodeType.DATA_MATRIX);
// Read the barcodes in a single page
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println(result.getCodeText());
}
}
}
}
// The path to the resource directory.
String dataDir = Utils.getDataDir(SetAztecSymbolMode.class) + "TwoD_barcodes/BasicFeatures/";
// Create an instance of BarCodeGenerator class
// Set the barcode text
// Set the barcode symbology
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.EAN_13, "123456789012");
// Generate Barcode image and store it
java.awt.image.BufferedImage barcode = generator.generateBarCodeImage();
// Load the logo/other image from disk
java.awt.image.BufferedImage picture = javax.imageio.ImageIO.read(new java.io.File("path_to_your_picture.png"));
// Create a new empty image with new Calculated height &amp; width
java.awt.image.BufferedImage output = new java.awt.image.BufferedImage(
Math.max(barcode.getWidth(), picture.getWidth()), barcode.getHeight() + picture.getHeight(),
java.awt.image.BufferedImage.TYPE_INT_ARGB);
// Get the Graphics object
java.awt.Graphics g = output.getGraphics();
// Set the canvas color
g.setColor(java.awt.Color.WHITE);
// Draw the primary image (barcode image) on the canvas
g.drawImage(picture, 0, 0, null);
// Draw the second image (logo image) on the canvas inside the barcode image
g.drawImage(barcode, 0, picture.getHeight(), null);
// Save the final barcode image
java.io.File imageFile = new java.io.File(dataDir + "output.png");
javax.imageio.ImageIO.write(output, "PNG", imageFile);
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.DATA_MATRIX, "1234567890");
generator.save(dataDir + "datamatrix.bmp");
generator.save(dataDir + "datamatrix.emf", BarCodeImageFormat.EMF);
// Create an instance of BarCodeGenerator class
// Set codetext value and EncodeType
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.DATA_MATRIX, "ABCDEF123456");
// Set the DataMatrix encoding mode to C40
generator.getParameters().getBarcode().getDataMatrix().setDataMatrixEncodeMode(DataMatrixEncodeMode.C40);
// Save the barcode image
generator.save(dataDir + "dataMatrixC40.png");
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.DATA_MATRIX,
"öäüéà �?");
generator.getParameters().getBarcode().getDataMatrix().setDataMatrixEncodeMode(DataMatrixEncodeMode.CUSTOM);
generator.getParameters().getBarcode().getDataMatrix().setCodeTextEncoding(Charset.forName("UTF-8"));
generator.save(dataDir + "output_Utf8.bmp", BarCodeImageFormat.BMP);
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.DATA_MATRIX,
"This is the data to be encoded");
generator.getParameters().getBarcode().getDataMatrix().setDataMatrixEncodeMode(DataMatrixEncodeMode.ASCII);
generator.save(dataDir + "encodeModeForDataMatrix.bmp");
// For complete examples and data files, please go to
// https://github.com/aspose-barcode/Aspose.BarCode-for-Java
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.DATA_MATRIX, "1234567890");
generator.save(dataDir + "temp.png", com.aspose.barcode.BarCodeImageFormat.PNG);
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.AZTEC, "1234567890");
generator.save(dataDir + "aztec.bmp", BarCodeImageFormat.BMP);
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.AZTEC, "1234567890");
generator.getParameters().getBarcode().getAztec().setAztecErrorLevel(50);
generator.save(dataDir + "error_correction_aztec.bmp", BarCodeImageFormat.BMP);
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.PDF_417, "1234567890");
generator.save(dataDir + "pdf417.bmp");
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.PDF_417, "This is text data.");
// Set Pdf417 Compaction Mode to Text
generator.getParameters().getBarcode().getPdf417().setPdf417ErrorLevel(Pdf417ErrorLevel.LEVEL_0);
// Save the image to disk in PNG format
generator.save(dataDir + "pdf417CompactionMode.png");
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.PDF_417, "1234567890");
generator.getParameters().getBarcode().getPdf417().setPdf417ErrorLevel(Pdf417ErrorLevel.LEVEL_8);
generator.save(dataDir + "pdf417ErrorCorrectionLevel.bmp");
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.QR, "1234567890");
generator.save(dataDir + "QRBarcode.bmp", BarCodeImageFormat.BMP);
// initialize a BarcodeGenerator class object
// Set its CodeText & Symbology Type
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.QR, "12345TEXT");
// Set encoding mode, Auto for Micro QR, error correction level
generator.getParameters().getBarcode().getQR().setQrEncodeMode(QREncodeMode.AUTO);
generator.getParameters().getBarcode().getQR().setQrEncodeType(QREncodeType.AUTO);
generator.getParameters().getBarcode().getQR().setQrErrorLevel(QRErrorLevel.LEVEL_L);
// Get barcode image Bitmap & Save QR code
java.awt.image.BufferedImage combined = generator.generateBarCodeImage();
java.io.File imageFile = new java.io.File(dataDir + "EncodeMicroQR_out.png");
javax.imageio.ImageIO.write(combined, "PNG", imageFile);
// initialize a BarcodeGenerator class object
// Set its CodeText & Symbology Type
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.QR, "12345TEXT");
// Set ForceQR (default) for standard QR and Code text
generator.getParameters().getBarcode().getQR().setQrEncodeMode(QREncodeMode.AUTO);
generator.getParameters().getBarcode().getQR().setQrEncodeType(QREncodeType.FORCE_QR);
generator.getParameters().getBarcode().getQR().setQrErrorLevel(QRErrorLevel.LEVEL_L);
// Get barcode image Bitmap & Save QR code
java.awt.image.BufferedImage combined = generator.generateBarCodeImage();
java.io.File imageFile = new java.io.File(dataDir + "EncodeQR_out.png");
javax.imageio.ImageIO.write(combined, "PNG", imageFile);
// initialize a BarcodeGenerator class object
// Set its CodeText & Symbology Type
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.QR, "1234567890");
// Set encoding mode, ForceQR (default) for standard QR, ECI encoding type,
// error correction level
generator.getParameters().getBarcode().getQR().setQrEncodeMode(QREncodeMode.ECI_ENCODING);
generator.getParameters().getBarcode().getQR().setQrEncodeType(QREncodeType.FORCE_QR);
generator.getParameters().getBarcode().getQR().setQrECIEncoding(ECIEncodings.UTF8);
generator.getParameters().getBarcode().getQR().setQrErrorLevel(QRErrorLevel.LEVEL_L);
// Get barcode image Bitmap & Save QR code
java.awt.image.BufferedImage combined = generator.generateBarCodeImage();
java.io.File imageFile = new java.io.File(dataDir + "EncodeQRCodEInECIMode_out.png");
javax.imageio.ImageIO.write(combined, "PNG", imageFile);
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.QR, "1234567890");
generator.getParameters().getBarcode().getQR().setQrErrorLevel(QRErrorLevel.LEVEL_H);
generator.save(dataDir + "errorCorrectionQRBarcode.bmp", BarCodeImageFormat.BMP);
// Define barcode image height & width
int QRCODE_IMAGE_HEIGHT = 300;
int QRCODE_IMAGE_WIDTH = 300;
// Create an instance of BarcodeGenerator class
// Set the barcode text
// Set the barcode symbology
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.QR, "1234567890");
// Set the error level
generator.getParameters().getBarcode().getQR().setQrErrorLevel(QRErrorLevel.LEVEL_H);
// Generate the barocde image and save it as image in an object of BufferedImage
// class
java.awt.image.BufferedImage image = generator.generateBarCodeImage();
System.out.println("ImageHeight: " + image.getHeight());
// Load the image in an object of BufferedImage class - this is the image that
// you want to embed into the barcode image.
java.awt.image.BufferedImage overlay = javax.imageio.ImageIO.read(new java.io.File(dataDir + "logo.png"));
// Calculate the height & width
int deltaHeight = image.getHeight() - overlay.getHeight();
int deltaWidth = image.getWidth() - overlay.getWidth();
// Create a new empty image
java.awt.image.BufferedImage combined = new java.awt.image.BufferedImage(QRCODE_IMAGE_WIDTH,
QRCODE_IMAGE_HEIGHT, java.awt.image.BufferedImage.TYPE_INT_ARGB);
// Get the Graphics2D object
java.awt.Graphics2D g = (java.awt.Graphics2D) combined.getGraphics();
// Draw the primary image (barcode image) on the canvas
g.drawImage(image, 0, 0, null);
g.setComposite(java.awt.AlphaComposite.getInstance(java.awt.AlphaComposite.SRC_OVER, 1f));
// Draw the second image (logo image) on the canvas inside the barcode image
g.drawImage(overlay, (int) Math.round(deltaWidth / 2), (int) Math.round(deltaHeight / 2), null);
// Create and save the final very of the image with barcode and logo inside it
java.io.File imageFile = new java.io.File(dataDir + "qrcode_with_logo.png");
javax.imageio.ImageIO.write(combined, "PNG", imageFile);
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.QR, "1234567890");
// Hide code text
generator.getParameters().getBarcode().getCodeTextParameters().setLocation(CodeLocation.NONE);
generator.getParameters().setRotationAngle(90);
generator.save(dataDir + "rotation_qr.bmp", BarCodeImageFormat.BMP);
// Instantiate BarcodeGenerator object
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.QR,
"ABCDEFGHIJKLMNOPQRSTUVWXYZ");
// Set the error level
generator.getParameters().getBarcode().getQR().setQrErrorLevel(QRErrorLevel.LEVEL_Q);
// Set the QR barcode version number
generator.getParameters().getBarcode().getQR().setQrVersion(com.aspose.barcode.QRVersion.VERSION_10);
// Save the image
generator.save(dataDir + "qr_version10_errorQ.png");
BarcodeGenerator bb = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.DATA_MATRIX, "123456789");
// Width of each module
bb.getParameters().getBarcode().getXDimension().setMillimeters(0.6f);
bb.save(dataDir + "datamatrix.bmp");
BarcodeGenerator bb = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.PDF_417,
"this is some test code text. \\n Second line \\n third line.");
// Width of each module
bb.getParameters().getBarcode().getXDimension().setMillimeters(0.6f);
bb.save(dataDir + "pdf417.bmp");
// The path to the resource directory.
String dataDir = Utils.getDataDir(DetectTheUnicodeEncoding.class) + "2DBarcode/BasicFeatures/";
String imageFilePath = dataDir + "unicodeEncoding.png";
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.QR, "Слово");
generator.getParameters().getBarcode().getQR().setCodeTextEncoding(StandardCharsets.UTF_8);
generator.save(imageFilePath, BarCodeImageFormat.PNG);
BarCodeReader reader = new BarCodeReader(imageFilePath, com.aspose.barcode.barcoderecognition.DecodeType.QR);
reader.setDetectEncoding(true);
for (BarCodeResult result : reader.readBarCodes()) {
System.out.println("CodeText: " + result.getCodeText());
}
// The path to the resource directory.
String dataDir = Utils.getDataDir(GenerateAztecBarcode.class) + "TwoD_barcodes/BasicFeatures/";
// Initialize BarcodeGenerator class object
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.AZTEC, "25");
// save barcode
generator.save(dataDir + "Aztec.png");
// Instantiate barcode object and set CodeText & Barcode Symbology
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.PDF_417,
"this is some test code text. \n Second line \n third line.");
// Set width and height
generator.getParameters().getBarcode().getXDimension().setMillimeters(0.6f);
generator.getParameters().getBarcode().getBarHeight().setMillimeters(1.2f);
String xmlFile = dataDir + "barcode.xml";
generator.exportToXml(xmlFile);
// Initialize the BarcodeGenerator class by passing barcode text and barcode
// symbology as parameters.
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.DATA_MATRIX, "abcdefghijklmnopqrstuvwxyzabcdef");
// Set various different properties/variables of the barcode.
generator.getParameters().getBorder().setVisible(true);
generator.getParameters().getBarcode().getCodeTextParameters().setLocation(CodeLocation.ABOVE);
// Specify caption Above settings.
generator.getParameters().getCaptionAbove().setText("Caption ABOVE");
generator.getParameters().getCaptionAbove().setAlignment(TextAlignment.CENTER);
generator.getParameters().getCaptionAbove().setVisible(true);
generator.getParameters().getCaptionAbove().setTextColor(Color.GREEN);
// Specify caption Below settings.
generator.getParameters().getCaptionBelow().setText("Caption BELOW");
generator.getParameters().getCaptionBelow().setAlignment(TextAlignment.CENTER);
generator.getParameters().getCaptionBelow().setVisible(true);
generator.getParameters().getCaptionBelow().setTextColor(Color.YELLOW);
// Specify text font settings.
generator.getParameters().getBarcode().getCodeTextParameters().getFont().setFamilyName("Courier New");
generator.getParameters().getBarcode().getCodeTextParameters().getFont().getSize().setPoint(24);
generator.getParameters().getBarcode().getCodeTextParameters().getFont().setStyle(FontStyle.BOLD);
// Call the export to XML method to export the properties to XML file.
generator.save(dataDir + "BarcodeGenerator.DataMatrix_out.xml");
String xmlFile = dataDir + "barcode.xml";
// Instantiate barcode object and set CodeText & Barcode Symbology
BarcodeGenerator generator = BarcodeGenerator.importFromXml(xmlFile);
generator.save(dataDir + "barcode_xml_out.jpg", BarCodeImageFormat.JPEG);
// The path to the resource directory.
String dataDir = Utils.getDataDir(SetAztecSymbolMode.class) + "TwoD_barcodes/BasicFeatures/";
// Create an instance of BarCodeGenerator class.
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.AZTEC, "25");
// set the AztecSymbolMode property.
generator.getParameters().getBarcode().getAztec().setAztecSymbolMode(AztecSymbolMode.RUNE);
// Save the barcode as PNG image.
generator.save(dataDir + "testRune25.png");
import java.applet.Applet;
import java.awt.*;
import java.io.IOException;
import com.aspose.barcode.generation.BarcodeGenerator;
public class Test extends Applet {
public void paint(Graphics g) {
// Instantiate a BarCodeBuilder
BarcodeGenerator b = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.PDF_417);
// Small module's width to be 1 millimeter
b.getParameters().getBarcode().getXDimension().setMillimeters(1);
// Text to be encoded
b.setCodeText("This is a test.");
// Save the barcode to disk
try {
// Save as GIF file
b.save(getCodeBase().getPath() + "myPdf417.gif");
System.out.println("Saved barcode image to " + getCodeBase().getPath() + "barcode.gif");
// Save as JPG file
b.save(getCodeBase().getPath() + "myPdf417.jpg");
System.out.println("Saved barcode image to " + getCodeBase().getPath() + "barcode.jpg");
// Save as BMP file
b.save(getCodeBase().getPath() + "myPdf417.bmp");
System.out.println("Saved barcode image to " + getCodeBase().getPath() + "barcode.bmp");
// Save as PNG file
b.save(getCodeBase().getPath() + "myPdf417.png");
System.out.println("Saved barcode image to " + getCodeBase().getPath() + "barcode.png");
} catch (Exception ex) {
}
// Load and Draw the image on Applet
Image img = getImage(getCodeBase(), "barcode.png");
g.drawImage(img, 0, 0, this);
}
}
try {
// Save as GIF file
b.save(getCodeBase().getPath() + "myPdf417.gif");
System.out.println("Saved barcode image to " + getCodeBase().getPath() + "barcode.gif");
// Save as JPG file
b.save(getCodeBase().getPath() + "myPdf417.jpg");
System.out.println("Saved barcode image to " + getCodeBase().getPath() + "barcode.jpg");
// Save as BMP file
b.save(getCodeBase().getPath() + "myPdf417.bmp");
System.out.println("Saved barcode image to " + getCodeBase().getPath() + "barcode.bmp");
// Save as PNG file
b.save(getCodeBase().getPath() + "myPdf417.png");
System.out.println("Saved barcode image to " + getCodeBase().getPath() + "barcode.png");
} catch (Exception ex) {
}
String dataDir = Utils.getDataDir(GenerateMultipleMacroPdf417.class) + "2DBarcode/UtilityFeatures/";
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.MACRO_PDF_417);
// Create array for storing multiple barcodes
int nSize = 4;
String[] lstCodeText = new String[] { "code-1", "code-2", "code-3", "code-last" };
String strFileID = "1";
// Check the listbox for getting CodeText and generating the Barcodes
for (int nCount = 1; nCount <= nSize; nCount++) {
generator.setCodeText(lstCodeText[nCount - 1]);
// fileID should be same for all the generated barcodes
generator.getParameters().getBarcode().getPdf417().setPdf417MacroFileID(Integer.parseInt(strFileID));
// Assign segmentID in increasing order (1,2,3,....)
generator.getParameters().getBarcode().getPdf417().setPdf417MacroSegmentID(nCount);
// Save the barcode (fileid_segmentid.png)
generator.save(dataDir + strFileID + "_" + nCount + ".png");
}
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.MACRO_PDF_417);
generator.setCodeText(
"The quick brown fox jumps over the lazy dog\n The quick brown fox jumps over the lazy dog\n");
generator.getParameters().getBarcode().getCodeTextParameters().setLocation(CodeLocation.BELOW);
generator.save(dataDir + "datamatrix.bmp", BarCodeImageFormat.BMP);
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.DATA_MATRIX);
generator.setCodeText(
"The quick brown fox jumps over the lazy dog\n The quick brown fox jumps over the lazy dog\n");
generator.getParameters().getBarcode().getCodeTextParameters().setLocation(CodeLocation.NONE);
generator.getParameters().getBarcode().getCodeTextParameters().getFont().setFamilyName("Serif");
generator.getParameters().getBarcode().getCodeTextParameters().getFont().setStyle(20);
generator.save(dataDir + "reduceFontSize.bmp", BarCodeImageFormat.BMP);
String dataDir = Utils.getDataDir(SetAspectRatioOfBarcodes.class) + "2DBarcode/UtilityFeatures/";
// Create instance of BarcodeGenerator class
BarcodeGenerator generator = new BarcodeGenerator(com.aspose.barcode.EncodeTypes.PDF_417, "12345678");
// Set Aspect Ratio to 3:2 or 1.5
generator.getParameters().getBarcode().getPdf417().setAspectRatio(1.5f);
// Save the barcode image to disk in PNG format
generator.save(dataDir + "barcode_aspect_ratio.png");
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment