title: Printing does not start at the top edge of the page
body: <p>I am trying to print some <code>string</code>s using <code>Graphicss.DrawString()</code>. I have set margins to the <code>printdocument</code> but does not start from the origin of the page. I have set <code>margins</code> to <code>(0,0,0,0)</code> but somehow it prints half centimeter below the top edge of the page. Another thing is that it can print from left edge.</p>
  
  <p>Below is my code.</p>
  
  <pre><code>private void button1_Click(object sender, EventArgs e)
      {
          ////PaperSize pkCustomSize1 = new PaperSize("First custom size", 1020, 3517);
          ////printDocument1.DefaultPageSettings.PaperSize = pkCustomSize1;
          printPreviewDialog1.Document = printDocument1;
          printDocument1.PrinterSettings.PrinterName = this.comboBox1.Text;
          Margins margins = new Margins(0, 0, 0, 0);
          printDocument1.PrinterSettings.DefaultPageSettings.Margins = margins;
          printPreviewDialog1.Show();
          printDocument1.Print();
      }
  
  private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
      {
          int resX = GetPrinterResolutionX(comboBox1);
          int resY = PrnOpra.GetPrinterResolutionY(comboBox1);
          Graphics g = e.Graphics;
  
          float scale = resX / ScrnRes;
          Bitmap bm = new Bitmap(367, 1205);
          g.DrawRectangle(new Pen(Color.Black, 0.5F), panel9.Location.X / 2, panel9.Location.Y / 2, panel9.Width, panel9.Height);
          g.DrawImage(bm, 0, 0);
  }
  </code></pre>
  
  <p>What's wrong with code?</p>