Класс Picture графического рисунка 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Класс Picture графического рисунка

Поиск

Текущий шрифт Font

Объект текущего шрифта возвращается функцией Font и имеет тип GraphABCFont:

function Font: GraphABCFont;

Класс GraphABCFont имеет следующий интерфейс: Кроме этого, можно изменять свойства текущего пера через объект Font.

type
GraphABCFont = class
propertyNETFont: System.Drawing.Font;
property Color: GraphABC.Color;
property Style: integer;
property Size: integer;
property Name: string;
end;

Свойства класса GraphABCFont описаны в следующей таблице:


property NETFont: System.Drawing.Font;
Текущий шрифт .NET

property Color: GraphABC.Color;
Цвет шрифта

property Style: FontStyleType;
Стиль шрифта

property Size: integer;
Размер шрифта в пунктах

property Name: string;
Наименование шрифта


Кроме этого, можно изменять свойства текущего шрифта, используя соответствующие процедуры и функции.

Стили шрифта

Стиль шрифта задается перечислимым типом FontStyleType, который содержит следующие константы:

fsNormal – обычный;
fsBold – жирный;
fsItalic – наклонный;
fsBoldItalic – жирный наклонный;
fsUnderline – подчеркнутый;
fsBoldUnderline – жирный подчеркнутый;
fsItalicUnderline – наклонный подчеркнутый;
fsBoldItalicUnderline – жирный наклонный подчеркнутый.

Класс Picture представляет собой графический рисунок модуля GraphABC и является надстройкой над типом System.Drawing.Bitmap. Он имеет свойство прозрачности, которое можно включать/выключать, а также возможность непосредственного рисования на себе всех графических примитивов.


 

Конструкторы класса Picture

constructor Create(w,h: integer);
Создает рисунок размера w на h пикселей

constructor Create(fname: string);
Создает рисунок из файла с именем fname

constructor Create(r: System.Drawing.Rectangle);
Создает рисунок из прямоугольника r графического окна

 

Свойства класса Picture

property Width: integer;
Ширина рисунка в пикселах

property Height: integer;
Высота рисунка в пикселах

property Transparent: boolean;
Прозрачность рисунка; прозрачный цвет задается свойством TransparentColor

property TransparentColor: Color;
Прозрачный цвет рисунка. Должна быть установлена прозрачность Transparent = True

 

Методы класса Picture

procedure Load(fname: string);
Загружает рисунок из файла с именем fname

procedure Save(fname: string);
Сохраняет рисунок в файл с именем fname

procedure SetSize(w,h: integer);
Устанавливает размер рисунка w на h пикселей

function Intersect(p: Picture): boolean;
Возвращает True, если изображение данного рисунка пересекается с изображением рисунка p, и False в противном случае. Для проверки пересечения оба объекта рисуются на белом фоне, и прямоугольник пересечения попиксельно проверяется на пересечение. К сожалению, при таком алгоритме любые белые пиксели считаются не принадлежащими объекту. Поэтому для корректной работы этого метода не следует использовать белый цвет для внутренности объекта.

procedure Draw(x,y: integer);
Выводит рисунок в позиции (x,y)

procedure Draw(x,y: integer; g: Graphics);
Выводит рисунок в позиции (x,y) на поверхность рисования g

procedure Draw(x,y,w,h: integer);
Выводит рисунок в позиции (x,y), масштабируя его к размеру (w,h)

procedure Draw(x,y,w,h: integer; g: Graphics);
Выводит рисунок в позиции (x,y), масштабируя его к размеру (w,h), на поверхность рисования g

procedure Draw(x,y: integer; r: System.Drawing.Rectangle); // r - part of Picture
Выводит часть рисунка, заключенную в прямоугольнике r, в позиции (x,y)

procedure Draw(x,y: integer; r: System.Drawing.Rectangle; g: Graphics);
Выводит часть рисунка, заключенную в прямоугольнике r, в позиции (x,y) на поверхность рисования g

procedure Draw(x,y,w,h: integer; r: System.Drawing.Rectangle); // r - part of Picture
Выводит часть рисунка, заключенную в прямоугольнике r, в позиции (x,y), масштабируя его к размеру (w,h)

procedure Draw(x,y,w,h: integer; r: System.Drawing.Rectangle; g: Graphics);
Выводит часть рисунка, заключенную в прямоугольнике r, в позиции (x,y), масштабируя его к размеру (w,h), на поверхность рисования g

procedure CopyRect(dst: System.Drawing.Rectangle; p: Picture; src: System.Drawing.Rectangle);
Копирует прямоугольник src рисунка p в прямоугольник dst текущего рисунка

procedure CopyRect(dst: System.Drawing.Rectangle; bmp: Bitmap; src: System.Drawing.Rectangle);
Копирует прямоугольник src битового образа bmp в прямоугольник dst текущего рисунка

procedure FlipHorizontal;
Зеркально отображает рисунок относительно горизонтальной оси симметрии

procedure FlipVertical;
Зеркально отображает рисунок относительно вертикальной оси симметрии

procedure SetPixel(x,y: integer; c: Color);
Закрашивает пиксел (x,y) рисунка цветом c

procedure PutPixel(x,y: integer; c: Color);
Закрашивает пиксел (x,y) рисунка цветом c

