통합검색
· 마을서비스란?  · 포럼마을  · 일반마을  · 테마마을  · 마을랭킹  · 활동왕
· 덱스퍼트란?  · TECBOX   · PRSBOX   · 이용안내  
· DEXT제품군  · 솔루션베이  · S/W & ESD 컴포넌트
· 프로그램베이
· LiveSeminar  · LiveConference
무선 인터넷(Mobile) 포럼마을 입니다.
  마을등급 무선 인터넷(Mobile)   이 마을은 포럼마을 입니다이 마을은 자유가입제 마을 입니다 마을소개 페이지로 이동 전입신청
마을촌장촌장 조갑열 주민 2289 since 2006-12-29
우리마을 공지사항
질문&답변
강좌&팁
자유게시판
자료실
앨범
개인게시판
마을 게시판
등록된 마을 게시판이
없습니다.
랑데브 게시판
칼럼 게시판
개발자 고충상담
Dev Talk
자유토론방
벼룩시장
재나미 우스개
구인/프로젝트 정보
사람인 채용 게시판
  고객지원 게시판
마이 데브피아
 나의 e-Money 내역
 활동왕 My Page
 스크랩한 게시글보기
 쪽지관리
 주소록관리

 질문&답변 ※ 꼭 답변채택을 해주시어 성의껏 답변해주신 회원님께 감사의 마음을 전하시길 바랍니다.
 지브라(ZEBRA) 바코드 출력시 한글깨지고 다른 방식 문의.  | Windows CE 2014-06-20 오전 11:49:03
아라온 번호: 32188 추천:0  / 읽음:8,637

안녕하세요.

윈모바일로 제브라 QLN320 모바일프린터를 이용해서 바코드 출력을 진행중입니다.

툴은 VS 2008 Pro 사용중이구요..

QLN320 이 아직 국내에는 많이 보급이 안되어있는지 참 찾아보기 힘들군요..ㅎㅎ

 

일단 웹상에 떠도는 ZM400 모델 참고로하여.. 한글폰트를 심었습니다.

프린터에 직접 보내는 방식으로 테스트를 했을때 한글이 나오는걸 봤구요..

 

그런데 프로그램에서 전송했을때만 한글이 깨지는데...

Byte 로 변환할때 문제가 있는지 참 애매하네요...

 

질문은

1. 첫번째 

   print.txt 파일을 노트북과 프린터로 바로 연결하여 전송했을때  (여기서 전송이라 함은 제어판속성에서 바로 날릴때)

   한글이 출력이 된다는 겁니다.

   print.txt 파일 내용은 아래와 같습니다.

^XA
^SEE:UHANGUL.DAT^FS
^PON^FS
^CW1,E:KFONT3.FNT^FS
^FO100,10^CI26^A1N,40,40^FD 서울시 송파구 오금동 ^FS
^FO200,100^CI26^A1N,40,40^FD한글테스트 OK!!!^FS
^XZ

그런데 프로그래밍에서 날리면 오류가 나네요..

프로그래밍 코드는 아래와 같습니다.

 

Dim thePrinterConn As ZebraPrinterConnection = New BluetoothPrinterConnection(UserEnvironment._PrinterMac)

            zplData += "^XA"
            zplData += "^PON^FS"
            zplData += "^SEE:UHANGUL.DAT^FS"
            zplData += "^CW1,E:KFONT3.FNT^CI26^FS"
            zplData += "^FO30,80^A1N,21,10^FD" + txtDescKor.Text.Trim + "^FS"
            zplData += "^FO300,80^A1N,40,40^FD테스트^FS"
            zplData += "^BEN,70,Y,N^FD" + txtBarcode.Text.Trim + "^FS"

            zplData += "^XZ"
            thePrinterConn.Write(Encoding.[Default].GetBytes(zplData))

이 코드에서 위 밑줄친 코드에 Bytes 현식으로 데이터를 받는데 영문 숫자는 잘 되는데 한글이 깨지는게 Encoding 에

문제가 있는것 같기도 한데...  여러 방식으로 바꿔봤지만 잘 안되네요..(__)

날리는 코드가 문제인지 인코딩이 문제인지... 혹시 경험이 있으신분들의 소중한 경험 부탁드립니다.

 

2. 두번째..

    PDA에서 날리다보니 ZPL 말고는 방법이 없다 생각합니다. 

    일반 PC용 어플에서는 Printdocument 를 사용해서 보냈기 때문에 화면디자인을 해서 보내버려서..

   바코드 사이즈라던지 제어가 좀 자유스러운데..

   PDA에서는 Printdocument 나 일반 Report ActiveX가 없다보니 ZPL로 보내는데..  모양이 부자연스럽네요.

   혹시 상용으로 사용할 수 있는 바코드종류가 여러개 이용가능한 Report ActiveX 가 있으시면 알려주십시요.

 

아래는 제가 만든 바코드입니다.  한글이 깨지네요..ㅠ.ㅠ

 

이 글에 답변 등록하기
 [답변]역시 인코딩 문제였네요...(__) 2014-06-20 오후 5:05:14
아라온 번호: 32189 추천:0  

지브라 한글을 출력할때 사용하는 인코딩 문제였네요..

 

^CI26  ::  요건 ASCII 형식 출력이라서..

 

^CI26 으로 사용할때는 아래와 같이 인코딩해야 한글이 출력됩니다.

thePrinterConn.Write(Encoding.GetEncoding("ks_c_5601-1987").GetBytes(zplData))

 

근데 요것보다는 UNICODE 형식이 낳을것 같지요.

 

그럴때는

^CI28 로 호출하고..

thePrinterConn.Write(Encoding.UTF8.GetBytes(zplData))

 

요렇게 인코딩하면 한글이 잘 되네요..

 

혹시 저와 같은 어려움으로  고생하시는분이 계실까봐 답글 올려요^^;

 

이 글에 답변 등록하기
목록 보기   지금 보고 계시는 글을 회원님의 my Mblog >> 스크랩에 넣어두고 다음에 바로 보실 수 있습니다.  
회사소개  |   개인정보취급방침  |  제휴문의  |   광고문의  |   E-Mail 무단수집거부  |   고객지원  |   이용안내  |   세금계산서
사업자등록번호 안내: 220-81-90008 / 통신판매업신고번호 제 2017-서울구로-0055호 / 대표: 홍영준, 서민호
08390, 서울시 구로구 디지털로32길 30, 1211호 / TEL. 02_6719_6200 / FAX. 02-6499-1910
Copyright ⓒ (주) 데브피아. All rights reserved.