「java调用条码打印机」java实现条形码及打印

博主:adminadmin 2022-12-24 06:36:05 72

今天给各位分享java调用条码打印机的知识,其中也会对java实现条形码及打印进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java如何驱动条形码打印机并能实现WEB打印?

参考 javax.print.*

大致过程是这样的:

写一个servlet,专门实现打印服务

这个servlet内是这样处理的:

1.获取打印机对象printer

通过枚举 PrintService printservices[] = PrintServiceLookup.lookupPrintServices(...)

2.生成DocPrintJob job=PrintService.createPrintJob();

3.生成文档 Doc doc = new SimpleDoc(...);

需要3个参数

第一个是打印的数据,可以根据条码,生成一幅图像,然把图像作为输入流,作为第一个参数

第二个参数用一个 DocFlavor.INPUT_STREAM 对象

DocFlavor类有相应的静态变量,你根据图像的mime类型选择

第三个参数是一个DocAttributeSet对象

4.打印

job.print(doc, pras);

这是我以前写的练习:

-----------------------------------------------------------------------

package printtest;

import java.io.*;

import javax.print.*;

import java.awt.*;

import java.awt.image.*;

import javax.imageio.*;

public class Application1

{

public static void test(String code)

{

try{

DocFlavor flavor=DocFlavor.INPUT_STREAM.JPEG;

//get a printer

PrintService[] printers=PrintServiceLookup.lookupPrintServices( flavor, null);

for( int i=0; iprinters.length; i++ ) System.out.println( printers[i].getName());

PrintService printer=printers[0];

//job

DocPrintJob job=printer.createPrintJob();

//document

BufferedImage img=new BufferedImage( 400,300, BufferedImage.TYPE_USHORT_555_RGB );

Graphics g=img.getGraphics();

g.drawString(code, 100,100);

ByteArrayOutputStream outstream=new ByteArrayOutputStream();

ImageIO.write( img, "jpg", outstream);

byte[] buf=outstream.toByteArray();

InputStream stream=new ByteArrayInputStream(buf);

Doc doc=new SimpleDoc(stream,flavor,null);

//print

job.print(doc, null);

}

catch(Exception e)

{

e.printStackTrace();

}

}

//Main method

public static void main(String[] args)

{

test("12345");

}

}

怎么用java调用条码打印机

上海启邦条码打印机工程师马天宇回答你:

编程控制条码打印机的有三种方式:1,直接使用条码打印机的驱动程序,把它当成普通打印机使用。条码可以使用条码字体或图形方式打印。2,使用条码打印机语言(脚本)直接送到打印机的端口,如并口,网口或usb口。 3,调用第三方软件,由第三方软件对打印机进行控制,标签模板的编辑等。你只需调用它并传输数据即可。

如何用JAVA调用TLP条码打印机打印条码

一般来说条码打印机都有自己专门的DLL接口文件,不需要调用系统的Dll。

如果是支持接口开发,肯定会有DLL的说明文档。那么按照文档调用DLL的方法就可以了。不同的打印机接口方法不一样,所以没有现成的代码。

java 和 DLL 交互的话可以使用 JNative 包,比较方便。

首先 System.loadLibrary(dllName);

public Integer executeFunction(String dllName ,String functionName,Object[] params){

try {

JNative func = new JNative(dllName, functionName);

func.setRetVal(Type.INT);

for(int i=0;iparams.length;i++){

if(params[i] instanceof String)

func.setParameter(i, (String)params[i]);

else if(params[i] instanceof Integer)

func.setParameter(i, ((Integer)params[i]).intValue());

else if(params[i] instanceof Pointer)

func.setParameter(i, (Pointer)params[i]);

else if(params[i] instanceof Boolean)

func.setParameter(i,Type.INT, params[i].toString());

else if(params[i] instanceof byte[])

func.setParameter(i, Type.PSTRUCT,(byte[])params[i]);

}

func.invoke();

return func.getRetValAsInt();

} catch (Exception e) {

throw new RuntimeException(e);

}

}

调用的时候传dll名,函数名,和接口参数,详细的可以去了解一下。

java调用条码打印机的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java实现条形码及打印、java调用条码打印机的信息别忘了在本站进行查找喔。

The End

发布于:2022-12-24,除非注明,否则均为首码项目网原创文章,转载请注明出处。