DrawPath

Grafică vectorială, Definirea și trasarea traseelor

Descriere

Pictează traseul curent — asamblat de StartPath, AddLineToPath, AddCurveToPath, AddArcToPath și ClosePath — folosind regula de umplere a învelirii nenule. După pictarea traseului, starea de traseu este resetată, astfel încât următorul StartPath pornește o formă proaspătă

Sintaxă

Delphi

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

ActiveX

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

DLL

int DLDrawPath(int InstanceID, int PathOptions);

Parametri

PathOptionsMod de pictare:

0 — Doar contur (trasare cu setările curente de linie).
1 — Doar umplere (cu culoarea de umplere curentă și regula de înfășurare nenulă).
2 — Umplere și contur

Valori returnate

0Eșec — PathOptions este în afara intervalului, niciun document nu este deschis sau nu a fost pornit niciun traseu
1Traseul a fost desenat cu succes

Observații

Setați culorile de contur și de umplere și atributele de linie (SetLineWidth, SetLineCap, SetLineDash) înainte de a apela DrawPath. Starea grafică curentă este eșantionată la locul apelului

Pentru traseele care se suprapun sau se autointersectează, regula de înfășurare nenulă tratează fiecare sub-traseu ca parte a aceleiași regiuni: o gaură tăiată dintr-o formă mai mare cere ca sub-traseul interior să se înfășoare în direcția opusă celui exterior. Când asta este incomod, apelați în schimb DrawPathEvenOdd — regula even-odd alternează pur și simplu între interior și exterior la fiecare traversare, ceea ce face găurile de tip punch-out banale

Exemplu

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

Consultați și

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