Download Now

    Reference Codebot.Render.Graphics.pas

    Part of the Codebot Render package

    The Codebot.Render.Graphics unit provides 2D vector graphics through the ICanvas interface, which is drawn using Codebot.Render.NanoVG. A canvas draws paths, images, sprites, and text using pens, brushes, and fonts.

    The unit defines the following interfaces:

    • IMatrix is a 2D transform.
    • IBitmap is an image, and IRenderBitmap is an image that can be drawn to.
    • IFont describes how text is drawn.
    • IPen strokes paths, and the solid, linear, radial, box gradient, and bitmap brushes fill them.
    • ISprite draws a single cell of a sprite sheet.
    • ITextWriter writes formatted text over several lines.

    A canvas must be created and used while an OpenGL context is current.

    Items 290 items

    NameKindLine
    BitmapsCreatedvariable35
    BitmapsDestroyedvariable36
    Clampfunction626
    FontsCreatedvariable33
    FontsDestroyedvariable34
    IBackBufferinterface615
    BeginFrameprocedure618
    EndFrameprocedure620
    Flipprocedure622
    IBitmapinterface130
    GetClientRectfunction134
    GetHeightfunction136
    GetNamefunction133
    GetWidthfunction135
    ClientRectproperty141
    Heightproperty144
    Nameproperty139
    Widthproperty143
    IBitmapBrushinterface347
    GetAnglefunction352
    GetBitmapfunction350
    GetOffsetfunction354
    GetOpacityfunction358
    GetScalefunction356
    SetAngleprocedure353
    SetBitmapprocedure351
    SetOffsetprocedure355
    SetOpacityprocedure359
    SetScaleprocedure357
    Angleproperty364
    Bitmapproperty362
    Offsetproperty366
    Opacityproperty370
    Scaleproperty368
    IBoxGradientBrushinterface323
    GetFeatherfunction330
    GetRadiusfunction328
    GetRectfunction326
    SetFeatherprocedure331
    SetRadiusprocedure329
    SetRectprocedure327
    Featherproperty338
    Radiusproperty336
    Rectproperty334
    IBrushinterface243
    ICanvasinterface513
    Arcprocedure572
    ArcToprocedure566
    BeginPathprocedure557
    BezierToprocedure568
    Circleprocedure574
    Clearprocedure539
    Clipprocedure534, 536
    ClosePathprocedure560
    DrawImageprocedure551, 553
    DrawSpriteprocedure555
    DrawTextprocedure547
    DrawTextMemoprocedure549
    Ellipseprocedure576, 577
    Fillprocedure589, 590
    FillCircleprocedure595
    FillRectprocedure597
    FillRoundRectprocedure599
    GetBlendModefunction516
    GetFillRulefunction524
    GetMatrixfunction520
    GetOpacityfunction518
    GetWindingfunction522
    LineToprocedure564
    MeasureAdvancefunction543
    MeasureMemofunction545
    MeasureTextfunction541
    MoveToprocedure562
    Polygonprocedure585
    Popprocedure530
    Pushprocedure528
    QuadToprocedure570
    Rectprocedure579, 580
    RoundRectprocedure582, 583
    RoundRectVaryingprocedure587
    SetBlendModeprocedure517
    SetFillRuleprocedure525
    SetMatrixprocedure521
    SetOpacityprocedure519
    SetWindingprocedure523
    Strokeprocedure592, 593
    StrokeCircleprocedure596
    StrokeRectprocedure598
    StrokeRoundRectprocedure600
    BlendModeproperty602
    FillRuleproperty610
    Matrixproperty606
    Opacityproperty604
    Windingproperty608
    IFontinterface167
    GetAlignfunction177
    GetBlurfunction181
    GetColorfunction171
    GetHeightfunction175
    GetLayoutfunction179
    GetLetterSpacingfunction183
    GetLineSpacingfunction185
    GetNamefunction170
    GetSizefunction173
    SetAlignprocedure178
    SetBlurprocedure182
    SetColorprocedure172
    SetHeightprocedure176
    SetLayoutprocedure180
    SetLetterSpacingprocedure184
    SetLineSpacingprocedure186
    SetSizeprocedure174
    Alignproperty197
    Blurproperty201
    Colorproperty191
    Heightproperty195
    Layoutproperty199
    LetterSpacingproperty203
    LineSpacingproperty205
    Nameproperty189
    Sizeproperty193
    IGradientBrushinterface277
    GetFarStopfunction281
    GetNearStopfunction280
    FarStopproperty286
    NearStopproperty284
    IGradientStopinterface261
    GetColorfunction266
    GetOffsetfunction264
    SetColorprocedure267
    SetOffsetprocedure265
    Colorproperty272
    Offsetproperty270
    ILinearGradientBrushinterface292
    GetAfunction295
    GetBfunction297
    SetAprocedure296
    SetBprocedure298
    Aproperty301
    Bproperty303
    IMatrixinterface84
    Copyprocedure87, 89
    Identityprocedure91
    Inversefunction93
    Multiplyfunction113, 117
    Popprocedure121
    Pushprocedure119
    Rotateprocedure97
    RotateAtprocedure99
    Scaleprocedure101
    ScaleAtprocedure103
    SkewXprocedure105
    SkewYprocedure107
    Transformprocedure109
    Translateprocedure95
    IPeninterface211
    GetBrushfunction216
    GetColorfunction214
    GetLineCapfunction222
    GetLineJoinfunction224
    GetMiterLimitfunction220
    GetWidthfunction218
    SetBrushprocedure217
    SetColorprocedure215
    SetLineCapprocedure223
    SetLineJoinprocedure225
    SetMiterLimitprocedure221
    SetWidthprocedure219
    Brushproperty230
    Colorproperty228
    LineCapproperty236
    LineJoinproperty238
    MiterLimitproperty234
    Widthproperty232
    IRadialGradientBrushinterface309
    GetRectfunction312
    SetRectprocedure313
    Rectproperty316
    IRenderBitmapinterface155
    Bindprocedure158
    Resizeprocedure162
    Unbindprocedure160
    IResourceStoreinterface471
    DisposeBitmapprocedure492
    LoadBitmapfunction482, 486, 488
    LoadBitmapResourcefunction490
    LoadFontfunction495, 498, 500
    LoadFontResourcefunction502
    NewBitmapfunction479
    NewTextWriterfunction474, 476
    ISolidBrushinterface249
    GetColorfunction252
    SetColorprocedure253
    Colorproperty256
    ISpriteinterface376
    GetBitmapfunction379
    GetCellfunction385
    GetColsfunction381
    GetOpacityfunction395
    GetPivotfunction387
    GetPositionfunction389
    GetRotationfunction391
    GetRowsfunction383
    GetScalefunction393
    SetBitmapprocedure380
    SetCellprocedure386
    SetColsprocedure382
    SetOpacityprocedure396
    SetPivotprocedure388
    SetPositionprocedure390
    SetRotationprocedure392
    SetRowsprocedure384
    SetScaleprocedure394
    Bitmapproperty399
    Cellproperty407
    Colsproperty401
    Opacityproperty418
    Pivotproperty410
    Positionproperty412
    Rotationproperty414
    Rowsproperty403
    Scaleproperty416
    ITextWriterinterface442
    GetShadowfunction444
    Indentprocedure449
    NewLineprocedure453
    NewPageprocedure451
    Paperprocedure447
    SetShadowprocedure445
    Writeprocedure455
    WriteAtprocedure461
    WriteColumnprocedure457
    WriteLineprocedure459
    Shadowproperty463
    MatrixCreatedvariable31
    MatrixDestroyedvariable32
    MatrixPushPopvariable30
    NewBrushfunction640, 641, 642, 643, 644
    NewCanvasfunction648
    NewColorBfunction630
    NewColorFfunction631
    NewHSLfunction632
    NewMatrixfunction637
    NewPenfunction638, 639
    NewPointFfunction633
    NewRectFfunction634, 635
    NewSpritefunction646
    PointZeroconstant653
    RectEmptyconstant654
    TBlendModeenum79
    blendAlphaenum value79
    blendAdditiveenum value79
    blendSubtractiveenum value79
    blendLightenenum value80
    blendDarkenenum value80
    blendInvertenum value80
    blendNegativeenum value80
    TFillRuleenum75
    fillWindingenum value75
    fillNonZeroenum value75
    fillEvenOddenum value75
    TFontAlignenum63
    fontLeftenum value63
    fontCenterenum value63
    fontRightenum value63
    TFontLayoutenum65
    fontTopenum value65
    fontMiddleenum value65
    fontBaselineenum value65
    fontBottomenum value65
    TLineCapenum61
    capButtenum value61
    capSquareenum value61
    capRoundenum value61
    TLineJoinenum59
    joinMiterenum value59
    joinBevelenum value59
    joinRoundenum value59
    TTextLayoutenum424
    textLeftenum value426
    textTopenum value428
    textRightenum value430
    textBottomenum value432
    textMiddleLeftenum value434
    textMiddleenum value436
    textMiddleRightenum value438
    textMemoenum value440
    TWindingenum67
    windCCWenum value67
    windCWenum value67