Читать интересную книгу Описание языка PascalABC.NET - W Cat

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 37 38 39 40 41 42 43 44 45 ... 101

bhDarkVertical

bhDarkHorizontal

bhDashedDownwardDiagonal

bhDashedUpwardDiagonal

bhDashedHorizontal

bhDashedVertical

bhSmallConfetti

bhLargeConfetti

bhZigZag

bhWave

bhDiagonalBrick

bhHorizontalBrick

bhWeave

bhPlaid

bhDivot

bhDottedGrid

bhDottedDiamond

bhShingle

bhTrellis

bhSphere

bhSmallGrid

bhSmallCheckerBoard

bhLargeCheckerBoard

bhOutlinedDiamond

bhSolidDiamond

bhMin

bhLargeGrid

bhMax

Подпрограммы для работы со шрифтом

Вывод текста осуществляется текущим шрифтом. Доступ к свойствам текущего шрифта можно осуществлять как в процедурном, так и в объектно-ориентированном стиле.

Процедуры и функции для доступа к свойствам шрифта сгруппированы парами: если Prop - имя свойства пера, то функция PenProp возвращает значение этого свойства, а процедура SetPenProp(p) устанавливает это свойство:

procedure SetFontSize(size: integer);

Устанавливает размер текущего шрифта в пунктах

function FontSize: integer;

Возвращает размер текущего шрифта в пунктах

procedure SetFontName(name: string);

Устанавливает имя текущего шрифта

function FontName: string;

Возвращает имя текущего шрифта

procedure SetFontColor(c: Color);

Устанавливает цвет текущего шрифта

function FontColor: Color;

Возвращает цвет текущего шрифта

procedure SetFontStyle(fs: integer);

Устанавливает стиль текущего шрифта

function FontStyle: integer;

Возвращает стиль текущего шрифта

Можно также изменять свойства текущего пера через объект Font.

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

function TextWidth(s: string): integer;

Возвращает ширину строки s в пикселях при текущих настройках шрифта

function TextHeight(s: string): integer;

Возвращает высоту строки s в пикселях при текущих настройках шрифта

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

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

function Font: GraphABCFont;

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

type

GraphABCFont = class

property NETFont: 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 графического рисунка

Класс 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);

1 ... 37 38 39 40 41 42 43 44 45 ... 101
На этом сайте Вы можете читать книги онлайн бесплатно русская версия Описание языка PascalABC.NET - W Cat.
Книги, аналогичгные Описание языка PascalABC.NET - W Cat

Оставить комментарий