DrawPath
Векторна графика, Определяне и рисуване на път
Описание
Запълва текущия контур — съставен от StartPath, AddLineToPath, AddCurveToPath, AddArcToPath и ClosePath — с правилото за запълване non-zero winding. След като контурът бъде запълнен, състоянието на контура се нулира, така че следващият StartPath започва нова фигура
Синтаксис
Delphi
Function TPDFlib.DrawPath(PathOptions: Integer): Integer;
ActiveX
Function PDFlib::DrawPath(PathOptions As Long) As Long
DLL
int DLDrawPath(int InstanceID, int PathOptions);
Параметри
| PathOptions | Режим на рисуване: 0 — Само контур (щрих с текущите настройки на линията) 1 — Само запълване (с текущия цвят за запълване и правилото за ненулева обвивка) 2 — Запълване и контур |
|---|
Върнати стойности
| 0 | Неуспех — PathOptions е извън диапазона, няма отворен документ или не е започнат контур |
|---|---|
| 1 | Контурът беше изчертан успешно |
Забележки
Задайте цветовете за контур и запълване и атрибутите на линията (SetLineWidth, SetLineCap, SetLineDash) преди да извикате DrawPath. Текущото графично състояние се взема в момента на извикването
За припокриващи се или самопресичащи се пътища правилото за ненулево навиване разглежда всеки подпът като част от една и съща област: отвор, изрязан от по-голяма фигура, изисква вътрешният подпът да се навива в посока, противоположна на външния Когато това е неудобно, вместо това извикайте DrawPathEvenOdd — правилото четно-нечетно просто редува вътрешно и външно при всяко пресичане, което прави изрязаните отвори лесни
Пример
// 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Вижте също
DrawPathEvenOdd, StartPath, AddLineToPath, AddCurveToPath, AddArcToPath, ClosePath, SetLineWidth