DrawPath

Vektorová grafika, Definícia ciest a kreslenie

Opis

Kreslí aktuálny path — zložený z StartPath, AddLineToPath, AddCurveToPath, AddArcToPath a ClosePath — s pravidlom výplne non-zero winding. Po vykreslení pathu sa stav pathu resetuje, takže ďalší StartPath začína nový tvar.

Syntax

Delphi

Function TPDFlib.DrawPath(PathOptions: Integer): Integer;

ActiveX

Function PDFlib::DrawPath(PathOptions As Long) As Long

DLL

int DLDrawPath(int InstanceID, int PathOptions);

Parametre

PathOptionsRežim vykresľovania:

0 — Iba obrys (obrajsovanie s aktuálnymi nastaveniami čiar).
1 — Iba výplň (s aktuálnou farbou výplne a pravidlom non-zero winding).
2 — Výplň a obrys.

Návratové hodnoty

0Failed — PathOptions is out of range, no document is open, or no path has been started.
1Cesta sa úspešne vykreslila.

Poznámky

Farby ťahu a výplne a atribúty čiar (SetLineWidth, SetLineCap, SetLineDash) nastavte pred volaním DrawPath. Aktuálny grafický stav sa vzorkuje na mieste volania.

Pri prekrývajúcich sa alebo seba pretínajúcich pathoch zaobchádza pravidlo non-zero winding s každým sub-pathom ako s časťou tej istej oblasti: diera vyrezaná z väčšieho tvaru vyžaduje, aby sa vnútorný sub-path otáčal opačným smerom ako vonkajší. Ak je to nepraktické, zavolajte namiesto toho DrawPathEvenOdd — pravidlo even-odd sa pri každom pretnutí jednoducho strieda medzi vnútrom a vonkajškom, čo robí vyrezávanie dier triviálnym.

Príklad

// Filled outlined diamond
PDF.SetStrokeColor(0, 0, 0);
PDF.SetFillColor(0.6, 0.8, 1);
PDF.SetLineWidth(1.5);

PDF.StartPath(150, 100);
PDF.AddLineToPath(200, 150);
PDF.AddLineToPath(150, 200);
PDF.AddLineToPath(100, 150);
PDF.ClosePath;
PDF.DrawPath(2);                       // 2 = fill and outline

Pozri tiež

DrawPathEvenOdd, StartPath, AddLineToPath, AddCurveToPath, AddArcToPath, ClosePath, SetLineWidth