C#.NET Q&A

프린터 페이지 설정을 하고 싶습니다 왕초보개발자 평점: 없음 조회: 304
첨부파일

 

C#으로 레포팅툴을 이용해서 라벨지를 출력하고자 합니다

레포팅으로 그린 라벨지 용지 사이즈는 100x200 이기 때문에 제어판에 프린터기 페이지 설정이 이와 같지 않으면

출력했을 때 잘리는 문제가 발생합니다

사용자에게 설정을 요청하지 않고 코드에서 프린터기 페이지 설정을 제어하고 싶은데 방법을 못찾고 있습니다.

도움을 청하고자 글을 남깁니다.

아시는 분 댓글 부탁 드립니다.



PrinterSettings 클래스를 사용해서 설정을 바꿔도 제어판에 가서 확인하면 그대로 입니다 ㅜㅜ
태그 : C#질문
작성자 정보
왕초보개발자
Level 2
 [EXP.10/16]

메일:  비공개
글등록 +12 12 덧글등록 +3 6
자기소개
왕초보개발자입니다 정보를 얻기 위해 왔습니다 감사합니다
글 공유하기 |
  tweet facebook
2020-01-08 오전 10:38:28
나도한마디
사용자
왕초보개발자            [2020-01-08]
Level 2
 [EXP.10/16]
디폴트세팅 페이퍼 사이즈에 넣는거 말고
PrinterSettings.PaperSizes 에 있는거를 가져다 쓸 수 있는데 PrinterSettings.PaperSizes 는 접근이 안되는데 방법 없을까요?

PrinterSettings.PaperSizes에 있는
kind 커스텀 인 항목의 width, height 사이즈 수정하면 kind가 커스텀이 아니라는 에러만 나네요..
사용자
베로베로            [2020-01-09]
Level 26
 [EXP.20/50]
저같은경우는 라벨프린트는 아니지만 프린트를 할때 PrintPage에서 비트맵을 새로그려서 사용합니다.

마진을 주고 rectangleF로 bounds설정을 해서요
RectangleF bounds = e.MarginBounds;

float factor = ((float)b.Height / (float)b.Width); ;
int addMarginX = (int)(bounds.Width - b.Width) / 2;
int addMarginY = (int)(bounds.Height - b.Height) / 2;
e.Graphics.DrawImage(b, bounds.Left + addMarginX, bounds.Top + addMarginY, b.Width, b.Height); 이런식으로 내가 뽑을 영역을 계산해서 출력합니다. 미리보기로 출력전 영역을 확인하면서 조절해보세요.
사용자
왕초보개발자            [2020-01-10]
Level 2
 [EXP.10/16]
답변 진심으로 감사합니다.
말씀하신 방법은 PrintDocument 클래스에 PrintPage 이벤트를 발생할 때 마진 및 용지 설정을 하시는 건가요?

저는 엠투소프트의 레포팅툴을 사용해서 출력을 하는데 프린트 할 때 PrintPage 이벤트가 발생되지 않더군요..

다른 방법을 찾아봐야 할 것 같습니다ㅜㅜ
태그로 엮인글
글리스트
c#zedgraph 파일첨부 ksj
C++ 2차 배열 마샬링 문의  울이
C++dll 사용시 에러  linuxgo
 ★현재글->   프린터 페이지 설정을 하고 싶습니다[2]+1 파일첨부 왕초보개발자
TempData 관련 질문드립니다.   튼튼
WinForm 관련 UI 문의 드립니다.   물속세상
singleton 으로 만들어진 클래스의 정적필드는 어떤역할인가요?[1]+2  질문
datagridview1의 정보를 받아 행열 변환 상태로 datagridview 구현 파일첨부 하리
c# MDI 폼 질문드립니다  닉순
devexpress schedulerControl에서 포커스된 appointment정보 가져올 수 있나요  판다3
포인터가 포함된 함수를 C#으로 변환할 수 있는지요?[1] 파일첨부 고무랭이
클래스 간 효과적인 Event handler 사용 방법 문의[1] 파일첨부 고무랭이
트랜잭션 내에서 다른 트랜잭션 처리가 가능할까요??[1]+1  자크
Oracle ADO.Net 사용시 메모리 누수 발생 조언받고싶습니다  메로나