- 1、java 怎麼調用到條碼印表機!
- 2、求用java代碼控制斑馬條碼印表機列印二維碼商標的例子程序
- 3、如何通過JAVA代碼調用網路印表機使其列印接收到的文件
- 4、怎麼用java調用條碼印表機
- 5、java怎麼實現印表機列印
編程式控制制條碼印表機的有三種方式:1,直接使用條碼印表機的驅動程序,把它當成普通印表機使用。條碼可以使用條碼字體或圖形方式列印。2,使用條碼印表機語言(腳本)直接送到印表機的埠,如並口,網口或usb口。 3,調用第三方軟體,由第三方軟體對印表機進行控制,標籤模板的編輯等。你只需調用它並傳輸數據即可。
目前條碼印表機品牌還是以進口為主,比如美國的斑馬,霍尼韋爾(收購了intermec),Datamax,日本的東芝,台灣TSC等。
國產的主要有3家,以威海北洋、深圳博思和上海啟邦為主。
這些印表機基本都支持以上三種調用方式。
可以參考下.自己寫的一個例子
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.print.PageFormat;
import java.awt.print.Paper;
import java.awt.print.Printable;
import java.awt.print.PrinterException;
import java.awt.print.PrinterJob;
import java.util.Queue;
import com.google.zxing.WriterException;
public class QrPrint implements Printable {
public void print() throws PrinterException {
PrinterJob pj = PrinterJob.getPrinterJob();
PageFormat pf = pj.defaultPage();
Paper paper = new Paper();
double margin = 0.1; // half inch
paper.setImageableArea(margin, margin, paper.getWidth() – margin * 2,paper.getHeight() – margin * 2);
pf.setPaper(paper);
pj.setPrintable(this, pf);
pj.print();
}
public int print(Graphics graphics, PageFormat pageFormat, int pageIndex) throws PrinterException {
if (“判斷如果列印完了就退出”) {
return Printable.NO_SUCH_PAGE;
}
try {
Image eanImage = generateEANBufferedImage(content,120,20);
Graphics2D g2 = (Graphics2D) graphics;
g2.translate(pageFormat.getImageableX(), pageFormat.getImageableY()); //設置可成像的X和Y軸的距離
g2.drawImage(eanImage, 0, 80, null); //設置列印的邊距
g2.drawString(“字元串:”,130,20);
} catch (WriterException e) {
e.printStackTrace();
return Printable.NO_SUCH_PAGE;
}
return Printable.PAGE_EXISTS;
}
private BufferedImage generateBufferedImage(String content,int width,int height) throws WriterException {
HashtableEncodeHintType,String hints = new HashtableEncodeHintType,String();
hints.put(EncodeHintType.CHARACTER_SET, “utf-8”);
BitMatrix bitMatrix = new MultiFormatWriter().encode(content, BarcodeFormat.EAN_13, width, height, hints);
return MatrixToImageWriter.toBufferedImage(bitMatrix);
}
}
用java實現本地列印:java.awt中提供了一些列印的API,要實現列印,首先要獲得列印對象,然後繼承Printable實現介面方法print,以便印表機進行列印,最後用用Graphics2D直接輸出直接輸出。下面代碼實現了簡單的列印功能:
上海啟邦條碼印表機工程師馬天宇回答你:
編程式控制制條碼印表機的有三種方式:1,直接使用條碼印表機的驅動程序,把它當成普通印表機使用。條碼可以使用條碼字體或圖形方式列印。2,使用條碼印表機語言(腳本)直接送到印表機的埠,如並口,網口或usb口。 3,調用第三方軟體,由第三方軟體對印表機進行控制,標籤模板的編輯等。你只需調用它並傳輸數據即可。
介面 PrintService 是 DocPrintJob 的工廠。PrintService 描述了印表機的功能,並可查詢它來了解印表機支持的屬性
1 package com.tj.print; 2 3 import java.io.File; 4 import java.io.FileInputStream; 5 6 import javax.print.Doc; 7 import javax.print.DocFlavor; 8 import javax.print.DocPrintJob; 9 import javax.print.PrintService;10 import javax.print.PrintServiceLookup;11 import javax.print.ServiceUI;12 import javax.print.SimpleDoc;13 import javax.print.attribute.DocAttributeSet;14 import javax.print.attribute.HashDocAttributeSet;15 import javax.print.attribute.HashPrintRequestAttributeSet;16 import javax.swing.JFileChooser;17 18 public class PrintDemo1 {19 public static void main(String[] args) {20 JFileChooser fileChooser = new JFileChooser(); // 創建列印作業21 int state = fileChooser.showOpenDialog(null);22 if (state == fileChooser.APPROVE_OPTION) {23 File file = fileChooser.getSelectedFile(); // 獲取選擇的文件24 // 構建列印請求屬性集25 HashPrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();26 // 設置列印格式,因為未確定類型,所以選擇autosense27 DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;28 // 查找所有的可用的列印服務29 PrintService printService[] = PrintServiceLookup.lookupPrintServices(flavor, pras);30 // 定位默認的列印服務31 PrintService defaultService = PrintServiceLookup32 .lookupDefaultPrintService();33 // 顯示列印對話框34 PrintService service = ServiceUI.printDialog(null, 200, 200,35 printService, defaultService, flavor, pras);36 if (service != null) {37 try {38 DocPrintJob job = service.createPrintJob(); // 創建列印作業39 FileInputStream fis = new FileInputStream(file); // 構造待列印的文件流40 DocAttributeSet das = new HashDocAttributeSet();41 Doc doc = new SimpleDoc(fis, flavor, das);42 job.print(doc, pras);43 } catch (Exception e) {44 e.printStackTrace();45 }46 }47 }48 }49 }
原創文章,作者:簡單一點,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/126648.html