【教程】将Java条形码添加到PDF文档的两种方法

使用教程 | 作者:不飞的小鸟 | 2017-05-19 15:37:17| 阅读 0 有用 (0) 评论 (0) 收藏


概述:jPDFProcess是用于PDF文件的Java库,可用作向用户传递自定义PDF内容或者对引入的PDF内容进行处理和操作。本教程演示了使用jPDFProcess将Java条形码添加到PDF文档的两种方法。
关联产品

通过jPDFProcess,将PDF文档添加到PDF文档中的方法:

方法1

使用条形码字体,其字符看起来像条形码,然后使用此字体向文档添加文本。当显示文档时,它将显示条形码(使用字体绘制),并具有将条形码值保持在文本内容中的附加优势。 这时候需要在运行的同一文件夹中的free3of9.ttf文件,该文件是TrueType Code39字体,示例程序将此字体嵌入到PDF中,然后使用它来绘制字符串。

代码示例

String barcodeMSG = "0123456789";
 
// Create a blank document and add a page
PDFDocument pdf = new PDFDocument();
PDFPage newPage = pdf.appendNewPage(8.5 * 72, 11 * 72);
Graphics2D pageG2 = newPage.createGraphics();
 
// Embed the font
Font code39Font = pdf.embedFont("free3of9.ttf", Font.TRUETYPE_FONT);		
pageG2.setFont(code39Font.deriveFont(64f));
pageG2.drawString(barcodeMSG, 72, 108);
 
// Save the document
pdf.saveDocument("barcode.pdf");

方法2

第二种方法是使用条形码库创建条形码图像,然后使用jPDFProcess将该图像绘制到PDF上。 barcode4j.jar文件是一个开放源代码库,它实现了许多条形码生成类,包括代码39.样例程序使用这个jar文件中的类来生成条形码图像,然后将图像添加到 PDF文件。

代码示例

String barcodeMSG = "0123456789";
 
// Create a blank document and add a page
PDFDocument pdf = new PDFDocument();
PDFPage newPage = pdf.appendNewPage(8.5 * 72, 11 * 72);
Graphics2D pageG2 = newPage.createGraphics();
 
// This code creates a barcode image using Barcode39 and then adds the image to the page
Code39Bean code39 = new Code39Bean();
code39.setModuleWidth(2);
code39.setBarHeight(50);
code39.setWideFactor(2);
BarcodeDimension dim = code39.calcDimensions(barcodeMSG);
 
BufferedImage barcodeImage = new BufferedImage((int)dim.getWidth(), (int)dim.getHeight(), BufferedImage.TYPE_INT_RGB);
Graphics2D imageG2 = barcodeImage.createGraphics();
imageG2.setColor(Color.white);
imageG2.fillRect(0, 0, barcodeImage.getWidth(), barcodeImage.getHeight());
imageG2.setColor(Color.black);
code39.generateBarcode(new Java2DCanvasProvider(imageG2, 0), "0123456789");
 
// Add the image to the page
pageG2.drawImage(barcodeImage, posX, posY, null);
 
// Save the document
pdf.saveDocument("barcode.pdf");

下载AddBarcode.java完整的Java示例程序



慧都控件|提供软件技术整体解决方案

云集全球三千余款优秀控件、软件产品,提供行业领先的咨询、培训与开发服务
企业QQ:800018081|电话:023-66090381

用户评论: 您的宝贵经验,能为更多人带来帮助,登录后才能评论。
评论加载中...



    联系我们


    官方微信
    官方微博

    慧都旗下网站

    友情链接

    慧都科技有限公司 版权所有 Copyright 2003-2016 渝ICP备12000582号 | 京公网安备 11010102002019号
    100%正版软件