How can I rotate a barcode in Java / iReport?

As far as I know, the barcode as such cannot be rotated (iReport does not have this property, and Barcode Barcode in the Java class does not work). I saw several examples, but they are incomplete, and I do not understand how to use them, for example:

public class BarbecueRenderer extends JRAbstractSvgRenderer { private boolean rotate; private Barcode barcode = null; public BarbecueRenderer(Barcode barcode) { this(barcode, false); } public BarbecueRenderer(Barcode barcode, boolean rotate) { this.barcode = barcode; this.rotate = rotate; } // What should I use as the grx and rectangle objects? public void render(Graphics2D grx, Rectangle2D rectangle) { if (barcode != null) { Graphics2D graphics = (Graphics2D) grx.create(); graphics.translate(rectangle.getX(), rectangle.getY()); if (rotate) { graphics.translate(barcode.getBounds().getHeight(), 0); graphics.rotate(Math.PI / 2); } barcode.draw(graphics, 0, 0); } } } 

I need something like this:

  Barcode barcode = BarcodeFactory.createCode39("128", false); // rotate the barcode File f = new File ("c:\\barcode.jpg"); BarcodeImageHandler.saveJPEG(barcode, f); 
+4
source share
2 answers

In jasper 4.0.2 reports, you can simply edit jrxml and add a rotation attribute to the jr: barbecue element.

 <jr:barbecue xmlns:jr="http://jasperreports.sourceforge.net/jasperreports/components" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports/components http://jasperreports.sourceforge.net/xsd/components.xsd" type="Code128" drawText="true" checksumRequired="true" rotation="Right"> 

Possible values: net.sf.jasperreports.engine.type.RotationEnum

+2
source

Try:

 public BufferedImage rotate90DX(BufferedImage bi) { int width = bi.getWidth(); int height = bi.getHeight(); BufferedImage biFlip = new BufferedImage(height, width, bi.getType()); for(int i=0; i<width; i++) for(int j=0; j<height; j++) biFlip.setRGB(height-1-j, width-1-i, bi.getRGB(i, j)); return biFlip; } 

As found at:

http://snippets.dzone.com/posts/show/2936

+1
source

All Articles