syap
.pdf•Объект Graphics предоставляет более широкие функции, чем функции рисования, такие как DrawLine или DrawRectangle
.Объект Graphics также осуществляет поддержку графического состояния, которое можно подразделить на следующие категории:
•Параметры качества
•Преобразования
•Область обрезки
Параметры качества
•Объект Graphics содержит некоторые свойства, влияющие на качество отображаемых объектов.Например, можно установить значение свойства TextRenderingHint, чтобы указать способ сглаживания (если оно нужно), применяемый к тексту.К другим свойствам, влияющим на качество, относятся свойства SmoothingMode, CompositingMode, CompositingQuality и InterpolationMode.
using System.Drawing.Drawing2D;
• Graphics graphics = e.Graphics;
• |
Pen pen = new Pen(Color.Blue); |
• |
graphics.SmoothingMode = |
|
System.Drawing.Drawing2D.SmoothingMode.AntiAlias; |
• |
graphics.DrawEllipse(pen, 0, 0, 200, 100); |
• |
graphics.SmoothingMode = |
|
System.Drawing.Drawing2D.SmoothingMode.HighSpeed; |
• |
graphics.DrawEllipse(pen, 0, 150, 200, 100); |
Преобразования
•Объект Graphics поддерживает два преобразования (объемное и страничное), которые применяются ко всем объектам, отображаемым объектом Graphics.Любое аффинное преобразование можно хранить в объемном преобразовании.Аффинные преобразования — это масштабирование, поворот, отражение, наклон и сдвиг.Страничное преобразование может использоваться для масштабирования и преобразования единиц измерения (например точек в дюймы).
•В приведенном ниже примере устанавливаются объемное и страничное преобразования объекта Graphics.В качестве объемного преобразования устанавливается поворот на 30 градусов.Страничное преобразование устанавливается таким образом, чтобы координаты, передаваемые второму методу DrawEllipse, измерялись в миллиметрах, а не в точках.В коде осуществляются два одинаковых вызова метода DrawEllipse.При вызове первого метода DrawEllipse применяется только объемное преобразование, а при вызове второго метода DrawEllipse применяются оба преобразования (объемное и страничное).
using System.Drawing.Drawing2D;
• Graphics graphics = e.Graphics;
• |
Pen pen = new Pen(Color.Blue); |
• |
graphics.SmoothingMode = |
|
System.Drawing.Drawing2D.SmoothingMode.AntiAlias; |
• |
graphics.DrawEllipse(pen, 0, 0, 200, 100); |
• |
graphics.SmoothingMode = |
|
System.Drawing.Drawing2D.SmoothingMode.HighSpeed; |
• |
graphics.DrawEllipse(pen, 0, 150, 200, 100); |
Область обрезки
•Объект Graphics поддерживает область обрезки, которая применяется для всех объектов, отображаемых объектом Graphics.Для установки границ области обрезки служит метод SetClip.
•В следующем примере создается область в форме креста, являющаяся объединением двух прямоугольников.Эта область назначается областью обрезки для объекта Graphics.Затем в коде рисуются две линии, ограниченные внутренней частью области обрезки.
Режимы дизайна и кода
Эмблема
организации
•При создании нового проекта запускается режим
дизайна — форма представляет собой основу для расположения элементов управления.
•Для работы с программой следует перейти в режим кода.
•После хотя бы однократного перехода в режим кода в этом проекте появится вкладка Form1.cs*, нажимая на которую, тоже можно переходить в режим кода.
•Для перехода в режим кода также можно использовать клавишу F7, а для возврата в режим дизайна — сочетание Shift+F7.
•Далее определяется собственное пространство имен, имя которого совпадает с названием проекта:
•namespace FirstForm
•Класс формы Form1, наследуемый от System.Windows.Forms.Form, содержит в себе почти весь код:
•public class Form1 : System.Windows.Forms.Form { … }