2014-11-15 7 views
3

워드 패드 프로그램을 만들고 있습니다. 이 버튼을 클릭하면이 기능이 만들어지고 기본 프린터로 인쇄됩니다. 나는 몇 가지 조사를 수행 한, 그리고 내 프린터로 인쇄 일부 기능 코드 발견이 현재 작동여백을 사용하여 인쇄하는 방법

private void buttonPrint_Click(object sender, EventArgs e) 
    { 
     string print = "" + textBody.Text; 

     PrintDocument p = new PrintDocument(); 
     p.PrintPage += delegate(object sender1, PrintPageEventArgs e1) 
     { 
      e1.Graphics.DrawString(print, new Font("Times New Roman", 12), new  SolidBrush(Color.Black), new RectangleF(0, 0, p.DefaultPageSettings.PrintableArea.Width, p.DefaultPageSettings.PrintableArea.Height)); 
     }; 
     try 
     { 
      p.Print(); 
     } 
     catch (Exception ex) 
     { 
      throw new Exception("Exception Occured While Printing", ex); 
     } 
    } 

을,하지만 지금이없는 여백, 그것을 만들 수 있는지 궁금 해서요. 모든 것은 다음과 같습니다.

<Top of Page> 
<Message> 

위쪽, 측면 (왼쪽, 오른쪽) 및 아래쪽 여백이 없습니다. 마진을 갖도록 코드를 수정하려면 어떻게해야합니까? 에

+1

워드 패드를 RichTextBox 사용 (거의) 도구 상자에서이 같은 일을. 텍스트가 종이에 똑같이 나타나도록 내용을 인쇄하는 것은 다소 복잡하지만이 [MSDN 기사] (http://msdn.microsoft.com/en-us/library/ms996492.aspx)에서 잘 설명되어 있습니다. –

답변

1

PrintDocument 당신이 DefaultPageSettings 개체의 Margins을 설정할 수 있습니다

Margins margins = new Margins(100,100,100,100); 
p.DefaultPageSettings.Margins = margins; 
+1

감사합니다. 덕분에 많은 도움이되었습니다. –

관련 문제