function GetPixel(x,y: integer): Color;
Возвращает цвет пиксела (x,y) рисунка

procedure Line(x1,y1,x2,y2: integer);
Выводит на рисунке отрезок от точки (x1,y1) до точки (x2,y2)

procedure Line(x1,y1,x2,y2: integer; c: Color);
Выводит на рисунке отрезок от точки (x1,y1) до точки (x2,y2) цветом c

procedure FillCircle(x,y,r: integer);
Заполняет на рисунке внутренность окружности с центром (x,y) и радиусом r

procedure DrawCircle(x,y,r: integer);
Выводит на рисунке окружность с центром (x,y) и радиусом r

procedure FillEllipse(x1,y1,x2,y2: integer);
Заполняет на рисунке внутренность эллипса, ограниченного прямоугольником, заданным координатами противоположных вершин (x1,y1) и (x2,y2)

procedure DrawEllipse(x1,y1,x2,y2: integer);
Выводит на рисунке границу эллипса, ограниченного прямоугольником, заданным координатами противоположных вершин (x1,y1) и (x2,y2)

procedure FillRectangle(x1,y1,x2,y2: integer);
Заполняет на рисунке внутренность прямоугольника, заданного координатами противоположных вершин (x1,y1) и (x2,y2)

procedure FillRect(x1,y1,x2,y2: integer);
Заполняет на рисунке внутренность прямоугольника, заданного координатами противоположных вершин (x1,y1) и (x2,y2)

procedure DrawRectangle(x1,y1,x2,y2: integer);
Выводит на рисунке границу ы прямоугольника, заданного координатами противоположных вершин (x1,y1) и (x2,y2)

procedure Circle(x,y,r: integer);
Выводит на рисунке заполненную окружность с центром (x,y) и радиусом r

procedure Ellipse(x1,y1,x2,y2: integer);
Выводит на рисунке заполненный эллипс, ограниченный прямоугольником, заданным координатами противоположных вершин (x1,y1) и (x2,y2)

procedure Rectangle(x1,y1,x2,y2: integer);
Выводит на рисунке заполненный прямоугольник, заданный координатами противоположных вершин (x1,y1) и (x2,y2)

procedure RoundRect(x1,y1,x2,y2,w,h: integer);
Выводит на рисунке заполненный прямоугольник со скругленными краями; (x1,y1) и (x2,y2) задают пару противоположных вершин, а w и h – ширину и высоту эллипса, используемого для скругления краев

procedure Arc(x,y,r,a1,a2: integer);
Выводит на рисунке дугу окружности с центром в точке (x,y) и радиусом r, заключенной между двумя лучами, образующими углы a1 и a2 с осью OX (a1 и a2 – вещественные, задаются в градусах и отсчитываются против часовой стрелки)

procedure FillPie(x,y,r,a1,a2: integer);
Заполняет на рисунке внутренность сектора окружности, ограниченного дугой с центром в точке (x,y) и радиусом r, заключенной между двумя лучами, образующими углы a1 и a2 с осью OX (a1 и a2 – вещественные, задаются в градусах и отсчитываются против часовой стрелки)

procedure DrawPie(x,y,r,a1,a2: integer);
Выводит на рисунке сектор окружности, ограниченный дугой с центром в точке (x,y) и радиусом r, заключенной между двумя лучами, образующими углы a1 и a2 с осью OX (a1 и a2 – вещественные, задаются в градусах и отсчитываются против часовой стрелки)

procedure Pie(x,y,r,a1,a2: integer);
Выводит на рисунке заполненный сектор окружности, ограниченный дугой с центром в точке (x,y) и радиусом r, заключенной между двумя лучами, образующими углы a1 и a2 с осью OX (a1 и a2 – вещественные, задаются в градусах и отсчитываются против часовой стрелки)

procedure DrawPolygon(points: array of Point);
Выводит на рисунке замкнутую ломаную по точкам, координаты которых заданы в массиве points

procedure FillPolygon(points: array of Point);
Заполняет на рисунке многоугольник, координаты вершин которого заданы в массиве points

procedure Polygon(points: array of Point);
Выводит на рисунке заполненный многоугольник, координаты вершин которого заданы в массиве points

procedure Polyline(points: array of Point);
Выводит на рисунке ломаную по точкам, координаты которых заданы в массиве points

procedure Curve(points: array of Point);
Выводит на рисунке кривую по точкам, координаты которых заданы в массиве points

procedure DrawClosedCurve(points: array of Point);
Выводит на рисунке замкнутую кривую по точкам, координаты которых заданы в массиве points

procedure FillClosedCurve(points: array of Point);
Заполняет на рисунке замкнутую кривую по точкам, координаты которых заданы в массиве points

procedure ClosedCurve(points: array of Point);
Выводит на рисунке заполненную замкнутую кривую по точкам, координаты которых заданы в массиве points

procedure TextOut(x,y: integer; s: string);
Выводит на рисунке строку s в прямоугольник к координатами левого верхнего угла (x,y)

procedure FloodFill(x,y: integer; c: Color);
Заливает на рисунке область одного цвета цветом c, начиная с точки (x,y).

procedure Clear;
Очищает рисунок белым цветом

procedure Clear(c: Color);
Очищает рисунок цветом c




Поделиться:


Последнее изменение этой страницы: 2024-06-27; просмотров: 32; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.115 (0.006 с.)