?? jprinter.java
字號:
package com.tap.printerTest;
/**
*@author: Deli.Cheng
*@Project_name: JPOSFire
*@File_Name: jprinter.java
*@Create on Mar 27, 2009 11:54:11 AM
*Copyright (c) by TAP-Group(SH)
*@version: 1.0
*/
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import jpos.JposException;
import jpos.POSPrinter;
import jpos.POSPrinterConst;
import jpos.POSPrinterControl19;
import jpos.events.DirectIOEvent;
import jpos.events.OutputCompleteEvent;
import jpos.events.OutputCompleteListener;
import jpos.events.StatusUpdateEvent;
import jpos.events.StatusUpdateListener;
import jpos.events.DirectIOListener;
public class jprinter{
POSPrinterControl19 ptr = null;
public jprinter(){
init();
}
public void init(){
ptr = (POSPrinterControl19)new POSPrinter();
try {
ptr.open("POSPrinter");
ptr.claim(1000);
ptr.setDeviceEnabled(true);
ptr.setRecLetterQuality(true);
//注冊一張圖片
//這里是當前目錄下的javapos.bmp
// ptr.setBitmap(1, // Bitmap編號
// POSPrinterConst.PTR_S_RECEIPT,
// "javapos.bmp",
// POSPrinterConst.PTR_BM_ASIS,
// // 打印出的每一點對應一個象素
// POSPrinterConst.PTR_BM_CENTER);
//check();
//ptr.setLogo(POSPrinterConst.PTR_L_TOP, "Mannings.gif");
//ptr.printBitmap(POSPrinterConst.PTR_S_RECEIPT, "Mannings.gif", POSPrinterConst.PTR_BM_ASIS, POSPrinterConst.PTR_BM_CENTER);
//getBufferImage("logo.png");
// ESC | #B, 該ESC指令序列可以打印位圖,其中#代表位圖編號
//ptr.printNormal(POSPrinterConst.PTR_S_RECEIPT, "THANK YOU FOR SHOPPING AT PARK'n SHOP ABCD\n");
ptr.printNormal(POSPrinterConst.PTR_S_RECEIPT, "\u001b|rvC測試測試測試測試 \u001b|bC 測試測試測試測試測試測試測");
// ptr.printNormal(POSPrinterConst.PTR_S_RECEIPT, "\u001b|cA多謝惠顧 請保管小票 以作退貨憑證 \n");
//
// ptr.printNormal(POSPrinterConst.PTR_S_RECEIPT, "\u001b|cA錢鈔,物品請當面清點,發票請于當日內開具 \n");
//
// ptr.printNormal(POSPrinterConst.PTR_S_RECEIPT, "\u001b|cA \u001b|#uC Le Pare FuTian District \n");
//
// ptr.printNormal(POSPrinterConst.PTR_S_RECEIPT, "\u001b|廣州黃埔大道盈隆廣場分店 熱線:829631011111 \n");
ptr.printNormal(POSPrinterConst.PTR_S_RECEIPT, "\u001b|fP");
ptr.addOutputCompleteListener(new OutputCompleteListener()
{
@Override
public void outputCompleteOccurred(OutputCompleteEvent arg0) {
System.out.println("測試...");
}
});
ptr.addStatusUpdateListener(new StatusUpdateListener()
{
@Override
public void statusUpdateOccurred(StatusUpdateEvent arg0) {
System.out.println(arg0.getStatus());
}
});
ptr.addDirectIOListener(new DirectIOListener()
{
@Override
public void directIOOccurred(DirectIOEvent arg0) {
System.out.println("fdsfdsfs");
}
});
ptr.release();
} catch (JposException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public boolean release(){
boolean isok = false;
return isok;
}
// public void printImage(BufferedImage image) {
// try {
// if (ptr.getCapRecBitmap()) { // si podemos imprimir bitmaps.
//
// File f = File.createTempFile("jposimg", ".png");
// OutputStream out = new FileOutputStream(f);
// out.write(ImageUtils.writeImage(image));
// out.close();
//
// ptr.printBitmap(POSPrinterConst.PTR_S_RECEIPT, f.getAbsolutePath(), POSPrinterConst.PTR_BM_ASIS, POSPrinterConst.PTR_BM_CENTER);
// }
// } catch (IOException eIO) {
// } catch (JposException e) {
// }
// }
public BufferedImage getBufferImage(String fileName){
Image image = null;
BufferedImage bufferedImage = null;
image = (new ImageIcon(fileName)).getImage();
// if (width != -11)
// image = (new ImageIcon(image.getScaledInstance(width, -1, 1))).getImage();
try
{
bufferedImage = new BufferedImage(image.getWidth(null), image.getHeight(null), 1);
System.out.println("***DeviceTSP613***bufferedImage.getWidth()**line:981*****"+bufferedImage.getWidth());
Graphics g = bufferedImage.createGraphics();
g.setColor(Color.white);
g.fillRect(0, 0, image.getWidth(null), image.getHeight(null));
g.drawImage(image, 0, 0, null);
g.dispose();
}
catch (Exception e)
{
//throw new JposException(114, 207);
e.printStackTrace();
}
return bufferedImage;
}
public String[] check(){
String[] names = ImageIO.getWriterFormatNames();
Object[] icon = ImageIcon.class.getGenericInterfaces();
if(null!=names&&names.length>0){
for(int i=0;i<names.length;i++){
System.out.println(names[i].toString());
}
}
if(null!=icon&&icon.length>0){
for(int i=0;i<icon.length;i++){
System.out.println(icon[i].toString());
}
}
return null;
}
public static void main(String[] args) {
jprinter jp = new jprinter();
//jp.init();
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -