PDFium Delphi Component Docs

CreatePath Метод

Компонент: TPdf  ·  Модуль: PDFium
Создаёт новый объект пути в начальной позиции

Syntax

procedure CreatePath(X, Y: Single; FillMode: TPdfFillMode = fmNone; FillColor: TColor = clBlack; FillAlpha: Byte = $FF; Stroke: Boolean = True; StrokeColor: TColor = clBlack; StrokeAlpha: Byte = $FF; StrokeWidth: Single = 1.0; LineCap: TPdfLineCap = lcDefault; LineJoin: TPdfLineJoin = ljDefault; BlendMode: TPdfBlendMode = bmDefault);

FillModeTPdfFillMode. Правило заливки внутренней области пути: fmNone (без заливки), fmAlternate (правило чётности-нечётности) или fmWinding (правило ненулевого обхода). По умолчанию fmNone
FillColorTColor. Цвет заливки, применяемый, когда FillMode не fmNone. По умолчанию clBlack
FillAlphaByte. Непрозрачность заливки, где $00 — полная прозрачность, а $FF — полная непрозрачность. По умолчанию $FF
StrokeBoolean. При True контур пути рисуется с использованием StrokeColor, StrokeAlpha и StrokeWidth. По умолчанию True
StrokeColorTColor. Цвет контура пути. По умолчанию clBlack
StrokeAlphaByte. Непрозрачность обводки, где $00 — полная прозрачность, а $FF — полная непрозрачность. По умолчанию $FF
StrokeWidthSingle. Толщина линии обводки в пользовательских единицах PDF (пунктах). По умолчанию 1.0
LineCapTPdfLineCap. Стиль, применяемый к открытым концам пути: lcDefault, lcButt, lcRound или lcProjectingSquare. По умолчанию lcDefault
LineJoinTPdfLineJoin. Стиль, применяемый в стыках сегментов пути: ljDefault, ljMiter, ljRound или ljBevel. По умолчанию ljDefault
BlendModeTPdfBlendMode. Режим наложения при композитинге для объекта пути. По умолчанию bmDefault, который компонуется как bmNormal

 

procedure CreatePath(X, Y, Width, Height: Single; FillMode: TPdfFillMode = fmNone; FillColor: TColor = clBlack; FillAlpha: Byte = $FF; Stroke: Boolean = True; StrokeColor: TColor = clBlack; StrokeAlpha: Byte = $FF; StrokeWidth: Single = 1.0; LineCap: TPdfLineCap = lcDefault; LineJoin: TPdfLineJoin = ljDefault; BlendMode: TPdfBlendMode = bmDefault);

FillModeTPdfFillMode. Правило заливки внутренней области прямоугольника. По умолчанию fmNone
FillColorTColor. Цвет заливки прямоугольника. По умолчанию clBlack
FillAlphaByte. Непрозрачность заливки ($00–$FF). По умолчанию $FF
StrokeBoolean. При True контур прямоугольника рисуется. По умолчанию True
StrokeColorTColor. Цвет контура прямоугольника. По умолчанию clBlack
StrokeAlphaByte. Непрозрачность обводки ($00–$FF). По умолчанию $FF
StrokeWidthSingle. Толщина обводки контура в пунктах. По умолчанию 1.0
LineCapTPdfLineCap. Стиль завершения линий для углов прямоугольника. По умолчанию lcDefault
LineJoinTPdfLineJoin. Стиль соединения линий для углов прямоугольника. По умолчанию ljDefault
BlendModeTPdfBlendMode. Режим наложения при композитинге. По умолчанию bmDefault

Description

CreatePath начинает построение нового векторного объекта пути. Его нужно вызвать перед любым из методов построения пути (MoveTo, LineTo, BezierTo, ClosePath), а последовательность должна завершаться вызовом AddPath, который фиксирует путь на текущей странице

Доступны две перегрузки. Двухкоординатная форма CreatePath(X, Y, ...) инициализирует пустой путь с текущей точкой в (X, Y); затем форма выстраивается свободно с помощью методов сегментов пути. Четырёхкоординатная форма CreatePath(X, Y, Width, Height, ...) сразу создаёт замкнутый прямоугольный путь — перед AddPath дополнительные вызовы сегментов не нужны

Все визуальные свойства пути — цвет и правило заливки, цвет обводки, толщина, непрозрачность, завершение линий, соединение линий и режим наложения — задаются при создании через необязательные параметры. Значения по умолчанию дают чёрный контур толщиной 1 пункт без заливки

В каждый момент может строиться только один путь. Повторный вызов CreatePath до AddPath отбрасывает предыдущий незавершённый путь

Example

// Draw a filled blue triangle with a 2-pt black outline
Pdf1.NewPage(595, 842);
Pdf1.CreatePath(100, 100, fmWinding, clBlue, $FF, True, clBlack, $FF, 2.0);
Pdf1.LineTo(200, 300);
Pdf1.LineTo(300, 100);
Pdf1.ClosePath;
Pdf1.AddPath;

// Draw a red filled rectangle using the 4-coordinate overload
Pdf1.CreatePath(50, 400, 200, 80, fmWinding, clRed);
Pdf1.AddPath;

See Also

MoveTo, LineTo, BezierTo, ClosePath, AddPath