Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект по Delphi, ИСТ-2005.doc
Скачиваний:
10
Добавлен:
17.04.2019
Размер:
247 Кб
Скачать
☆

13. Работа с рисунками

Панель Дополнительная: Image – рисунок . Основные свойства рисунка:

Picture – ссылка на файл с рисунком

AutoSize – переключатель автомасштабирования области вывода (Истина/Ложь)

Stretch – переключатель автоматического сжатия или растяжения картинки по размеру области вывода (Истина/Ложь)

TransParent – прозрачный фон (Истина/Ложь)

Picture.LoadFromFile (‘ПутьКФайлу’) – метод для загрузки рисунка из файла.

Типы загружаемых рисунков по умолчанию: BMP, ICO, WMF

Пример: закроем форму рисунком

procedure TForm1.FormActivate(Sender: TObject);

var BitMap:TBitmap;

begin

with Image1 do begin

AutoSize:=False;

Left:=0;

Top:=0;

Width:=Form1.ClientWidth;

Height:=Form1.ClientHeight;

Stretch:=True;

Picture.LoadFromFile ('c:\Windows\Паркет.bmp');

end;

end;

14. Работа с графикой в окне формы

Canvas – клиентская область формы; изучим ее основные свойства:

Brush – цвет и шаблон заполнения для кисти;

Brush.Color:=clYellow;

Brush.Style:=bsBdiagonal;

//Другие стили: сплошная - bsSolid нет заливки - bsClear

ClicpRect – координаты отсекающего прямоугольника на экране (только чтение)

Rectangle (ClipRect.Left,ClipRect.Top,ClipRect.Right,ClipRect.Bottom);

Var R: TRect;

R := Canvas.GetClientRect;

Canvas.Rectangle(R.Left, R.Top, R.Right, R.Bottom);

CopyMode – режим вывода графики

cmSrcCopy – обычное наложение, cmNotSrcCopy – инверсия цвета, cmMergeCopy – наложение «И»

Font – шрифт для вывода на форму

With Canvas do begin

Font.Color:=clBlue;

Font.Name:=’Arial’;

Font.Size:=14;

Font.Style:=[fsItalic];

end;

Pen – тип карандаша для отрисовки линий и границ фигур

Pen.Width – ширина в пикселах, Color – цвет, Mode – режим наложения рисования линий (pmCopy, pmNotCopy, pmMerge), Style – тип линии (psSolid, psDash, psDot)

Pixels[x,y] – массив цветов пикселов

…и методы :

Arc(Left,Top, Right,Bottom, x3, y3, x4, y4); рисует дугу

Left,Top, Right,Bottom, - координаты прямоугольника, в который вписана дуга, (x3,y3),(x4,y4) – через эти точки проходят прямые из центра эллипса, определяющие начало и конец дуги

Ellipse (Left,Top, Right,Bottom); рисует эллипс

FillRect – заливка области цветом кисти

Var R:TRect;

R:=Rect(20,20,150,150);

Canvas.Brush.Color:=clRed;

Canvas.FillRect (R);

LineTo (X,Y) – линия из позиции пера в точку (X,Y)

MoveTo (X,Y) – установить перо в точку (X,Y)

Polygon – отрисовка замкнутого прямоугольника

Canvas.Brush.Color:=clRed;

Canvas.Polygon ([Point(10,10),Point (30,10),Point(130,30)];

PolyLine – незамкнутый многогранник

Rectangle (x1,y1,x2,y2); прямоугольник по 2 указанным углам

TextHeight, TextWidth – определяют высоту и ширину строки в пикселах:

procedure TForm1.FormPaint(Sender: TObject);

var s:String;

begin

s:='Delphi';

with Canvas do begin

Pen.Color:=clRed;

Brush.Style:=bsClear;

TextOut (10,10,s);

Rectangle (10,10,10+TextWidth(s),10+TextHeight(s));

end;

end;

Draw – отрисовка графики на форме:

procedure TForm1.FormPaint(Sender: TObject);

var BitMap:TBitmap;

begin

Bitmap := TBitmap.Create;

Bitmap.LoadFromFile('c:\Windows\Паркет.bmp');

Canvas.Draw(0, 0, Bitmap);

Bitmap.Free;

end;