Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
영수증 프린트에서 컷팅을 해야해요(다시한번부탁드립니다)
지가요 영수증 프린터에 list 를 출력을 해야하는데요~
마지막에 컷팅을 해야 해요 값은 ESCAPE값 + 'P' + 'O' 예요
print canvas 에서 어떻게 해야 하는지 알고 싶어요.
고수님들의 많은 가르침 부탁드립니다.
자세하고 구체적으로 좀 부탁합니다.--워낙 초보걸랑요....
2
COMMENTS
parkisu
•
2000.12.16 08:32
이영근 wrote:
> 지가요 영수증 프린터에 list 를 출력을 해야하는데요~
> 마지막에 컷팅을 해야 해요 값은 ESCAPE값 + 'P' + 'O' 예요
> print canvas 에서 어떻게 해야 하는지 알고 싶어요.
> 고수님들의 많은 가르침 부탁드립니다.
> 자세하고 구체적으로 좀 부탁합니다.--워낙 초보걸랑요....
>
>
다이렉트 출력을 하셔도 되구요.
네트워크를 지원할 필요가 있는 경우라면 드라이버를 사용하셔도 될 것같군요.
명령코드로 봐서는 시티즌 계열의 포스프린터인 것 같은데요.
시티즌 드라이버를 구하셔서 설치하신 다음 프린터의 등록정보의 설정버튼을 누르시고
모델명을 idp3530을 설정하시면 Printer.EndDoc과 함께 자동커팅이 됩니다.
참고로 다이렉트 출력시는 커팅위치를 조절하기위해서 약간의 작업이 필요합니다.
아래는 메모에 있는 내용을 시티즌드라이버를 통해 출력하는 예제입니다.
uses
Printers;
{...}
procedure PrintMemo(Memo: TMemo; PrinterName:String);
var
i,row,rowHeight,lineNum:Integer;
begin
if (Memo.Lines.Count=0) or (PrinterName='') then Exit;
row:=0; //출력된 라인수
with Printer do begin
SetPrinter(Pchar(PrinterName), Pchar(''), Pchar(''), 0); //프린터 설정
rowHeight := Canvas.TextHeight('0'); //한라인의 높이
lineNum := PageHeight div rowHeight; //한페이지의 라인수
BeginDoc;
try
for i:=0 to Memo.Lines.Count-1 do
begin
Canvas.TextOut(0, row, Memo.Lines[i]);
Inc(row);
if row=lineNum then
begin //한페이지를 다 인쇄하면 페이지를 넘긴다.
row:=0;
NewPage;
end;
end;
EndDoc; //이 신호와 함께 자동커팅이 된다.(단, 모델명이 idp3530일 때)
//No-Cutting 프린터의 경우는 5라인이 피드된다.
except
Abort;
ShowMessage('출력도중 에러가 발생했습니다.'+chr(13)+
'프린터를 점검해 주십시오.' );
end;
end;
end;
//사용법
procedure TForm1.btnPrintClick(Sender:TObject);
begin
PrintMemo(Memo1, '시티즌프린터');
end;
도움이 되시길...
0
0
삭제
수정
댓글
바람개비
•
2000.12.15 17:46
영수증 프린터라면 다이렉트출력을 하는게 편합니다. 제 경험상...
바라미~~
이영근 wrote:
> 지가요 영수증 프린터에 list 를 출력을 해야하는데요~
> 마지막에 컷팅을 해야 해요 값은 ESCAPE값 + 'P' + 'O' 예요
> print canvas 에서 어떻게 해야 하는지 알고 싶어요.
> 고수님들의 많은 가르침 부탁드립니다.
> 자세하고 구체적으로 좀 부탁합니다.--워낙 초보걸랑요....
>
>
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
이성윤
2000.12.14 10:35
0
COMMENTS
/
0
LIKES
한글을 쓰기위해서는 어떤 메세지를 ...
[초보]
2000.12.14 09:24
0
COMMENTS
/
0
LIKES
레지스트리 검색 하는 방법
김광철
•
2000.12.14 08:55
3
COMMENTS
/
0
LIKES
Password 넘어가기.
김광철
•
2000.12.14 18:08
해결했습니다. 답변해주신 두분께 감사드립니다. 김광철 wrote: > 아래분이 답변해주셨는데요. > >...
김종언
•
2000.12.14 18:05
database 컴포넌트를 사용하세요.... 그리고... 파라메터에... ID PW를 기록하시구여... 로긴프롬프트를 ...
선해석
•
2000.12.14 10:00
데이타베이스 컴포넌트를 추가해 주시구요 더블클릭해서 패스워드 추가시켜 주심 됩니다. 즐코~~~ 김광철 ...
선해석
•
2000.12.14 08:36
1
COMMENTS
/
0
LIKES
오라클에서 소수표기시 앞에 0이 도망갑니다
델초보
•
2000.12.14 19:24
혹시나 해서 테스트를 해봤습니다... (SQL> SELECT 0.01 FROM DUAL;) 오라클을 SQL Plus에서 쿼리를 날...
자라목
•
2000.12.14 07:55
1
COMMENTS
/
0
LIKES
FTP 컴포넌트 사용시......
바람개비
•
2000.12.15 19:04
저는 간단하게 NMFTP 컴포난트를 사용하고 있습니다. 이렇게... nmftp1.uploadappend(OldFile,Newfile); ...
김상호
2000.12.14 07:51
0
COMMENTS
/
0
LIKES
Re: MDB 연결시 Password 문제.
박종만
2000.12.14 07:11
0
COMMENTS
/
0
LIKES
오라클의 스토어드 프로시져의 사용
이영근
•
•
2000.12.14 06:51
2
COMMENTS
/
1
LIKES
영수증 프린트에서 컷팅을 해야해요(다시한번부탁드립니다)
지가요 영수증 프린터에 list 를 출력을 해야하는데요~ 마지막에 컷팅을 해야 해요 값은 ESCAPE값 + 'P' + 'O' 예요 print canvas 에서 어떻게 해야 하는지 알고 싶어요. 고수님들의 많은 가르침 부탁드립니다. 자세하고 구체적으로 좀 부...
parkisu
•
2000.12.16 08:32
이영근 wrote: > 지가요 영수증 프린터에 list 를 출력을 해야하는데요~ > 마지막에 컷팅을 해야 해요 값...
바람개비
•
2000.12.15 17:46
영수증 프린터라면 다이렉트출력을 하는게 편합니다. 제 경험상... 바라미~~ 이영근 wrote: > 지가...
앨리수
2000.12.14 06:19
0
COMMENTS
/
0
LIKES
[급질]SQL 오늘날짜 검색..(집에 보내줘요!!!)
최명훈
•
2000.12.14 06:15
1
COMMENTS
/
0
LIKES
특정포트의 socketserver를 찾을 수 있나요???
김상호
•
2000.12.14 07:56
clientSocket 으로 접속을 시도해 보면 될것 같은데요... IP를 알고 있다면 바로 접속을 시도해서 연결이 ...
오태양
2000.12.14 04:43
0
COMMENTS
/
0
LIKES
메모 컴포넌트가 속썩이네요 ㅜ.ㅜ;;
반칙왕
2000.12.14 04:27
0
COMMENTS
/
0
LIKES
오라클에서 Unknow error Network 에러 답변입니다.
이성윤
•
2000.12.14 04:28
1
COMMENTS
/
0
LIKES
데이타 베이스 필드중에 260자 이상을 입력할수 있는 필드없나요 ?
권민호
•
2000.12.14 06:16
이성윤 wrote: > 데이타 베이스 프로그램을 작성중인데요. > > 데이타 중에는 500자가 넘는 데이타가 ...
이태회
2000.12.14 04:02
0
COMMENTS
/
0
LIKES
[VCL]메인폼에서 메뉴동적생성후 Child에서 Menu Checked 없애기
한재홍
•
2000.12.14 03:53
4
COMMENTS
/
0
LIKES
글자수를 알고 싶은데요.
종이학
•
2000.12.15 01:44
일단은 문자열을 WideString타입으로 저장한후에 Length함수로써 길이를 구해보세여~ WideString에대해서...
권민호
•
2000.12.14 06:19
한재홍 wrote: > 한글,영문,숫자,공백등이 섞여있는 데이타의 글자수를 알고 싶은데 > 어떻해야 하나요. ...
권경미
•
2000.12.16 01:16
var i : integer; _st : string; _length : integer; begin _st := edit1.text; _length...
한재홍
•
2000.12.14 18:19
친절한 답변에 감사드립니다. 하지만 제가 필요한건 바이트 수 가 아니라 글자수입니다. '123대한민국 12...
김성진
•
2000.12.14 03:48
2
COMMENTS
/
0
LIKES
Winzeos 외부 IP로 연결이 안됩니다.????
s6763
•
2000.12.14 21:40
김성진 wrote: > Winzeos 를 정상적으로 설치하고 델파이로 테스트 작업을 해보았는데.. > 윈용mysql을 ...
황보용
•
2000.12.14 08:31
혹시 winzeos 문제가 아니라... mysql에 그 머신의 ip를 등록해 주셨는지요. user테이블과 db 테이블에 ...
권경미
2000.12.14 03:25
0
COMMENTS
/
0
LIKES
Re: MDB를 이용해서 프로그래밍을 하는데...
리노
2000.12.14 02:54
0
COMMENTS
/
0
LIKES
에러 좀 해결해주세요^^
파이공주
•
2000.12.14 02:43
1
COMMENTS
/
0
LIKES
고수님..소리파동을 보이고 싶은데요...
구글
•
2000.12.14 18:27
파이공주 wrote: > 오디오 파일의 > 소리파동을 그래프로 나타내고 싶습니다. > 어케해야합니까.. > ...
델초짜!!
2000.12.14 02:39
0
COMMENTS
/
0
LIKES
델파이 퀵리포트에서 QRexpr의 Expression 모르겠읍니다.흐흐흐!!
이영근
2000/12/14 06:51
Views
954
Likes
1
Comments
2
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
> 지가요 영수증 프린터에 list 를 출력을 해야하는데요~
> 마지막에 컷팅을 해야 해요 값은 ESCAPE값 + 'P' + 'O' 예요
> print canvas 에서 어떻게 해야 하는지 알고 싶어요.
> 고수님들의 많은 가르침 부탁드립니다.
> 자세하고 구체적으로 좀 부탁합니다.--워낙 초보걸랑요....
>
>
다이렉트 출력을 하셔도 되구요.
네트워크를 지원할 필요가 있는 경우라면 드라이버를 사용하셔도 될 것같군요.
명령코드로 봐서는 시티즌 계열의 포스프린터인 것 같은데요.
시티즌 드라이버를 구하셔서 설치하신 다음 프린터의 등록정보의 설정버튼을 누르시고
모델명을 idp3530을 설정하시면 Printer.EndDoc과 함께 자동커팅이 됩니다.
참고로 다이렉트 출력시는 커팅위치를 조절하기위해서 약간의 작업이 필요합니다.
아래는 메모에 있는 내용을 시티즌드라이버를 통해 출력하는 예제입니다.
uses
Printers;
{...}
procedure PrintMemo(Memo: TMemo; PrinterName:String);
var
i,row,rowHeight,lineNum:Integer;
begin
if (Memo.Lines.Count=0) or (PrinterName='') then Exit;
row:=0; //출력된 라인수
with Printer do begin
SetPrinter(Pchar(PrinterName), Pchar(''), Pchar(''), 0); //프린터 설정
rowHeight := Canvas.TextHeight('0'); //한라인의 높이
lineNum := PageHeight div rowHeight; //한페이지의 라인수
BeginDoc;
try
for i:=0 to Memo.Lines.Count-1 do
begin
Canvas.TextOut(0, row, Memo.Lines[i]);
Inc(row);
if row=lineNum then
begin //한페이지를 다 인쇄하면 페이지를 넘긴다.
row:=0;
NewPage;
end;
end;
EndDoc; //이 신호와 함께 자동커팅이 된다.(단, 모델명이 idp3530일 때)
//No-Cutting 프린터의 경우는 5라인이 피드된다.
except
Abort;
ShowMessage('출력도중 에러가 발생했습니다.'+chr(13)+
'프린터를 점검해 주십시오.' );
end;
end;
end;
//사용법
procedure TForm1.btnPrintClick(Sender:TObject);
begin
PrintMemo(Memo1, '시티즌프린터');
end;
도움이 되시길...