cPort의 메소드 파라메터가 string 타입이라면 문제가 되겠네요.
WirteStr() 에 넘기는 문자를 AnsiString 타입으로 넘기더라도
메소드가 string로 선언되어 있다면 유니코드로 받아들일테니까요.
해당 메소드의 원형을 살펴보세요.
김영곤 님이 쓰신 글 :
: const
: {================프린터용 제어문자 선언====================}
: LF = Char(10);
: FF = Char(12);
: CR = Char(13);
: ESC = Char(27);
: CUT = ESC + 'i';
:
:
:
: ComPrint.WriteStr('****************************************'+LF);
: ComPrint.WriteStr('ENG : abcdefghijklmnopqrstuvwxyz1234567890'+LF);
: ComPrint.WriteStr('****************************************'+LF);
: ComPrint.WriteStr(LF);
: ComPrint.WriteStr(LF);
: ComPrint.WriteStr('****************************************'+LF);
: ComPrint.WriteStr('KOR : ' + AnsiString('가나다라마바사') + LF);
: ComPrint.WriteStr('****************************************'+LF);
:
: ComPrint.WriteStr(LF);
: ComPrint.WriteStr(LF);
: ComPrint.WriteStr(CUT);
:
: end;
:
:
: 다른건 출력이 잘 되는데 한글만 깨지네요.. 왜 깨지는 도져히 모르겠습니다..
:
: 혹시나 싶어서 델파이7.0으로 컴파일하면 한글출력이 잘 됩니다..
:
: 프린트기는 모델은 LK-TE201 입니다..
:
: 쿠핑님 글을 보고 ComPrint.WriteStr('KOR : ' + PAnsiChar(AnsiString('가나다라마바사')) + LF);
:
: 이렇게 해도 마찬가지네요..
:
: 읽어주셔서 감사합니다..
|