DrawPath
Vektorinė grafika, kelio apibrėžimas ir braižymas
Aprašymas
Nupiešia dabartinį kelią – sudarytą iš StartPath, AddLineToPath, AddCurveToPath, AddArcToPath ir ClosePath – naudodama nulinio vijimo užpildymo taisyklę. Po piešimo kelio būsena atstatoma, todėl kitas StartPath pradeda naują formą.
Sintaksė
Delphi
Function TPDFlib.DrawPath(PathOptions: Integer): Integer;
ActiveX
Function PDFlib::DrawPath(PathOptions As Long) As Long
DLL
int DLDrawPath(int InstanceID, int PathOptions);
Parametrai
| PathOptions | Piešimo režimas: 0 — tik kontūras (vaizduoti kontūru su esamosiomis linijos nustatymais). 1 — tik užpildymas (su esamąja užpildymo spalva ir nenulineio apvyniojimo taisykle). 2 — užpildymas ir kontūras |
|---|
Grąžinamos reikšmės
| 0 | Failed — PathOptions is out of range, no document is open, or no path has been started. |
|---|---|
| 1 | Kelias nupieštas sėkmingai |
Pastabos
Kontūro ir užpildymo spalvas bei linijos atributus (SetLineWidth, SetLineCap, SetLineDash) nustatykite prieš iškviestą DrawPath. Esamoji grafikos būsena imta kvietimo vietoje
Persidengiančius arba susikertančius kelius nulinio vijimo taisyklė laiko tos pačios srities dalimi: skylė, išpjauta iš didesnės formos, reikalauja, kad vidinis pakelis vįstų priešinga kryptimi nei išorinis. Kai tai nepatogu, vietoj to iškvieskite DrawPathEvenOdd – lyginio-nelyginio taisyklė tiesiog kaitalioja vidų ir išorę kiekvienoje sankirtoje, todėl išpjautos skylės daromos paprastai.
Pavyzdys
// 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 outlineTaip pat žiūrėkite
DrawPathEvenOdd, StartPath, AddLineToPath, AddCurveToPath, AddArcToPath, ClosePath, SetLineWidth