|
|||
Заливка. Вывод текстаЗаливка Чтобы залить прямоугольник каким-то цветом или узором (не рисуя рамку), используют метод Canvas.FillRect. Его параметр — объект типа TRect, который можно построить с помощью функции Rect прямо при вызове метода: Canvas.FillRect( Rect(x1, y1, x2, y2) ); Здесь x1, y1, x2 и y2 — числа или арифметические выражения. Как и в методе Rectangle, точки (x1,y1) и (x2,y2) — это противоположные углы прямоугольника. Иногда нужно залить область со сложной границей. В этом случае применяют метод FloodFill. Например, Canvas.FloodFill ( 50, 100, clBlack, fsBorder ); Цвет и стиль заливки определяется текущими установками кисти. Здесь первые два параметра — координаты точки, откуда начинается заливка. Третий параметр — цвет границы или внутренней области, в зависимости от значения четвертого параметра. Если он равен fsBorder, мы заливаем все, начиная от исходной точки до границы заданного цвета (в данном примере — черного, clBlack). Черная граница должна быть сплошной, если она будет разорвана, зальется весь холст. Возможен второй вариант, когда нужно залить область одного цвета, и эта область не имеет одноцветной границы. Так работает, например, заливка в редакторе Paint. В этом случае заливка, начинающаяся с точки (50,100), выполняется так: Canvas.FloodFill ( 50, 100, Canvas.Pixels[50,100], fsSurface ); Обратите внимание, что для надежности мы определили цвет точки (50,100) с помощью массива Pixels Вывод текста Для того, чтобы вывести текст на холст, используется метод Canvas.TextOut. Например, Canvas.TextOut ( 50, 100, 'Дом, который построил Джек' );Первые два параметра определяют левый верхний угол текста (здесь — точка (50,100)), третий — сам текст (символьная строка). Используемый шрифт задается в свойстве Canvas.Font, которое имеет несколько подсвойств (название шрифта, цвет, размер, стиль и др.). В этом примере текст набран шрифтом Verdana, размером 10 пт, жирным, курсивным: with Canvas do begin Font.Name := 'Verdana'; // гарнитура Font.Color := clRed; // цвет Font.Size := 10; // размер в пунктах Font.Style := [fsBold,fsItalic]; // стиль TextOut ( 50, 100, 'Дом, который построил Джек' );end;Напомним, что свойство Font.Style — это множество, которое может включать элементы fsBold (жирный), fsItalic (курсив), fsUnderline (подчеркивание) и fsStrikeOut (вычеркивание) в любых комбинациях. У объекта Canvas есть и другие методы, про которые можно прочитать в справочной системе или в Интернете. Некоторые из них мы изучим далее.
|
|||
|