[转]java,servlet生成条形码

条码生成用的比较多的是barbecue和barcode4j。
我先使用的是barbecue,条形码是可以显示出来,可是下面的对应数字却不能显示,当然可以自己手动加上去,不过那就不是一张图片里面的了,排版也不是很好看。因此我就试了一下barcode4j,效果挺好的,所以把使用方法贴上来,给刚接触java的朋友们一点借鉴。
1、 google或者摆渡一下barcode4j要用的东东,下载压缩包barcode4j-2.0alpha2-bin.zip和barcode4j-2.0alpha2-src.zip。
2、 解压barcode4j-2.0alpha2-bin.zip这个包,在build目录下有barcode4j.jar,在lib目录下有avalon-framework-4.2.0.jar, 将barcode4j.jar和avalon-framework-4.2.0.jar添加到项目的lib中,刷新工程,然后在项目配置中将这两个jar包添加到classpath里面去。
3、 解压将barcode4j-2.0alpha2-src.zip,将src\java\org\krysalis\barcode4j\servlet目录下的BarcodeServlet.java类的代码拷出来,修改默认的图片显示方式,BarcodeServlet.java第168行的默认图片显示格式改成jpeg(因为不是所有的浏览器都支持svg格式,也不是所有的浏览者都愿意给自己的浏览器加一个这样的插件)
4、 将以下这段servlet配置在web.xml中
<servlet>
    <servlet-name>BarcodeServlet</servlet-name>
    <servlet-class>com.yourname.BarcodeServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>BarcodeServlet</servlet-name>
    <url-pattern>/barcode</url-pattern>
  </servlet-mapping>
4、 在页面中添加<img src="<%=request.getContextPath() %>/barcode?msg=12345678" height="50px" width=130px/>
5、 查看该页面就可以发现条形码为“12345678”的图片了,当然了图片大小就自己设置了。
呵呵,虽然是很简单的东西,但是希望能对需要的朋友有所帮助。
Barcode功能说明 FengShen_Xia 整理   更新:2007-05-31 13:45:48  版本: 1.0    Barcode1.0功能说明
一、Barcode项目说明:
    利用Barcode4j开源项目开发面向java bs的条形码打印功能。
二、Barcode项目功能:
    1、利用Barcode4j项目实现8种类型条形码。
    2、通过url调用实现web页面显示条形码。
    3、通过xml文件配置实现预定义条码类型。
    4、实现所见所得的条形码调试、配置功能。
三、Barcode实现步骤
    1、将barcode4j.jar、barcode.jar复制到\webRoot\WEB-INF\lib目录下。
    2、在\webRoot\WEB-INF\web.xml中添加BarCodeServlet
<servlet>
<servlet-name>barcode-invoker</servlet-name>
<servlet-class>barcode.servlet.BarCodeServlet</servlet-class>
<init-param>
  <param-name>conf</param-name>
  <param-value>/conf/barcode_conf.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
  <servlet-name>barcode-invoker</servlet-name>
  <url-pattern>*.barcode</url-pattern>
</servlet-mapping>
BarCodeServlet说明:
1、conf参数用来设置预定义条码类型,不设置没有预定义类型。
2、/conf/barcode_conf.xml为预定义条码类型配置文件。文件放在\webRoot\WEB-INF\classes\conf\目录下。
3、*.barcode为要显示条码的url识别。
3、在web页面中调用url。
案例:
1、<img src=” CODE39.barcode?code=123456789”>
2、<img src=” _a1.barcode?code=123456789”>
URL说明:
[类型*]. barcode?code**=...其他参数***
*:类型分固定类型(10种)和预定义类型(类型前加_)。
**:code是必要参数。
***:其他参数用来丰富条码显示效果。
四、参数说明:
名称    类型    默认值    说明
解析度:    dpi    int    150    值越大条码越长,分辨率越高。
留空白    quietZone    boolean    false    条码两端是否加空白
取反    antiAlias    boolean    false    条码内取反,具体功能不详
图片反转    orientation    int    0    旋转条码,可选为[0, 90, 180, 270, -90, -180 ,-270]
高度    barHeight    double    15    条码显示高度,为比例数
字体显示    hrp    int    2    字体显示位置,为0时候屏蔽fontName、fontSize参数。
0=HRP_NONE
1=HRP_TOP
2=HRP_BOTTOM
字体名称    fontName    String    Helvetica    跟随条码的字体类型,比如:宋体、黑体等等
字体大小    fontSize    double    2.8    跟随条码的字体大小,为比例数
五、xml文件说明:
<?xml version="1.0" encoding="GBK"?>
<barcode_conf>
<a3 fontSize="4" fontName="黑体" hrp="0" barHeight="23" orientation="0" antiAlias="false" quietZone="false" dpi="200" type="CODE39"/>
<a2 type="CODE39"/>
<a1 type="CODE39"/>
</barcode_conf>
案例中定义了a1、a2、a3三个预定义类型。可以设置9种参数,其中
type是必要参数并对应10种基本条码类型。
注意URL、参数和xml文件node属性的大小写!
六、条码调试程序功能说明:
1、显示图片:根据填写的10个参数动态显示条码。打印代码和类型为必选条件。
2、保存设置:对调试的条码样式比较满意后,赐予编号后保存在下面列表里供以后调用显示或生成配置。注意编号不能重复。
3、列表显示:可以将保存的配置重新显示。
4、列表删除:删除该行配置。
5、显示全部:将保存的所有条码配置显示出来,以供打印校验使用。
6、显示配置:将保存的所有条码配置显示为预定义xml格式。
7、资源下载:为bs项目集成barcode提供资源样例下载。
8、复制URL:将当前显示条码的url路径复制的系统粘贴板上(only IE)。
9、原始比例:将条码图形缩放比例恢复到100%(only IE)。
10、条码缩放:在选中条码缩放框的情况下,点击条码图片后可以用鼠标滚轮实现20%-500%图片缩放功能(only IE)。
以上功能在IE、firefox下调试成功。
七、图例
类型    Barcode type    PNG graphic
CODE39    Code 39     
CODE128    Code 128     
INT2OF5    Interleaved 2 of 5     
CODABAR    Codabar     
UPCA    UPC-A     
UPCE    UPC-E     
EAN13    EAN-13     
EAN8    EAN-8     
PDF417    PDF417     
DATAMATRIX    DataMatrix 

猜你喜欢

转载自wuniu2010.iteye.com/blog/1390162