2014-12-22 6 views
0

영수증 프린터를 구입할 때 어떤 작업을 수행해야하는지 (절단, 마감 작업, 글꼴 설정 등)에 필요한 바이트 시퀀스를 알려주는 설명서도 제공됩니다. 그러나 ESC/POS 명령을 사용할 수있을 정도로 Java에 대한 이해가 부족합니다.열전 사 프린터에 바코드를 인쇄하는 명령은 무엇입니까?

나는 Citizen CT S2000 영수증 프린터가 있습니다. 필자는 이미 절단 및 줄 바꿈을 위해 바이트 시퀀스를 사용하고 열전 사 프린터가 가져야하는 글꼴을 조작했습니다. 그러나 나는 바코드 생성 및 인쇄에 ESC 명령을 사용하는 방법을 알아낼 수 없습니다.

이 작업을 수행하는 방법에 대한 설명서는 144 페이지의 here입니다. 여기에 샘플 코드가 BASIC으로 제공됩니다.

LPRINT CHR$(&H1D);"k"; CHR$(73); CHR$(10); 
LPRINT "{BNo.{C"; CHR$(12); CHR$(34); CHR$(56); 
LPRINT CHR$(&HA); 
END 

여기에 바코드를 인쇄하려고합니다.

public static void barcode() throws Exception{ 
    byte[] b = {0x7b, 0x43, 0x12, 0x34}; 
    //This is the commands as I interpreted the to print out 12 and 34 

    DocPrintJob job = PrintServiceLookup.lookupDefaultPrintService().createPrintJob(); 

    DocFlavor flavor = DocFlavor.BYTE_ARRAY.AUTOSENSE; 
    /*This is how I send byte sequences. 
    if you got something better then don't hesitate yelling at me :D :). */ 

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

    job.print(doc, null);     
} 

그러나 이것은 전혀 결과를 산출하지 않으며 프린터는 아무 것도하지 않습니다.

정말 어떻게 할 수 있는지 예제를 찾을 수 없습니다.

답변/의견을 보내 주시면 감사하겠습니다.

+1

아마 JavaPOS를 살펴 봐야 할 것입니다 : http://www.javapos.com/samplecode.html. 그래도 드라이버를 설치해야 할 것입니다. (엡손의 경우에는 JavaPOS ADK가 있습니다.) 일단 작동 시키면 좋은 라이브러리입니다. – wvdz

+0

감사합니다. 확실히 확인해 보겠습니다. 하지만 드라이버를 설치해야합니까? 커팅 명령과 같은 다른 명령을 사용할 수있었습니다. –

+1

잘 모르겠습니다. 비슷한 것을 구현했지만, 이것은 Epson Printer 용이었습니다. Epson JavaPOS 드라이버를 설치하지 않으면 작동하지 않습니다. – wvdz

답변

1

다음 명령을 사용하여 바코드를 인쇄 할 수 있습니다.

byte[] barCode = {0x1d,0x6b,0x07,0x6e,0x61,0x72}; 

Here 0x6e,0x61,0x72 are the charters "nar" which converted into barcode. 

확실합니다. 검색어가있을 경우 알려 주시기 바랍니다.