Formum düzgün yazdırılıyor, ancak makinemde düzgün yazdırılan bir form var ancak uygulamayı başka bir makineye dağıttığımda, form sayfaya sığmıyor ve masaüstü arka planı yazdırılan sayfada görünüyor belgesi. İki makine arasındaki birincil farklar, DPI ayarının% 150'de olmasıdır. Otomatik ölçeklemeyi birçok kez değiştirdim ama hiçbir şey değişmiyor. Form ekranda iyi görünüyor, ancak doğru yazdırmıyor. Kullanmakta olduğum kod aşağıdadır.DPI% 150
private void btnPrint_Click(object sender, EventArgs e)
{
CaptureScreen();
printPreviewDialog1.Document = printDocument1;
printPreviewDialog1.ShowDialog();
}
Bitmap memoryImage;
private void CaptureScreen()
{
Graphics myGraphics = this.CreateGraphics();
Size s = this.Size;
memoryImage = new Bitmap(s.Width, s.Height, myGraphics);
Graphics memoryGraphics = Graphics.FromImage(memoryImage);
memoryGraphics.CopyFromScreen(this.Location.X, this.Location.Y, 0, 0, s);
}
private void printDocument1_PrintPage(System.Object sender,
System.Drawing.Printing.PrintPageEventArgs e)
{
e.Graphics.DrawImage(memoryImage, 0, 0);
}
Neden bir web formu yazdırmaya çalışıyorsunuz? Farkın, iki makine arasındaki baskı ayarlarında olmadığından emin misiniz? –
Kullanıcı, Windows formunu doldurmalı, kaydetmeli ve yazdırmalıdır. DPI,% 100 veya% 125 olduğunda ancak% 150'de olmadığında form doğru şekilde yazdırılır. Görme sorunları olan bir kullanıcım var, bu yüzden en yüksek DPI ayarını çalıştırıyor. – wsb
Hatalı çıktının nasıl göründüğüne dair bir resminiz var mı? – NineBerry