• 0
Major

Как заполнить эллипс?

Вопросы

Рисую на TImage эллипс, всё норм. Но не могу закрасить его полностью красным. Помогите плиз.

var
  MyRect: TRectF;
  ABrush: TStrokeBrush;
begin
  Image1.Bitmap.SetSize(Round(Image1.Width), Round(Image1.Height));

  ABrush := TStrokeBrush.Create(TBrushKind.Solid, TAlphaColors.Red);
  MyRect := TRectF.Create(10, 10, 30, 30);

  Image1.Bitmap.Canvas.BeginScene;
  Image1.Bitmap.Canvas.DrawEllipse(MyRect, 1, ABrush);
  Image1.Bitmap.Canvas.EndScene;

Также вложил пример.

Test.zip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

4 ответа на этот вопрос

  • 1

для заливки используется 

Canvas.Fill.Color := цвет;
Canvas.FillEllipse();

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
3 часа назад, Равиль Зарипов (ZuBy) сказал:

для заливки используется 


Canvas.Fill.Color := цвет;
Canvas.FillEllipse();

 

а как сделать, чтобы по окружности был черный цвет?

Уже всё перепробовал с Canvas.Stroke, не появляется черный периметр(

Изменено пользователем Major

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 1
2 часа назад, Major сказал:

а как сделать, чтобы по окружности был черный цвет?

Уже всё перепробовал с Canvas.Stroke, не появляется черный периметр(

var
  MyRect: TRectF;
begin
  MyRect := RectF(10, 10, 30, 30);

  if Canvas.BeginScene then
    try
      Canvas.Fill.Color := TAlphaColorRec.Red;
      Canvas.Stroke.Color := TAlphaColorRec.Black;
      Canvas.FillEllipse(MyRect, 1);
      Canvas.DrawEllipse(MyRect, 1);
    finally
      Canvas.EndScene;
    end;
end;

FillEllipse - заливка

DrawEllipse - обводка

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Гость
Эта тема закрыта для публикации ответов.

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу