Results 1 to 2 of 2

Thread: gradients tekenen

  1. #1

    Question gradients tekenen

    Ik ben bezig met wat tekenen in Delphi, nu kan ik weinig vinden over de mogelijkheden van gdi+ in Delphi over gradients. Ik zou graag gradients tekenen in vreemde vormen zoals bogen. Bijvoorbeeld in een kwart circel.. zie voorbeelden hier onder, ik gebruik nu vooral png's die ik maak in fireworks, maar als ik dan kleuren wil wijzigen moet ik die hermaken in fireworks..

    nu is alles te maken in Delphi, maar weet niet waar te beginnen.

    Click image for larger version. 

Name:	gradients.fw.jpg 
Views:	114 
Size:	4.0 KB 
ID:	7438

  2. #2
    Silly member NGLN's Avatar
    Join Date
    Aug 2004
    Location
    Werkendam
    Posts
    5,133
    Een gradiënt tekenen, moet waarschijnlijk geen probleem meer zijn.

    Om een niet rechthoekige vorm in te kleuren met een dergelijke gradiënt, kun je gebruik maken van regions of paths. Hieronder een voorbeeld met een path, waarbij je de gradiënt eerst naar een tijdelijke bitmap tekent, het path definieert, het clippath selecteert, en daaroverheen de bitmap tekent:
    Delphi Code:
    1. procedure TForm1.PaintBox1Paint(Sender: TObject);
    2. var
    3.   Bmp: TBitmap;
    4. begin
    5.   Bmp := TBitmap.Create;
    6.   try
    7.     Bmp.SetSize(100, 100);
    8.     DrawAngularGradient(Bmp.Canvas, [clRed, clBlue], Rect(0, 0, 100, 100), 0);
    9.     BeginPath(PaintBox1.Canvas.Handle);
    10.     PaintBox1.Canvas.Pie(0, 0, 100, 100, 50, 100, 100, 50);
    11.     EndPath(PaintBox1.Canvas.Handle);
    12.     SelectClipPath(PaintBox1.Canvas.Handle, RGN_COPY);
    13.     PaintBox1.Canvas.Draw(0, 0, Bmp);
    14.   finally
    15.     Bmp.Free;
    16.   end;
    17. end;
    Dit is overigens gewoon GDI, geen GDI+, maar ik vermoed dat dit afdoende is.
    (Sender as TNLDUser).Signature := 'Groeten van Albert';

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •