smileNewfreedom

블로그 이미지
freedom 모든 자유와 시간을 위해.....
by 다크포스
12-08 02:30
  • 680,220Total hit
  • 0Today hit
  • 4Yesterday hit

CALENDAR

«   2021/12   »
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  

'예제'에 해당되는 글 1건

  1. 2010.03.03
    PrintDocument.Print 메서드 - 문서 인쇄
예제 소스 ==>
using
System;
using System.IO;
using System.Drawing;
using System.Drawing.Printing;
using System.Windows.Forms;

public class PrintingExample
{
     private Font printFont;
     private StreamReader streamToPrint;
     static string filePath;


     public PrintingExample()
     {
         Printing();
     }

     // The PrintPage event is raised for each page to be printed.
     private void pd_PrintPage(object sender, PrintPageEventArgs ev)
     {
         float linesPerPage = 0;
         float yPos =  0;
         int count = 0;
         float leftMargin = ev.MarginBounds.Left;
         float topMargin = ev.MarginBounds.Top;
         String line=null;

         // Calculate the number of lines per page.
         linesPerPage = ev.MarginBounds.Height  /
            printFont.GetHeight(ev.Graphics) ;

         // Iterate over the file, printing each line.
         while (count < linesPerPage &&
            ((line=streamToPrint.ReadLine()) != null))
         {
            yPos = topMargin + (count * printFont.GetHeight(ev.Graphics));
            ev.Graphics.DrawString (line, printFont, Brushes.Black,
               leftMargin, yPos, new StringFormat());
            count++;
         }

         // If more lines exist, print another page.
         if (line != null)
            ev.HasMorePages = true;
         else
            ev.HasMorePages = false;
     }

     // Print the file.
     public void Printing()
     {
         try
         {
            streamToPrint = new StreamReader (filePath);
            try
            {
               printFont = new Font("Arial", 10);
               PrintDocument pd = new PrintDocument();
               pd.PrintPage += new PrintPageEventHandler(pd_PrintPage);
               // Print the document.
               pd.Print();
            }
            finally
            {
               streamToPrint.Close() ;
            }
        }
        catch(Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
     }

     // This is the main entry point for the application.
     public static void Main(string[] args)
     {
        string sampleName = Environment.GetCommandLineArgs()[0];
        if(args.Length != 1)
        {
           Console.WriteLine("Usage: " + sampleName +" <file path>");
           return;
        }
        filePath = args[0];
        new PrintingExample();
     }
}

출처 : http://msdn.microsoft.com/ko-kr/library/system.drawing.printing.printdocument.print.aspx

'.NET' 카테고리의 다른 글

SQL 데이터 타입 크기 범위  (0) 2010.04.28
MySQL에서 지원하는 데이터 타입  (0) 2010.04.21
PrintDocument.Print 메서드 - 문서 인쇄  (0) 2010.03.03
마우스 우클릭 방지 풀어주는 프로그램  (0) 2009.03.27
Windows XP "VB6KO.dll"  (4) 2009.02.03
div 줄 바꿈  (2) 2009.01.30
TRACKBACK 0 AND COMMENT 0




ARTICLE CATEGORY

분류 전체보기 (534)
멋진 사진들 (8)
배경화면들 (3)
.NET (112)
연애이슈 (65)
게임관련 (15)
경제 이슈 (60)
모델 (0)
사진(취미) (14)
노래 (8)
호주워킹홀리데이 (11)
Javascript (2)
Ajax (4)
스포츠 (74)
우주/과학/생활 (95)
Windows 2008 (19)
Silverlight (2)
여행 (6)
MS 자격증 (2)
해외이슈 (4)
IT정보 (16)
Server (5)
애니매이션 (9)