有没有办法将com.itextpdf.text.Image文件保存为文件系统上的jpg文件?
Barcode39 code39 = new Barcode39();
code39.setCode(barcode);
code39.setStartStopText(false);
image39 = code39.createImageWithBarcode(cb, null, null);
image39.scaleAbsolute(width, height);
image39.setAbsolutePosition(top, left);
cb.addImage(image39);
我正在创建条形码图像并将其添加到pdf中。同时我希望将图像保存在文件系统中。任何帮助表示赞赏。
OR,
是否可以从pdf中检索条形码(条形码及其下的数字)作为图像文件并使用itext将其保存到文件系统中?
答案 0 :(得分:5)
java.awt.Image awtImage = code39.createAwtImage(Color.BLACK, Color.WHITE);
然后将其转换为BufferedImage
并存储它:
BufferedImage bImage= new BufferedImage(awtImage.getWidth(), awtImage.getHeight(), BufferedImage.TYPE_INT_RGB);
Graphics2D g = bImage.createGraphics();
g.drawImage(awtImage, 0, 0, null);
g.dispose();
File outputfile = new File("saved.png");
ImageIO.write(bImage, "jpg", new File("code39.jpg"));
答案 1 :(得分:0)
您可以使用此代码:
BarcodeQRCode qrcode = new BarcodeQRCode("testo testo testo", 1, 1, null);
Image image = qrcode.createAwtImage(Color.BLACK, Color.WHITE);
BufferedImage buffImg = new BufferedImage(image.getWidth(null), image.getWidth(null), BufferedImage.TYPE_4BYTE_ABGR);
buffImg.getGraphics().drawImage(image, 0, 0, null);
buffImg.getGraphics().dispose();
File file = new File("tmp.png");
ImageIO.write(buffImg, "png", file);
我希望它可以帮到你。
恩里科