C# Ekran Görüntüsü Çekme – Alma
SanalData’yı Google’da tercih edilen kaynak olarak ekleyinC# ile yazılım yaparken bazı durumlardan ekran görüntünü kaydetmemiz gerekebilir.İşte böyle durumlar için hazırlamış olduğum kodları , umarım sizlerin işinide yarar.Öncelikle tanımlamanız gereken kütüphaneler
|
1 2 |
using System.IO; using System.Drawing.Imaging; |
İkinci adım olarak sa ekran görüntüsünü çekicek fonsiyonumuz ;
|
1 2 3 4 5 6 7 |
private Bitmap ekran_goruntusu() { Bitmap Screenshot = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height); Graphics GFX = Graphics.FromImage(Screenshot); GFX.CopyFromScreen(Screen.PrimaryScreen.Bounds.X, Screen.PrimaryScreen.Bounds.Y, 0, 0, Screen.PrimaryScreen.Bounds.Size); return Screenshot; } |
ve son olaraksa ekran görüntüsünü kaydetme kodumuz , bu kodu herhangi bir event’a yazabilirsiniz.Butonun click yada timer’ın tick eventına
|
1 2 |
Directory.CreateDirectory(@"C:\temp"); ekran_goruntusu().Save(@"C:\temp\ekrangörüntüsü.jpg", ImageFormat.Jpeg); //görüntüyü kayıt ediyoruz |
bir sonraki yazılımda görüşünceye kadar bol kodlu günler
Yöntem 2
Yukardaki yöntem dışında aşağıdaki yöntemi de kullanabilirsiniz.
Kütüphaneleri yükleyiniz.
|
1 2 3 4 |
using System.Windows.Forms; // also requires a reference to this assembly using System.Drawing; // also requires a reference to this assembly using System.Drawing.Imaging; using System.Threading; |
Herhangi bir butonun eventına aşağıdaki kodu yazınız.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
Thread thread = new Thread(() => { // Determine the size of the "virtual screen", which includes all monitors. int screenLeft = SystemInformation.VirtualScreen.Left; int screenTop = SystemInformation.VirtualScreen.Top; int screenWidth = SystemInformation.VirtualScreen.Width; int screenHeight = SystemInformation.VirtualScreen.Height; // Create a bitmap of the appropriate size to receive the screenshot. using (Bitmap bmp = new Bitmap(screenWidth, screenHeight)) { // Draw the screenshot into our bitmap. using (Graphics g = Graphics.FromImage(bmp)) { g.CopyFromScreen(screenLeft, screenTop, 0, 0, bmp.Size); } // Do something with the Bitmap here, like save it to a file: bmp.Save("C:\\TestImage.jpg", ImageFormat.Jpeg); } }); thread.SetApartmentState(ApartmentState.STA); thread.Start(); |
Günün zaman çizelgesi
Haber eklenme saatine göre sıralanır.
- Bugün
- K2’nin İlk Kış Zirvesini Anlatan Belgesel Apple TV’de
- Kaliforniya’da robotaksilere acil durum engeli için ceza
- Apple’ın metin bildirimli akıllı ev kamerası iddiası
- Apple, iPhone Duo için yeni Shot on iPhone kampanyasını başlattı
- Apple, Brüksel’de teknoloji lobisinin en aktif şirketlerinden
- Apple gündeminde iPhone Duo, AirPods 5 ve mesajla sipariş
- Armadin, yapay zekâ güvenliği için 255,5 milyon dolar topladı
- Lyft, sürücü sınıflandırması davasında 272,5 milyon dolar ödeyecek
- GrayKey, iPhone’un 72 saatlik güvenlik kilidini aşabilir
- Grok’un Maduro operasyonunu Trump’a önerdiği iddia edildi
- GTA 6’nın hava sistemi yerel yağış ve kasırgalar sunacak
- Apple Arcade kataloğuna beş yeni oyun eklendi
- Dün
- Audible, yapay zekâ destekli interaktif hikâyeleri duyurdu
- Kena: Scars of Kosmora’nın çıkışı 2027’ye ertelendi