barcode 条形码

import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;


import org.krysalis.barcode4j.HumanReadablePlacement;
import org.krysalis.barcode4j.impl.code128.Code128Bean;
import org.krysalis.barcode4j.output.bitmap.BitmapCanvasProvider;


public class Test001 {
public static void generateCode128Barcode(File file, String code) {
Code128Bean bean = new Code128Bean();
final int dpi = 2000;


// barcode
bean.setModuleWidth(0.55);
bean.setHeight(20);
bean.doQuietZone(false);
bean.setQuietZone(0);// 两边空白区
// human-readable
//bean.setFontName("Helvetica");
bean.setFontSize(7);
bean.setMsgPosition(HumanReadablePlacement.HRP_BOTTOM);//数字位置
// bean.set

OutputStream out = null;


try {
out = new FileOutputStream(file);


// BitmapCanvasProvider canvas = new BitmapCanvasProvider(out,
// "image/jpeg", dpi, BufferedImage.TYPE_BYTE_BINARY, false, 0);
BitmapCanvasProvider canvas = new BitmapCanvasProvider(out,
"image/jpeg", dpi, BufferedImage.TYPE_BYTE_BINARY, false, 0);
// canvas.
bean.generateBarcode(canvas, code);
canvas.finish();
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if (out != null)
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}


}





public static void main(String[] args) {
String code = "1201212500";
generateCode128Barcode(new File("d:/code128.jpg"), code);
/* generateCode128Barcode(new File("d:/code128.gif"), code);*/
}


}
### 回答1: 一个barcode条码库需要存储条码编码、描述、单位、价格等信息。为了简化库的设计,可以采用以下的简化版barcode条码库.sql设计: 1. 建立一张数据表barcode,包含以下字段: - barcode_id:主键,自增长的整数,用于唯一标识每个条码。 - barcode_code:varchar类型,表示条码编码,长度10位。 - barcode_desc:varchar类型,表示条码描述,长度100位。 - barcode_unit:varchar类型,表示条码单位,长度10位。 - barcode_price:decimal类型,表示条码价格。 2. 设计一个自动编号函数,用于生成barcde_id,函数名称为auto_increment。该函数需要有一个table_name参数,用于指定需要自动增长的表名。 - auto_increment(table_name varchar(100)):根据指定的表名获取当前最大barcode_id,然后返回最大barcode_id+1的整数值。 3. 设计一个插入条码数据的存储过程,该存储过程需要调用自动编号函数生成barcode_id,参数包括barcode_code、barcode_desc、barcode_unit、barcode_price四个字段。 - insert_barcode(barcode_code varchar(10), barcode_desc varchar(100), barcode_unit varchar(10), barcode_price decimal):插入一条条码数据,该存储过程将自动生成barcode_id,并将输入参数和自动生成barcode_id存储到barcode表中。 4. 设计一个查询条码数据的存储过程,参数为barcode_id,该存储过程返回指定barcode_id的所有信息。 - get_barcode(barcode_id int):查询barcode表中指定barcode_id的所有字段,返回一条记录。如果不存在该barcode_id则返回空记录。 通过以上设计,可以实现一个简化版的barcode条码库,能够满足基本需求。但是如果需要添加更复杂的功能,比如支持多种编码格式,支持多种价格单位等,需要对设计进行进一步优化和拓展。 ### 回答2: barcode条码库.sql是一个用于存储条形码信息的数据库文件。它通常包含多个表,用于存储不同类型的条形码及相关信息。但是,对于一些简单的条形码应用程序,完整的条形码库文件可能会过于复杂。因此,可以联想到一种简化版的barcode条码库.sql。 简化版的barcode条码库.sql可以只包含一个表,用于存储所有条形码的信息。该表包含以下列: 条形码ID - 一个唯一标识每个条形码的ID 条形码类型 - 表示该代码代表的条形码类型(例如,是EAN-13,还是Code 128) 条形码值 - 实际的条形码图像数据(例如,该条形码表示的数字和字符) 创建日期 - 创建该条形码的日期 更新日期 - 最近一次更新该条形码的日期 使用简化版的barcode条码库.sql,用户可以轻松地添加、更新和查询条形码数据。然而,这种简化版可能不够适用于一些复杂的条形码应用程序,因为它没有完整版性能所提供的各种表和列。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值