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 — מילוי בלבד (בצבע המילוי הנוכחי ובכלל ה-winding הלא-אפסי).
2 — מילוי ומתאר.

ערכי החזרה

0נכשל — PathOptions מחוץ לטווח, אין מסמך פתוח או שלא התחיל נתיב
1הנתיב צויר בהצלחה

הערות

הגדירו את צבעי הקו והמילוי ואת מאפייני הקו (SetLineWidth, SetLineCap, SetLineDash) לפני קריאה ל-DrawPath. מצב הגרפיקה הנוכחי נדגם במקום הקריאה.

עבור נתיבים חופפים או חוצי-עצמם כלל ה-winding הלא-אפסי מתייחס לכל תת-נתיב כחלק מאותו אזור: חור שנחתך מצורה גדולה יותר דורש שתת-הנתיב הפנימי יסתובב לכיוון המנוגד לחיצוני. כשזה לא נוח, קראו במקום זאת ל-DrawPathEvenOdd — כלל ה-even-odd פשוט מתחלף בין פנים לחוץ בכל חצייה, מה שהופך חורי הנעצה לטריוויאליים.

דוגמה

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