PureBasic

VectorSourceImage()

Синтаксис

VectorSourceImage(ImageID [, Alpha [, Width.d , Height.d [, Flags]]])

Описание


Выбирает указанное изображение в качестве источника рисования для операций Векторной графики, таких как FillPath() или StrokePath(). Эти функции будут использовать пиксели указанного изображения для обводки и заливки Векторного контура на устройстве (поверхности) вывода Векторной графики.

Параметры

ImageID Идентификатор изображения, которое будет использоваться в качестве источника. Корректный идентификатор 'ImageID' можно получить с помощью функции ImageID().
Alpha (дополн.) Задает дополнительную прозрачность (Alpha) для применения к изображению - источнику. Эта прозрачность применяется в дополнение к любой прозрачности пикселей, уже присутствующей в изображении - источнике. Значение по умолчанию - 255 (без дополнительной прозрачности).
Width.d, Height.d (дополн.) Значения, задающие ширину и высоту изображения - источника. Эти значения задаются в системе координат источника #PB_Corrdinate_Source. Если они не указаны, то будут использованы размеры изображения - источника (в пикселях) преобразованные в единицы измерения поверхности вывода Векторной графики (то есть изображение - источник будет иметь свой первоначальный размер).
Flags (дополн.) Может быть одним из следующих значений:
  #PB_VectorImage_Default: Области вне изображения - источника прозрачны (по умолчанию)
  #PB_VectorImage_Repeat : Изображение - источник повторяется, чтобы покрыть всю область рисования

Возвращаемое значение

Ничего.

Комментарии

См. обзор VectorDrawing для ознакомления с различными системами координат.

Изображение - источник может быть преобразовано (смещено, повернуто, растянуто, перекошено) методом преобразования системы координат источника #PB_Coordinate_Source. Во втором примере (ниже) можно увидеть преобразования.

Пример: Повторяемое изображение - источник

If OpenWindow(0, 0, 0, 400, 200, "VectorDrawing", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    CanvasGadget(0, 0, 0, 400, 200)

    LoadImage(0, #PB_Compiler_Home + "examples/Sources/Data/PureBasicLogo.bmp")

    If StartVectorDrawing(CanvasVectorOutput(0))

        AddPathBox(50, 50, 200, 50)
        AddPathBox(150, 75, 200, 50)

        VectorSourceImage(ImageID(0), 255, ImageWidth(0), ImageHeight(0), #PB_VectorImage_Repeat)
        StrokePath(20)

        StopVectorDrawing()
    EndIf

    Repeat
        Event = WaitWindowEvent()
    Until Event = #PB_Event_CloseWindow
EndIf

Пример: Повернутое и зеркально отраженное изображение - источник

If OpenWindow(0, 0, 0, 400, 200, "VectorDrawing", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    CanvasGadget(0, 0, 0, 400, 200)

    LoadImage(0, #PB_Compiler_Home + "examples/Sources/Data/PureBasicLogo.bmp")
    LoadFont(0, "Impact", 20, #PB_Font_Bold)

    If StartVectorDrawing(CanvasVectorOutput(0))

        FlipCoordinatesY(50, #PB_Coordinate_Source)
        RotateCoordinates(50, 50, -45, #PB_Coordinate_Source)
        VectorSourceImage(ImageID(0), 255, ImageWidth(0), ImageHeight(0), #PB_VectorImage_Repeat)

        VectorFont(FontID(0), 150)
        MovePathCursor(20, 20)
        DrawVectorText("TEXT")

        StopVectorDrawing()
    EndIf

    Repeat
        Event = WaitWindowEvent()
    Until Event = #PB_Event_CloseWindow
EndIf

См. также

VectorSourceColor(), VectorSourceLinearGradient(), VectorSourceCircularGradient()

Поддерживаемые OS

Все

<- VectorSourceGradientColor() - Оглавление VectorDrawing - VectorSourceLinearGradient()->