DrawPath

Grafika wektorowa, Definiowanie i rysowanie ścieżek

Opis

Maluje bieżącą ścieżkę — złożoną przez StartPath, AddLineToPath, AddCurveToPath, AddArcToPath i ClosePath — przy użyciu reguły wypełniania niezerowej liczby nawinięć. Po namalowaniu ścieżki jej stan jest resetowany, więc następne StartPath rozpoczyna nowy kształt

Składnia

Delphi

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

ActiveX

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

DLL

int DLDrawPath(int InstanceID, int PathOptions);

Parametry

PathOptionsTryb malowania:

0 — Tylko obrys (rysowany przy użyciu bieżących ustawień linii)
1 — Tylko wypełnienie (bieżącym kolorem wypełnienia i według reguły niezerowej liczby nawinięć)
2 — Wypełnienie i obrys

Wartości zwracane

0Niepowodzenie — PathOptions znajduje się poza zakresem, żaden dokument nie jest otwarty albo nie rozpoczęto ścieżki
1Ścieżka została pomyślnie namalowana

Uwagi

Ustaw kolory obrysu i wypełnienia oraz atrybuty linii (SetLineWidth, SetLineCap, SetLineDash) przed wywołaniem DrawPath. Bieżący stan grafiki jest próbkowany w miejscu wywołania

W przypadku nakładających się lub samoprzecinających ścieżek reguła niezerowej liczby nawinięć traktuje każdą podścieżkę jako część tego samego obszaru: otwór wycięty w większym kształcie wymaga, aby wewnętrzna podścieżka miała kierunek przeciwny do zewnętrznej. Gdy jest to niewygodne, wywołaj zamiast niej DrawPathEvenOdd — reguła parzystości po prostu przełącza stan wnętrza i zewnętrza przy każdym przecięciu, dzięki czemu wycinanie otworów jest proste

Przykład

// 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

Zobacz również

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