博客
关于我
barcode4j 条形码生成
阅读量:130 次
发布时间:2019-02-26

本文共 2173 字,大约阅读时间需要 7 分钟。

barcode4j 依赖的lib包略显臃肿,其中包括了/servelet-api,

因此本次选择的是轻量级的版本barcode4j-light

pom.xml添加

net.sf.barcode4j
barcode4j-light
2.0

BarcodeUtil工具类

import java.awt.image.BufferedImage;import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStream;import org.apache.commons.lang.StringUtils;import org.krysalis.barcode4j.impl.code39.Code39Bean;import org.krysalis.barcode4j.output.bitmap.BitmapCanvasProvider;import org.krysalis.barcode4j.tools.UnitConv; /** * 条形码工具类 * * @author liunn * @createDate 2019年07月29日 * */public class BarcodeUtil {     /**     * 根据信息生成图片文件     *     * @param msg     * @param path     * @return File     */    public static File generateFile(String msg, String path) {        File file = new File(path);        try {            generate(msg, new FileOutputStream(file));        } catch (FileNotFoundException e) {            throw new RuntimeException(e);        }        return file;    }        /**     * 生成流输出到指定目录     *     * @param msg     * @param ous     */    public static void generate(String msg, OutputStream ous) {        if (StringUtils.isEmpty(msg) || ous == null) {            return;        }         Code39Bean bean = new Code39Bean();         // 精细度        final int dpi = 150;        // module宽度        final double moduleWidth = UnitConv.in2mm(1.0f / dpi);         // 配置对象        bean.setModuleWidth(moduleWidth);        bean.setWideFactor(3);        bean.doQuietZone(false);         String format = "image/png";        try {             // 输出到流            BitmapCanvasProvider canvas = new BitmapCanvasProvider(ous, format, dpi,                    BufferedImage.TYPE_BYTE_BINARY, false, 0);             // 生成条形码            bean.generateBarcode(canvas, msg);             // 结束绘制            canvas.finish();        } catch (IOException e) {            throw new RuntimeException(e);        }    }     public static void main(String[] args) {        //条形码信息        String msg = "liunnDjj";        //图片文件保存路径        String path = "D:/liunnDjj.png";        generateFile(msg, path);    }}

运行main方法后会在D盘生成liunnDjj.png文件

转载地址:http://idof.baihongyu.com/

你可能感兴趣的文章
mysql优化--索引原理
查看>>
MySQL优化之BTree索引使用规则
查看>>
MySQL优化之推荐使用规范
查看>>
Webpack Critical CSS 提取与内联教程
查看>>
mysql优化概述(范式.索引.定位慢查询)
查看>>
MySQL优化的一些需要注意的地方
查看>>
mysql优化相关
查看>>
MySql优化系列-优化版造数据(存储过程+函数+修改存储引擎)-2
查看>>
MySql优化系列-进阶版造数据(load data statment)-3
查看>>
MySql优化系列-造数据(存储过程+函数)-1
查看>>
MySQL优化配置详解
查看>>
Mysql优化高级篇(全)
查看>>
mysql会员求积分_MySql-统计所有会员的最高前10次的积分和
查看>>
mysql会对联合索性排序优化_MySQL索引优化实战
查看>>
MySQL作为服务端的配置过程与实际案例
查看>>