javaprinter的简单介绍

博主:adminadmin 2023-03-19 16:11:06 403

今天给各位分享javaprinter的知识,其中也会对进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

关于JAVA的打印机设定

1、需要一个打印服务对象。这可通过三种方式实现:

在jdk1.4之前的版本,必须要实现java.awt.print.Printable接口

或通过Toolkit.getDefaultToolkit().getPrintJob来获取打印服务对象;

在jdk1.4中则还可以通过javax.print.PrintSerivceLookup来查找定位一个打印服务对象。

2、需要开始一个打印工作。这也有几种实现方法:在jdk1.4之前可以通过java.awt.print.PrintJob

(jdk1.1提供的,现在已经很少用了)调用print或printAll方法开始打印工作;

也可以通过java.awt.print.PrinterJob的printDialog显示打印对话框,

然后通过print方法开始打印;在jdk1.4中则可以通过javax.print.ServiceUI的printDialog显示打印对话框,

然后调用print方法开始一个打印工作。

设置打印属性

使用如下方法可以获得PrintJob的实例用于控制打印操作: Toolkit.getPrintJob(Frame f, String jobtitle, Properties prop) 那么对于打印属性的设置可以通过对prop的属性设置来实现,打印属性包括: awt.print.destination: 可以是"printer"或"file" awt.print.printer: 打印机名 awt.print.fileName: 打印文件名 awt.print.numCopies: 打印份数 awt.print.options: 打印命令的打印选项 awt.print.orientation: 打印方向,可以是"portrait"或"landscape" awt.print.paperSize: 纸张大小,可以是"letter","legal","executive"或"a4"

java怎么连接Gprinter条形码打印机

条形码打印机型号不同,不过思路都是一样的,以下可参考,另外需要你自己参考你的条形码打印机的接口说明。

因项目需要,对Godex EZ2300条码机进行调用打印, 驱动为Ez2000.dll, 用JNI可以实现调用,但比较麻烦, 需

要用到VC6进行DLL封装,改用JNative组件进行调用, 步骤如下:

1. 下载JNative-1.3.2.zip组件库

2. 解压出来后有JNative.jar / JNativeCpp.dll / libJNativeCpp.so三个文件,JNative.jar

置于%JAVA_HOME%/jre/lib/ext目录下, JNativeCpp.dll置于%SYSTEM%/WINDOWS/SYSTEM32目

录下

3.将Ez2000.dll置于%SYSTEM%/WINDOWS/SYSTEM32目录以及%JAVA_HOME%/jdk/bin目录下

4.

具体Java代码如下:

package com.athens.test;

import org.xvolks.jnative.JNative;

import org.xvolks.jnative.Type;

import org.xvolks.jnative.exceptions.NativeException;

public class Demo {

private static final String PRINTER_DLL = "Ez2000.dll";

public static void main(String [] args) {

Demo demo = new Demo();

System.loadLibrary("Ez2000");

JNative n = null;

try {

n = demo.getJNativeByFunction("isready");

n.setRetVal(Type.INT);

// n.setParameter(1, Type.VOID, "");

n.invoke();

Integer isready = Integer.parseInt(n.getRetVal());

if(isready == 1){

System.out.println("条码机可以开始接收资料!Starting...");

System.out.println("Starting...");

// 打开端口

n = demo.getJNativeByFunction("openport");

n.setParameter(0, Type.STRING, "0");

n.invoke();

// 设定参数

n = demo.getJNativeByFunction("setup");

n.setRetVal(Type.INT);

n.setParameter(0, Type.INT, "30");

n.setParameter(0, Type.INT, "7");

n.setParameter(0, Type.INT, "2");

n.setParameter(0, Type.INT, "1");

n.setParameter(0, Type.INT, "0");

n.setParameter(0, Type.INT, "0");

n.invoke();

// 发出指令

n = demo.getJNativeByFunction("sendcommand");

n.setRetVal(Type.INT);

n.setParameter(0, Type.STRING, "W70");

n.invoke();

n.setRetVal(Type.INT);

n.setParameter(0, Type.STRING, "^P1");

n.invoke();

n.setRetVal(Type.INT);

n.setParameter(0, Type.STRING, "^L");

n.invoke();

n.setRetVal(Type.INT);

n.setParameter(0, Type.STRING, "AC,20,60,1,1,1,0,TEST");

n.invoke();

// 发送条形码

n = demo.getJNativeByFunction("ecTextOut");

n.setParameter(0, Type.INT, "20");

n.setParameter(1, Type.INT, "10");

n.setParameter(2, Type.INT, "34");

n.setParameter(3, Type.STRING, "标楷体");

n.setParameter(4, Type.STRING, "Athens Testing Successlly!!!");

n.invoke();

// 发出指令

n = demo.getJNativeByFunction("sendcommand");

n.setRetVal(Type.INT);

n.setParameter(0, Type.STRING, "E");

n.invoke();

// 关闭端口

n = demo.getJNativeByFunction("closeport");

n.invoke();

System.out.println("Ending...");

}else{

System.out.println("条码机无法接收资料!");

}

}catch(Exception e){

e.printStackTrace();

}finally{

if (n != null){

try {

n.dispose();

} catch (NativeException e) {

e.printStackTrace();

} catch (IllegalAccessException e) {

e.printStackTrace();

}

}

}

}

// 通过方法名取得JNative对象

public JNative getJNativeByFunction(String functionName) throws NativeException{

return new JNative(PRINTER_DLL, functionName);

}

}

java程序设计:创建一个打印类Printer,定义抽象方法print();

public abstract class Printer {

public abstract void print();

}

class A extends Printer{

@Override

public void print() {

System.out.println("-----AAAAAAAAAA------");

}

}

class B extends Printer{

@Override

public void print() {

System.out.println("-----BBBBBBBBBB------");

}

}

class C extends Printer{

@Override

public void print() {

System.out.println("-----CCCCCCCCCC------");

}

}

class Test{

public static void main(String[] args) {

Printer Aprinter = new A();

Aprinter.print();

Printer Bprinter = new B();

Bprinter.print();

Printer Cprinter = new C();

Cprinter.print();

}

}

关于javaprinter和的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。