Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Демонстрирует обработку изображений с помощью пакета SDK для Windows.
В следующих разделах показано использование System.Drawing.Image класса для обработки изображений.
Отображение изображений с помощью платформа .NET Framework
В следующем примере кода обработчик события OnPaint модифицируется для получения указателя на объект Graphics для основной формы. Функция OnPaint предназначена для приложения Windows Forms, скорее всего, созданного с помощью мастера приложений Visual Studio.
Изображение представлено классом Image . Данные изображения загружаются из файла .jpg с помощью System.Drawing.Image.FromFile метода. Прежде чем изображение отображается на форме, форма изменяется, чтобы вместить изображение. Изображение рисуется с помощью метода System.Drawing.Graphics.DrawImage.
Классы Graphics и Image находятся в System.Drawing пространстве имен.
Пример
#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
В следующем примере кода класс Graphics используется для изменения обработчика событий OnPaint и получения указателя на объект Graphics, представляющий основную форму. Затем этот указатель используется для задания цвета фона формы и рисования линии и дуги с помощью System.Drawing.Graphics.DrawLine методов и DrawArc методов.
Пример
#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
В следующем примере кода показано использование System.Drawing.Image класса для загрузки образа с диска, поворота его 90 градусов и его сохранения в виде нового файла .jpg.
Пример
#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
В следующем примере кода демонстрируется System.Drawing.Image класс и перечисление, используемое System.Drawing.Imaging.ImageFormat для преобразования и сохранения файлов изображений. Следующий код загружает изображение из файла .jpg, а затем сохраняет его как в .gif, так и в форматах файлов .bmp.
Пример
#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;
}
Связанные разделы
Приступая к программированию графики