title: C# Can't print the right image size
body: <p>I'm trying to make a program that will print an image file to the printer onto an A4 sized paper. (The image is scaled to A4) This is currently the code I'm using.</p>
  
  <pre><code>Function.cs        
  
      Image tmp;
      public void PrintImage(string FileName)
      {
          tmp = Image.FromFile(FileName);
          PrintDocument printDoc = new PrintDocument();
          printDoc.DocumentName = "My Print Document";
          printDoc.PrintPage += new PrintPageEventHandler(OnPrintPage);
          // Send print message
          Console.WriteLine("Sending Print Message...");
          try
          {
              printDoc.Print();
          }
          catch(Exception)
          {
              Console.WriteLine("Error: No Printer Installed");
          }
          //
          // Event Handler
          //
      }
      private void OnPrintPage(object sender, PrintPageEventArgs ppea)
      {
      Console.WriteLine("Printing...");
      Graphics g = ppea.Graphics;
      g.DrawImage(tmp,0,0);
      }
  
  
  
  Main.cs
  
      string ReceiptFilePath = "C:\\Receipt.jpg"; // The Image I want to print.
  
      private void button1_Click(object sender, EventArgs e)
      {
          functions.PrintImage(ReceiptFilePath);
      }
  </code></pre>
  
  <p>With the above code, it can be printed, however it is not in A4 size, rather it zoomed in almost 400%. How should I modify the code?</p>