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.
Windows SDK'sını kullanarak görüntü işlemeyi gösterir.
Aşağıdaki konular, System.Drawing.Image sınıfının görüntü işleme yapmak amacıyla kullanımını gösterir.
.NET Framework ile Görüntü Görüntüleme
Aşağıdaki kod örneği, ana forma ait Graphics nesnesine bir işaretçi erişmek için OnPaint olay işleyicisini değiştirir. İşlev OnPaint , büyük olasılıkla Visual Studio uygulama sihirbazıyla oluşturulmuş bir Windows Forms uygulamasına yöneliktir.
Görüntü sınıfı tarafından Image temsil edilir. Görüntü verileri, System.Drawing.Image.FromFile yöntemi kullanılarak bir .jpg dosyasından yüklenir. Resim forma çizilmeden önce, form resme uyum sağlamak için yeniden boyutlandırılır. Görüntü, System.Drawing.Graphics.DrawImage yöntemiyle çizilir.
Graphics ve Image sınıflarının her ikisi de ad alanındadırSystem.Drawing.
Örnek
#using <system.drawing.dll>
using namespace System;
using namespace System::Drawing;
protected:
virtual Void Form1::OnPaint(PaintEventArgs^ pe) override
{
Graphics^ g = pe->Graphics;
Image^ image = Image::FromFile("SampleImage.jpg");
Form::ClientSize = image->Size;
g->DrawImage( image, 0, 0, image->Size.Width, image->Size.Height );
}
.NET Framework kullanarak Şekiller Çizin
Ana formun Graphics nesnesine bir işaretçi almak için, Graphics sınıfını kullanarak OnPaint olay işleyicisini değiştiren aşağıdaki kod örneği verilmektedir. Bu işaretçi daha sonra formun arka plan rengini ayarlamak ve System.Drawing.Graphics.DrawLine ve DrawArc yöntemlerini kullanarak bir çizgi ve yay çizmek için kullanılır.
Örnek
#using <system.drawing.dll>
using namespace System;
using namespace System::Drawing;
// ...
protected:
virtual Void Form1::OnPaint(PaintEventArgs^ pe ) override
{
Graphics^ g = pe->Graphics;
g->Clear(Color::AntiqueWhite);
Rectangle rect = Form::ClientRectangle;
Rectangle smallRect;
smallRect.X = rect.X + rect.Width / 4;
smallRect.Y = rect.Y + rect.Height / 4;
smallRect.Width = rect.Width / 2;
smallRect.Height = rect.Height / 2;
Pen^ redPen = gcnew Pen(Color::Red);
redPen->Width = 4;
g->DrawLine(redPen, 0, 0, rect.Width, rect.Height);
Pen^ bluePen = gcnew Pen(Color::Blue);
bluePen->Width = 10;
g->DrawArc( bluePen, smallRect, 90, 270 );
}
.NET Framework ile Görüntüleri Döndürme
Aşağıdaki kod örneği, diskten görüntü yüklemek, 90 derece döndürmek ve yeni bir .jpg dosyası olarak kaydetmek için sınıfının kullanımını System.Drawing.Image gösterir.
Örnek
#using <system.drawing.dll>
using namespace System;
using namespace System::Drawing;
int main()
{
Image^ image = Image::FromFile("SampleImage.jpg");
image->RotateFlip( RotateFlipType::Rotate90FlipNone );
image->Save("SampleImage_rotated.jpg");
return 0;
}
.NET Framework ile Görüntü Dosyası Biçimlerini Dönüştürme
Aşağıdaki kod örneği, System.Drawing.Image sınıfı ve System.Drawing.Imaging.ImageFormat enumerasyonu kullanılarak görüntü dosyalarını dönüştürmek ve kaydetmek için gösterilir. Aşağıdaki kod, bir .jpg dosyasından bir görüntü yükler ve hem .gif hem de .bmp dosya biçimlerinde kaydeder.
Örnek
#using <system.drawing.dll>
using namespace System;
using namespace System::Drawing;
using namespace System::Drawing::Imaging;
int main()
{
Image^ image = Image::FromFile("SampleImage.jpg");
image->Save("SampleImage.png", ImageFormat::Png);
image->Save("SampleImage.bmp", ImageFormat::Bmp);
return 0;
}
İlgili Bölümler
Grafik Programlamaya Başlarken