rss
twitter
  •  

Рисование на холсте (canvas) в Delphi

В английской раскладке: hbcjdfybt yf [jkcnt (canvas) d delphi
В русской раскладке: рисование на холсте (сфтмфы) в вудзрш
| Рубрика Программирование |
2 959 | Оцените статью
(Нет оценок)
Loading ... Loading ...

0

Каждый или почти каждый человек программирующий на дельфи пытался что нибудь нарисовать, использую компонент TImage. Но не все знают что можно рисовать и на других компонентах. Рассмотрим список самых очевидных компонентов имеющих Canvas.

  • TForm
  • TImage
  • TBitmap
  • TPaintBox
  • TStringGrid
  • TDrawGrid
  • TValueListEditor
  • TListBox и другие

Хотел написать свою статью, но на это ушло бы слишком много времени, по этому я напишу один совет, потом еще один и так напишу много советов.

Совет. Рисование в памяти, на TBitmap, гораздо быстрее, прямого взаимодействия с холстом визуального компонента. Если работать на прямую с TImage, то иногда будет заметно притормаживание анимации и мерцание изображения.

И пример.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
procedure Draw;
var
  MyBitMap: TBitMap;
  i : Integer;
begin

 MyBitMap:=TBitmap.Create;
 MyBitMap.Width:=Image1.Width;
 MyBitMap.Height:=Image1.Height;

 MyBitMap.Canvas.Pen.Color:=clred;

 for I := 0 to 18 do begin
  MyBitMap.Canvas.Pen.Width:=i;
  MyBitMap.Canvas.MoveTo(0+i*10,0);
  MyBitMap.Canvas.LineTo(0+i*10,100);
 end;

Image1.Canvas.Draw(0,0, MyBitMap);
end;

Это интересно...

Метки: , , , , , ,

Если любишь майонез - Подпишись на RSS!

Комментирование продлевает жизнь!