2011-08-16 17 views
1

に変換:私はJPG、GIFのいずれかにbarcode.getImage()によって返さCCITTフォーマットを変換する必要がありiTextのバーコード画像は、私はそうのようなPDF417バーコードを作成するために、iTextのを使用していCCITT形式からPNG

private InputStream getBarcode() throws Exception {

BarcodePDF417 barcode = new BarcodePDF417(); 
barcode.setText("Sample bar code text"); 

Image image = barcode.getImage(); 
image.scalePercent(50, 50 * barcode.getYHeight()); 

return new ByteArrayInputStream(image.getRawData()); 

}

、またはPNGなので、JasperReportsで作成しているドキュメントに含めることができます。

答えて

1

私が思いついた解決策:

private Image getBarcode() throws Exception { 

    BarcodePDF417 barcode = new BarcodePDF417(); 

    barcode.setText("Sample bar code text"); 
    barcode.setAspectRatio(.25f); 

    return barcode.createAwtImage(Color.BLACK, Color.WHITE); 
} 

JasperReportsのは、レポートに使用されている画像についてjava.awt.Imageタイプをサポートしています。

4

どうやってこのようになりますか?

BarcodePDF417 barcode = new BarcodePDF417(); 
    barcode.setText("Bla bla"); 
    java.awt.Image img = barcode.createAwtImage(Color.BLACK, Color.WHITE); 
    BufferedImage outImage = new BufferedImage(img.getWidth(null), img.getHeight(null), BufferedImage.TYPE_INT_RGB); 
    outImage.getGraphics().drawImage(img, 0, 0, null); 
    ByteArrayOutputStream bytesOut = new ByteArrayOutputStream(); 
    ImageIO.write(outImage, "png", bytesOut); 
    bytesOut.flush(); 
    byte[] pngImageData = bytesOut.toByteArray(); 
    FileOutputStream fos = new FileOutputStream("C://barcode.png"); 
    fos.write(pngImageData); 
    fos.flush(); 
    fos.close(); 
+0

お返事ありがとうございます。私はあなたのコードサンプルを便利にして、今後画像を変換しなければならないでしょう。私は今回は何も変換する必要はなかったことが分かります。 – Tom

関連する問題