Рисование на Image.Canvas ... Наличие "артефактов"!

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Рисование на Image.Canvas ... Наличие "артефактов"!

Сообщение Andreich » 21.08.2008 12:00:23

Столкнулся со следующей проблемой: нужно нарисовать что-либо на компоненте TImage, (например отрезок линии)

procedure TForm1.Button1Click(Sender: TObject);
begin
Image1.Canvas.MoveTo(10,10);
Image1.Canvas.LineTo(50,50);
end;

После выполнения отрисовки на ТImage наблюдается наличие графических "артефактов" непонятного происхождения! Причем если рисование производится на форме или в PaintBox, то все нормально!

Кто-нибудь сталкивался с подобным?!

P.S. Ubuntu 8.04.1 + Lazarus 0.9.24 (gtk2)
Andreich
постоялец
 
Сообщения: 268
Зарегистрирован: 17.04.2008 12:33:43

Re: Рисование на Image.Canvas ... Наличие "артефактов"!

Сообщение Logo » 21.08.2008 17:16:23

Это остается шум канваса. Закрасьте предварительно канвас каким-то цветом:
Код: Выделить всё
  Image1.Canvas.Brush.Color := clWhite;
  Image1.Canvas.FillRect(0, 0, Image1.Width, Image1.Height);
    Image1.Canvas.MoveTo(10,10);
    Image1.Canvas.LineTo(50,50);
Logo
постоялец
 
Сообщения: 464
Зарегистрирован: 20.08.2008 01:00:47

Re: Рисование на Image.Canvas ... Наличие "артефактов"!

Сообщение Brainenjii » 21.08.2008 22:01:05

удобнее Image1.Canvas.FillRect(Image1.Canvas.ClipRect); ^_^ К сути претензий не имею ^_^
Аватара пользователя
Brainenjii
энтузиаст
 
Сообщения: 1352
Зарегистрирован: 10.05.2007 00:04:46

Re: Рисование на Image.Canvas ... Наличие "артефактов"!

Сообщение Logo » 22.08.2008 00:06:42

Для того и форум. Спасибо:)
Logo
постоялец
 
Сообщения: 464
Зарегистрирован: 20.08.2008 01:00:47


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: MSN [Bot], Yandex [Bot] и гости: 11

Рейтинг@Mail.ru