Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bir uygulama tasarlarken, yazdırılan bir sayfayı temsil eden bir form tasarlayabilirsiniz. Aşağıdaki kod örneği, CopyFromScreen yöntemini kullanarak geçerli formun bir kopyasının nasıl yazdırılacağını gösterir.
Örnek
Örnek kodu çalıştırmak için forma aşağıdaki ayarlarla iki bileşen ekleyin:
| Nesne | Özellik\Olay | Değer |
|---|---|---|
| Düğmesi | Name |
Button1 |
Click |
Button1_Click |
|
| PrintDocument | Name |
PrintDocument1 |
PrintPage |
PrintDocument1_PrintPage |
öğesini seçtiğinizde Button1aşağıdaki kod çalıştırılır. Kod, formdan bir Graphics nesne oluşturur ve içeriğini adlı Bitmapbir memoryImage değişkene kaydeder. Kod, PrintDocument.Print yöntemini çağırır ve bu da PrintPage olayını tetikler. Yazdırma olay işleyicisi, bitmap'i yazıcı sayfasının memoryImage nesnesi üzerine çizer Graphics. Yazdırma olayı işleyici kodu döndürdüğünde sayfa yazdırılır.
namespace Sample_print_win_form1
{
public partial class Form1 : Form
{
Bitmap memoryImage;
public Form1()
{
InitializeComponent();
}
private void Button1_Click(object sender, EventArgs e)
{
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);
printDocument1.Print();
}
private void PrintDocument1_PrintPage(
System.Object sender,
System.Drawing.Printing.PrintPageEventArgs e)
{
e.Graphics.DrawImage(memoryImage, 0, 0);
}
}
}
Public Class Form1
Dim memoryImage As Bitmap
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim myGraphics As Graphics = Me.CreateGraphics()
Dim s As Size = Me.Size
memoryImage = New Bitmap(s.Width, s.Height, myGraphics)
Dim memoryGraphics As Graphics = Graphics.FromImage(memoryImage)
memoryGraphics.CopyFromScreen(Me.Location.X, Me.Location.Y, 0, 0, s)
PrintDocument1.Print()
End Sub
Private Sub PrintDocument1_PrintPage(
ByVal sender As System.Object,
ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage
e.Graphics.DrawImage(memoryImage, 0, 0)
End Sub
End Class
Sağlam programlama
Aşağıdaki koşullar bir özel duruma neden olur:
- Yazıcıya erişim izniniz yok.
- Yüklü yazıcı yok.
.NET güvenliği
Bu kod örneğini çalıştırmak için, bilgisayarınızla kullandığınız yazıcıya erişim izniniz olmalıdır.
Ayrıca bakınız
- PrintDocument
- Nasıl yapılır: GDI+ ile Görüntü İşleme
- Nasıl yapılır: Windows Forms'da Grafik Yazdırma
.NET Desktop feedback