Generated from maintained public declarations by generate_canvas.py . Usage and ownership , format profiles , fonts/text .
Signatures below are reference notation. Opaque fields are deliberately omitted. basic api supplies the compiler-checked callable catalog.
core
ERROR CanvasError
Message AS STRING
Offset AS INTEGER=-1
Format AS STRING=""
END ERROR
TYPE Color
Red AS BYTE=BYTE(0)
Green AS BYTE=BYTE(0)
Blue AS BYTE=BYTE(0)
Alpha AS BYTE=BYTE(255)
END TYPE
TYPE Point
X AS DOUBLE
Y AS DOUBLE
END TYPE
TYPE PixelRect
X AS INTEGER
Y AS INTEGER
Width AS INTEGER
Height AS INTEGER
END TYPE
OPAQUE TYPE Canvas
ENUM BlendMode
SourceOver
Copy
Destination
ClearDestination
DestinationOver
SourceIn
SourceOut
SourceAtop
DestinationIn
DestinationOut
DestinationAtop
ExclusiveOr
PlusLighter
Multiply
Screen
Overlay
Darken
Lighten
ColorDodge
ColorBurn
HardLight
SoftLight
Difference
Exclusion
END ENUM
ENUM BlendSpace
EncodedSRGB
LinearLight
END ENUM
ENUM Sampling
Nearest
Bilinear
Area
Bicubic
Lanczos3
END ENUM
ENUM Antialiasing
Off
Standard
High
END ENUM
ENUM LineCap
Butt
Round
Square
END ENUM
TYPE Stroke
Color AS Color
Width AS DOUBLE=1.0
Cap AS LineCap=LineCap.Butt
Join AS LineJoin=LineJoin.Round
MiterLimit AS DOUBLE=4.0
Antialias AS Antialiasing=Antialiasing.Standard
END TYPE
FUNCTION RGBA(red AS INTEGER,green AS INTEGER,blue AS INTEGER,alpha AS INTEGER=255) AS Color FAILS CanvasError,NumericError
FUNCTION RGB(red AS INTEGER,green AS INTEGER,blue AS INTEGER) AS Color FAILS CanvasError,NumericError
FUNCTION Transparent() AS Color
FUNCTION NewCanvas(width AS INTEGER,height AS INTEGER,maxPixels AS INTEGER=16777216) AS Canvas FAILS CanvasError,NumericError,IndexError
FUNCTION CanvasFromRGBA(width AS INTEGER,height AS INTEGER,BYVAL pixels AS LIST OF BYTE,maxPixels AS INTEGER=16777216) AS Canvas FAILS CanvasError,NumericError,IndexError
FUNCTION CanvasWidth(canvas AS Canvas) AS INTEGER
FUNCTION CanvasHeight(canvas AS Canvas) AS INTEGER
FUNCTION CanvasBytes(canvas AS Canvas) AS LIST OF BYTE
FUNCTION CloneCanvas(canvas AS Canvas) AS Canvas
FUNCTION GetPixel(canvas AS Canvas,x AS INTEGER,y AS INTEGER) AS Color FAILS CanvasError,IndexError,NumericError
SUB SetPixel(BYREF canvas AS Canvas,x AS INTEGER,y AS INTEGER,color AS Color) FAILS CanvasError,IndexError,NumericError
SUB ClearCanvas(BYREF canvas AS Canvas,color AS Color) FAILS IndexError
FUNCTION CompositeColor(source AS Color,destination AS Color,opacity AS DOUBLE=1.0,mode AS BlendMode=BlendMode.SourceOver,space AS BlendSpace=BlendSpace.EncodedSRGB) AS Color FAILS CanvasError,NumericError
geometry
FUNCTION SamplePixel(canvas AS Canvas,x AS DOUBLE,y AS DOUBLE,sampling AS Sampling=Sampling.Bilinear,space AS BlendSpace=BlendSpace.EncodedSRGB) AS Color FAILS CanvasError,IndexError,NumericError
FUNCTION ResizeCanvas(canvas AS Canvas,width AS INTEGER,height AS INTEGER,sampling AS Sampling=Sampling.Bilinear,space AS BlendSpace=BlendSpace.EncodedSRGB,maxPixels AS INTEGER=16777216,maxWorkingBytes AS INTEGER=268435456) AS Canvas FAILS CanvasError,IndexError,NumericError
FUNCTION CropCanvas(canvas AS Canvas,region AS PixelRect) AS Canvas FAILS CanvasError,IndexError,NumericError
FUNCTION FlipCanvas(canvas AS Canvas,horizontal AS BOOLEAN=TRUE,vertical AS BOOLEAN=FALSE) AS Canvas FAILS CanvasError,IndexError,NumericError
FUNCTION TransposeCanvas(canvas AS Canvas) AS Canvas FAILS CanvasError,IndexError,NumericError
FUNCTION RotateCanvas90(canvas AS Canvas,clockwiseTurns AS INTEGER=1) AS Canvas FAILS CanvasError,IndexError,NumericError
FUNCTION Thumbnail(canvas AS Canvas,maxWidth AS INTEGER,maxHeight AS INTEGER,allowUpscale AS BOOLEAN=FALSE,sampling AS Sampling=Sampling.Bilinear) AS Canvas FAILS CanvasError,IndexError,NumericError
SUB DrawImage(BYREF destination AS Canvas,source AS Canvas,x AS INTEGER,y AS INTEGER,opacity AS DOUBLE=1.0,mode AS BlendMode=BlendMode.SourceOver,space AS BlendSpace=BlendSpace.EncodedSRGB) FAILS CanvasError,IndexError,NumericError
SUB CopyWithinCanvas(BYREF canvas AS Canvas,source AS PixelRect,x AS INTEGER,y AS INTEGER,opacity AS DOUBLE=1.0,mode AS BlendMode=BlendMode.Copy) FAILS CanvasError,IndexError,NumericError
affine
TYPE AffineTransform
XX AS DOUBLE=1.0
XY AS DOUBLE=0.0
YX AS DOUBLE=0.0
YY AS DOUBLE=1.0
X AS DOUBLE=0.0
Y AS DOUBLE=0.0
END TYPE
ENUM ImageFit
Contain
Cover
Stretch
END ENUM
FUNCTION IdentityTransform() AS AffineTransform
FUNCTION TranslationTransform(x AS DOUBLE,y AS DOUBLE) AS AffineTransform FAILS CanvasError
FUNCTION ScalingTransform(x AS DOUBLE,y AS DOUBLE) AS AffineTransform FAILS CanvasError
FUNCTION RotationTransform(degrees AS DOUBLE) AS AffineTransform FAILS CanvasError
FUNCTION TransformPoint(transform AS AffineTransform,point AS Point) AS Point FAILS CanvasError
FUNCTION ComposeTransforms(first AS AffineTransform,after AS AffineTransform) AS AffineTransform FAILS CanvasError
FUNCTION InvertTransform(transform AS AffineTransform) AS AffineTransform FAILS CanvasError
FUNCTION WarpCanvas(source AS Canvas,transform AS AffineTransform,width AS INTEGER,height AS INTEGER,sampling AS Sampling=Sampling.Bilinear,space AS BlendSpace=BlendSpace.EncodedSRGB,maxPixels AS INTEGER=16777216) AS Canvas FAILS CanvasError,IndexError,NumericError
FUNCTION RotateCanvas(source AS Canvas,degrees AS DOUBLE,expand AS BOOLEAN=TRUE,sampling AS Sampling=Sampling.Bilinear,space AS BlendSpace=BlendSpace.EncodedSRGB,maxPixels AS INTEGER=16777216) AS Canvas FAILS CanvasError,IndexError,NumericError
FUNCTION FitCanvas(source AS Canvas,width AS INTEGER,height AS INTEGER,fit AS ImageFit=ImageFit.Contain,sampling AS Sampling=Sampling.Bilinear,space AS BlendSpace=BlendSpace.EncodedSRGB,maxPixels AS INTEGER=16777216) AS Canvas FAILS CanvasError,IndexError,NumericError
drawing
SUB FillRect(BYREF canvas AS Canvas,x AS DOUBLE,y AS DOUBLE,width AS DOUBLE,height AS DOUBLE,color AS Color,aa AS Antialiasing=Antialiasing.Standard,mode AS BlendMode=BlendMode.SourceOver,space AS BlendSpace=BlendSpace.EncodedSRGB) FAILS CanvasError,IndexError,NumericError
SUB FillRoundedRect(BYREF canvas AS Canvas,x AS DOUBLE,y AS DOUBLE,width AS DOUBLE,height AS DOUBLE,radius AS DOUBLE,color AS Color,aa AS Antialiasing=Antialiasing.Standard) FAILS CanvasError,IndexError,NumericError
SUB FillEllipse(BYREF canvas AS Canvas,cx AS DOUBLE,cy AS DOUBLE,rx AS DOUBLE,ry AS DOUBLE,color AS Color,aa AS Antialiasing=Antialiasing.Standard) FAILS CanvasError,IndexError,NumericError
SUB FillCircle(BYREF canvas AS Canvas,cx AS DOUBLE,cy AS DOUBLE,radius AS DOUBLE,color AS Color,aa AS Antialiasing=Antialiasing.Standard) FAILS CanvasError,IndexError,NumericError
SUB DrawPolyline(BYREF canvas AS Canvas,points AS LIST OF Point,stroke AS Stroke,closed AS BOOLEAN=FALSE) FAILS CanvasError,IndexError,NumericError
SUB DrawLine(BYREF canvas AS Canvas,x0 AS DOUBLE,y0 AS DOUBLE,x1 AS DOUBLE,y1 AS DOUBLE,stroke AS Stroke) FAILS CanvasError,IndexError,NumericError
SUB DrawRect(BYREF canvas AS Canvas,x AS DOUBLE,y AS DOUBLE,width AS DOUBLE,height AS DOUBLE,stroke AS Stroke) FAILS CanvasError,IndexError,NumericError
SUB DrawCircle(BYREF canvas AS Canvas,cx AS DOUBLE,cy AS DOUBLE,radius AS DOUBLE,stroke AS Stroke) FAILS CanvasError,IndexError,NumericError
SUB DrawEllipse(BYREF canvas AS Canvas,cx AS DOUBLE,cy AS DOUBLE,rx AS DOUBLE,ry AS DOUBLE,stroke AS Stroke) FAILS CanvasError,IndexError,NumericError
SUB FillPolygon(BYREF canvas AS Canvas,points AS LIST OF Point,color AS Color,aa AS Antialiasing=Antialiasing.Standard) FAILS CanvasError,IndexError,NumericError
raster
ENUM FillRule
NonZero
EvenOdd
END ENUM
analysis
TYPE ColorHistogram
Red AS LIST OF INTEGER
Green AS LIST OF INTEGER
Blue AS LIST OF INTEGER
Alpha AS LIST OF INTEGER
END TYPE
FUNCTION Histogram(canvas AS Canvas) AS ColorHistogram FAILS IndexError
FUNCTION AverageColor(canvas AS Canvas,alphaWeighted AS BOOLEAN=FALSE) AS Color FAILS CanvasError,IndexError,NumericError
FUNCTION AlphaBounds(canvas AS Canvas,threshold AS INTEGER=0) AS OPTIONAL OF PixelRect FAILS CanvasError,IndexError,NumericError
FUNCTION AdjustedCanvas(canvas AS Canvas,brightness AS DOUBLE=1.0,contrast AS DOUBLE=1.0,saturation AS DOUBLE=1.0,gamma AS DOUBLE=1.0) AS Canvas FAILS CanvasError,IndexError,NumericError
FUNCTION GrayscaleCanvas(canvas AS Canvas) AS Canvas FAILS CanvasError,IndexError,NumericError
FUNCTION InvertedCanvas(canvas AS Canvas) AS Canvas FAILS IndexError,NumericError
FUNCTION MaskedCanvas(canvas AS Canvas,mask AS Canvas,selectedChannel AS MaskChannel=MaskChannel.Alpha,inverted AS BOOLEAN=FALSE,space AS BlendSpace=BlendSpace.EncodedSRGB) AS Canvas FAILS CanvasError,IndexError,NumericError
ENUM MaskChannel
Alpha
Red
Green
Blue
Luminance
END ENUM
TYPE ChannelStatistics
Count AS INTEGER
Minimum AS INTEGER
Maximum AS INTEGER
Mean AS DOUBLE
Variance AS DOUBLE
StandardDeviation AS DOUBLE
END TYPE
TYPE ImageStatistics
Red AS ChannelStatistics
Green AS ChannelStatistics
Blue AS ChannelStatistics
Alpha AS ChannelStatistics
END TYPE
FUNCTION HistogramRegion(canvas AS Canvas,region AS PixelRect) AS ColorHistogram FAILS CanvasError,IndexError
FUNCTION AnalyzeCanvasRegion(canvas AS Canvas,region AS PixelRect) AS ImageStatistics FAILS CanvasError,IndexError
FUNCTION AnalyzeCanvas(canvas AS Canvas) AS ImageStatistics FAILS CanvasError,IndexError
FUNCTION ColorBounds(canvas AS Canvas,minimum AS Color,maximum AS Color) AS OPTIONAL OF PixelRect FAILS CanvasError,IndexError
filters
FUNCTION GaussianBlurCanvas(canvas AS Canvas,sigma AS DOUBLE) AS Canvas FAILS CanvasError,IndexError,NumericError
FUNCTION BoxBlurCanvas(canvas AS Canvas,radius AS INTEGER=1) AS Canvas FAILS CanvasError,IndexError,NumericError
FUNCTION ConvolveCanvas3x3(canvas AS Canvas,kernel AS LIST OF DOUBLE,divisor AS DOUBLE=1.0,bias AS DOUBLE=0.0) AS Canvas FAILS CanvasError,IndexError,NumericError
FUNCTION SharpenCanvas(canvas AS Canvas) AS Canvas FAILS CanvasError,IndexError,NumericError
FUNCTION EdgeCanvas(canvas AS Canvas) AS Canvas FAILS CanvasError,IndexError,NumericError
FUNCTION EmbossCanvas(canvas AS Canvas) AS Canvas FAILS CanvasError,IndexError,NumericError
text
FUNCTION MeasureBitmapText(text AS STRING,scale AS INTEGER=1) AS PixelRect FAILS CanvasError
SUB DrawBitmapText(BYREF canvas AS Canvas,text AS STRING,x AS INTEGER,y AS INTEGER,color AS Color,scale AS INTEGER=1,strictGlyphs AS BOOLEAN=FALSE) FAILS CanvasError,IndexError,NumericError
fonts
OPAQUE TYPE Font
ENUM TextAlignment
Left
Center
Right
END ENUM
ENUM TextAnchor
Baseline
Top
END ENUM
TYPE TextStyle
Color AS Color
Size AS DOUBLE=24.0
Alignment AS TextAlignment=TextAlignment.Left
Anchor AS TextAnchor=TextAnchor.Baseline
Antialias AS Antialiasing=Antialiasing.Standard
StrictGlyphs AS BOOLEAN=FALSE
Kerning AS BOOLEAN=TRUE
END TYPE
TYPE FontMetrics
Ascent AS DOUBLE
Descent AS DOUBLE
LineGap AS DOUBLE
LineHeight AS DOUBLE
END TYPE
TYPE TextMetrics
Advance AS DOUBLE
Ascent AS DOUBLE
Descent AS DOUBLE
InkX AS DOUBLE
InkY AS DOUBLE
InkWidth AS DOUBLE
InkHeight AS DOUBLE
END TYPE
FUNCTION FontFaceCount(bytes AS LIST OF BYTE) AS INTEGER FAILS CanvasError,IndexError
FUNCTION LoadFontBytes(BYVAL bytes AS LIST OF BYTE,maxBytes AS INTEGER=33554432,faceIndex AS INTEGER=0) AS Font FAILS CanvasError,IndexError,NumericError
FUNCTION LoadFont(path AS STRING,maxBytes AS INTEGER=33554432,faceIndex AS INTEGER=0) AS Font FAILS CanvasError,IndexError,NumericError,IoError
FUNCTION FontHasGlyph(font AS Font,scalar AS INTEGER) AS BOOLEAN FAILS CanvasError,IndexError
FUNCTION GetFontMetrics(font AS Font,size AS DOUBLE) AS FontMetrics FAILS CanvasError
FUNCTION MeasureText(font AS Font,text AS STRING,size AS DOUBLE=24.0,strictGlyphs AS BOOLEAN=FALSE,kerning AS BOOLEAN=TRUE) AS TextMetrics FAILS CanvasError,IndexError
SUB DrawText(BYREF canvas AS Canvas,font AS Font,text AS STRING,x AS DOUBLE,y AS DOUBLE,style AS TextStyle) FAILS CanvasError,IndexError,NumericError
font_kerning
FUNCTION GetKerning(font AS Font,leftScalar AS INTEGER,rightScalar AS INTEGER,size AS DOUBLE=24.0) AS DOUBLE FAILS CanvasError,IndexError
text_graphemes
FUNCTION GraphemeBoundaries(text AS STRING) AS LIST OF INTEGER FAILS CanvasError,IndexError
text_bidi
ENUM TextDirection
Auto
LeftToRight
RightToLeft
END ENUM
FUNCTION ResolveBidiLevels(text AS STRING,direction AS TextDirection=TextDirection.Auto) AS LIST OF INTEGER FAILS CanvasError,IndexError,NumericError
FUNCTION BidiVisualOrder(levels AS LIST OF INTEGER) AS LIST OF INTEGER FAILS CanvasError,IndexError
font_set
OPAQUE TYPE FontSet
FUNCTION NewFontSet() AS FontSet
SUB AddFont(BYREF fonts AS FontSet,BYVAL font AS Font) FAILS CanvasError
SUB AddFontFile(BYREF fonts AS FontSet,path AS STRING,maxBytes AS INTEGER=33554432,faceIndex AS INTEGER=0) FAILS CanvasError,IndexError,NumericError,IoError
FUNCTION FontSetCount(fonts AS FontSet) AS INTEGER
FUNCTION FontSetHasGlyph(fonts AS FontSet,scalar AS INTEGER) AS BOOLEAN FAILS CanvasError,IndexError
font_catalog
TYPE FontInfo
Path AS STRING
Family AS STRING
Style AS STRING
Weight AS INTEGER
Italic AS BOOLEAN
FaceIndex AS INTEGER
OutlineFormat AS STRING
Supported AS BOOLEAN
END TYPE
TYPE FontMatch
Info AS FontInfo
Substituted AS BOOLEAN
END TYPE
OPAQUE TYPE FontCatalog
FUNCTION ReadFontInfo(path AS STRING,maxBytes AS INTEGER=33554432,faceIndex AS INTEGER=0) AS FontInfo FAILS CanvasError,IndexError,NumericError,StringError,IoError
FUNCTION DiscoverFonts(directories AS LIST OF STRING,maxFiles AS INTEGER=10000,maxFontBytes AS INTEGER=33554432) AS FontCatalog FAILS CanvasError,IndexError,NumericError,StringError
FUNCTION FontCatalogCount(catalog AS FontCatalog) AS INTEGER
FUNCTION FontCatalogEntry(catalog AS FontCatalog,index AS INTEGER) AS FontInfo FAILS CanvasError,IndexError
FUNCTION FontDiscoveryWarnings(catalog AS FontCatalog) AS LIST OF STRING
FUNCTION FindFont(catalog AS FontCatalog,family AS STRING,weight AS INTEGER=400,italic AS BOOLEAN=FALSE,allowSubstitution AS BOOLEAN=FALSE) AS FontMatch FAILS CanvasError,IndexError,NumericError,StringError
FUNCTION ReadFontFaceCount(path AS STRING,maxBytes AS INTEGER=33554432) AS INTEGER FAILS CanvasError,IndexError,NumericError,IoError
platform/linux_fonts
FUNCTION DiscoverSystemFonts(maxFiles AS INTEGER=10000) AS FontCatalog FAILS CanvasError,IndexError,NumericError,StringError
text_layout
ENUM TextWrap
None
Word
Grapheme
END ENUM
TYPE TextLayoutOptions
Size AS DOUBLE=24.0
Direction AS TextDirection=TextDirection.Auto
MaxWidth AS DOUBLE=0.0
Wrap AS TextWrap=TextWrap.Word
Alignment AS TextAlignment=TextAlignment.Left
LineSpacing AS DOUBLE=1.0
TabSpaces AS INTEGER=4
Kerning AS BOOLEAN=TRUE
StrictGlyphs AS BOOLEAN=FALSE
MaxOutlineEdges AS INTEGER=1048576
END TYPE
TYPE TextLine
ScalarStart AS INTEGER
ScalarCount AS INTEGER
X AS DOUBLE
Baseline AS DOUBLE
Width AS DOUBLE
Height AS DOUBLE
Ascent AS DOUBLE
Descent AS DOUBLE
END TYPE
TYPE TextGlyphInfo
Glyph AS INTEGER
FontIndex AS INTEGER
ScalarStart AS INTEGER
ScalarCount AS INTEGER
X AS DOUBLE
Baseline AS DOUBLE
Advance AS DOUBLE
RightToLeft AS BOOLEAN=FALSE
END TYPE
OPAQUE TYPE TextLayout
FUNCTION TextLayoutWidth(layout AS TextLayout) AS DOUBLE
FUNCTION TextLayoutHeight(layout AS TextLayout) AS DOUBLE
FUNCTION TextLayoutLineCount(layout AS TextLayout) AS INTEGER
FUNCTION TextLayoutLine(layout AS TextLayout,index AS INTEGER) AS TextLine FAILS CanvasError,IndexError
FUNCTION TextLayoutGlyphCount(layout AS TextLayout) AS INTEGER
FUNCTION TextLayoutGlyph(layout AS TextLayout,index AS INTEGER) AS TextGlyphInfo FAILS CanvasError,IndexError
SUB DrawTextLayout(BYREF canvas AS Canvas,layout AS TextLayout,x AS DOUBLE,y AS DOUBLE,color AS Color,aa AS Antialiasing=Antialiasing.Standard,mode AS BlendMode=BlendMode.SourceOver,space AS BlendSpace=BlendSpace.EncodedSRGB) FAILS CanvasError,IndexError,NumericError
TYPE TextHit
ScalarIndex AS INTEGER
Trailing AS BOOLEAN
Inside AS BOOLEAN
Line AS INTEGER
END TYPE
TYPE TextInkBounds
X AS DOUBLE
Y AS DOUBLE
Width AS DOUBLE
Height AS DOUBLE
END TYPE
FUNCTION TextLayoutInkBounds(layout AS TextLayout) AS OPTIONAL OF TextInkBounds FAILS IndexError
FUNCTION HitTestTextLayout(layout AS TextLayout,x AS DOUBLE,y AS DOUBLE) AS TextHit FAILS CanvasError,IndexError
FUNCTION CreateTextLayout(fonts AS FontSet,text AS STRING,options AS TextLayoutOptions) AS TextLayout FAILS CanvasError,IndexError,NumericError
FUNCTION CreateTextLayout(font AS Font,text AS STRING,options AS TextLayoutOptions) AS TextLayout FAILS CanvasError,IndexError,NumericError
paths
OPAQUE TYPE CanvasPath
FUNCTION NewPath() AS CanvasPath
FUNCTION ClonePath(path AS CanvasPath) AS CanvasPath
SUB MoveTo(BYREF path AS CanvasPath,x AS DOUBLE,y AS DOUBLE) FAILS CanvasError
SUB LineTo(BYREF path AS CanvasPath,x AS DOUBLE,y AS DOUBLE) FAILS CanvasError
SUB QuadraticTo(BYREF path AS CanvasPath,controlX AS DOUBLE,controlY AS DOUBLE,x AS DOUBLE,y AS DOUBLE) FAILS CanvasError
SUB CubicTo(BYREF path AS CanvasPath,firstX AS DOUBLE,firstY AS DOUBLE,secondX AS DOUBLE,secondY AS DOUBLE,x AS DOUBLE,y AS DOUBLE) FAILS CanvasError
SUB ClosePath(BYREF path AS CanvasPath) FAILS CanvasError
FUNCTION TransformPath(path AS CanvasPath,transform AS AffineTransform) AS CanvasPath FAILS CanvasError,IndexError
SUB FillPath(BYREF canvas AS Canvas,path AS CanvasPath,color AS Color,rule AS FillRule=FillRule.NonZero,aa AS Antialiasing=Antialiasing.Standard,mode AS BlendMode=BlendMode.SourceOver,space AS BlendSpace=BlendSpace.EncodedSRGB) FAILS CanvasError,IndexError,NumericError
FUNCTION CreatePathMask(path AS CanvasPath,width AS INTEGER,height AS INTEGER,rule AS FillRule=FillRule.NonZero,aa AS Antialiasing=Antialiasing.Standard,maxPixels AS INTEGER=16777216) AS Canvas FAILS CanvasError,IndexError,NumericError
path_stroke
ENUM LineJoin
Round
Bevel
Miter
END ENUM
SUB DrawPath(BYREF canvas AS Canvas,path AS CanvasPath,stroke AS Stroke,mode AS BlendMode=BlendMode.SourceOver,space AS BlendSpace=BlendSpace.EncodedSRGB) FAILS CanvasError,IndexError,NumericError
SUB DrawRoundedRect(BYREF canvas AS Canvas,x AS DOUBLE,y AS DOUBLE,width AS DOUBLE,height AS DOUBLE,radius AS DOUBLE,stroke AS Stroke) FAILS CanvasError,IndexError,NumericError
SUB DrawDashedPath(BYREF canvas AS Canvas,path AS CanvasPath,stroke AS Stroke,dashes AS LIST OF DOUBLE,dashOffset AS DOUBLE=0.0,mode AS BlendMode=BlendMode.SourceOver,space AS BlendSpace=BlendSpace.EncodedSRGB) FAILS CanvasError,IndexError,NumericError
SUB DrawDashedPolyline(BYREF canvas AS Canvas,points AS LIST OF Point,stroke AS Stroke,dashes AS LIST OF DOUBLE,dashOffset AS DOUBLE=0.0,closed AS BOOLEAN=FALSE) FAILS CanvasError,IndexError,NumericError
png
ENUM PNGFilter
Adaptive
Unfiltered
Subtract
Up
Average
Paeth
END ENUM
FUNCTION DecodePNG(data AS LIST OF BYTE,maxPixels AS INTEGER=16777216,maxEncodedBytes AS INTEGER=67108864) AS Canvas FAILS CanvasError,IndexError,NumericError,StringError
FUNCTION EncodePNG(canvas AS Canvas,level AS INTEGER=1,filter AS PNGFilter=PNGFilter.Adaptive,maxEncodedBytes AS INTEGER=67108864) AS LIST OF BYTE FAILS CanvasError,IndexError,NumericError,StringError
jpeg
FUNCTION DecodeJPEG(bytes AS LIST OF BYTE,maxPixels AS INTEGER=16777216,maxEncodedBytes AS INTEGER=67108864,maxWorkingBytes AS INTEGER=268435456) AS Canvas FAILS CanvasError,IndexError,NumericError
FUNCTION EncodeJPEG(canvas AS Canvas,quality AS INTEGER=90,grayscale AS BOOLEAN=FALSE,maxEncodedBytes AS INTEGER=67108864) AS LIST OF BYTE FAILS CanvasError,IndexError,NumericError
FUNCTION EncodeJPEGOnBackground(canvas AS Canvas,background AS Color,quality AS INTEGER=90,grayscale AS BOOLEAN=FALSE,maxEncodedBytes AS INTEGER=67108864) AS LIST OF BYTE FAILS CanvasError,IndexError,NumericError
animation
OPAQUE TYPE Animation
FUNCTION NewAnimation(width AS INTEGER,height AS INTEGER,plays AS INTEGER=1,maxDecodedBytes AS INTEGER=268435456) AS Animation FAILS CanvasError
FUNCTION AnimationWidth(animation AS Animation) AS INTEGER
FUNCTION AnimationHeight(animation AS Animation) AS INTEGER
FUNCTION AnimationFrameCount(animation AS Animation) AS INTEGER
FUNCTION AnimationPlays(animation AS Animation) AS INTEGER
FUNCTION AnimationFrame(animation AS Animation,index AS INTEGER) AS Canvas FAILS CanvasError,IndexError
FUNCTION AnimationDelayNumerator(animation AS Animation,index AS INTEGER) AS INTEGER FAILS CanvasError,IndexError
FUNCTION AnimationDelayDenominator(animation AS Animation,index AS INTEGER) AS INTEGER FAILS CanvasError,IndexError
FUNCTION AnimationFrameDelay(animation AS Animation,index AS INTEGER) AS Duration FAILS CanvasError,IndexError
SUB AppendAnimationFrame(BYREF animation AS Animation,canvas AS Canvas,delayNumerator AS INTEGER,delayDenominator AS INTEGER=1000) FAILS CanvasError
SUB DrawAnimationFrame(BYREF canvas AS Canvas,animation AS Animation,index AS INTEGER,x AS INTEGER=0,y AS INTEGER=0,opacity AS DOUBLE=1.0,mode AS BlendMode=BlendMode.SourceOver,space AS BlendSpace=BlendSpace.EncodedSRGB) FAILS CanvasError,IndexError,NumericError
gif
FUNCTION DecodeGIF(bytes AS LIST OF BYTE,maxPixels AS INTEGER=16777216,maxFrames AS INTEGER=1000,maxDecodedBytes AS INTEGER=268435456,maxEncodedBytes AS INTEGER=67108864) AS Animation FAILS CanvasError,IndexError,NumericError,StringError
gif_encode
FUNCTION EncodeGIFAnimation(animation AS Animation,quantize AS BOOLEAN=TRUE,maxEncodedBytes AS INTEGER=67108864) AS LIST OF BYTE FAILS CanvasError,IndexError,NumericError
FUNCTION EncodeGIF(canvas AS Canvas,quantize AS BOOLEAN=TRUE,maxEncodedBytes AS INTEGER=67108864) AS LIST OF BYTE FAILS CanvasError,IndexError,NumericError
FUNCTION FlattenCanvas(canvas AS Canvas,background AS Color,space AS BlendSpace=BlendSpace.EncodedSRGB) AS Canvas FAILS CanvasError,IndexError,NumericError
apng
FUNCTION DecodeAPNG(bytes AS LIST OF BYTE,maxPixels AS INTEGER=16777216,maxFrames AS INTEGER=1000,maxDecodedBytes AS INTEGER=268435456,maxEncodedBytes AS INTEGER=67108864) AS Animation FAILS CanvasError,IndexError,NumericError,StringError
FUNCTION EncodeAPNG(animation AS Animation,level AS INTEGER=6,maxEncodedBytes AS INTEGER=67108864) AS LIST OF BYTE FAILS CanvasError,IndexError,NumericError,StringError
vp8_output
FUNCTION DecodeVP8(bytes AS LIST OF BYTE,maxPixels AS INTEGER=16777216,maxWorkingBytes AS INTEGER=268435456) AS Canvas FAILS CanvasError,IndexError,NumericError
vp8l_decode
FUNCTION DecodeVP8L(bytes AS LIST OF BYTE,maxPixels AS INTEGER=16777216,maxWorkingBytes AS INTEGER=268435456) AS Canvas FAILS CanvasError,IndexError,NumericError
vp8l_compress
FUNCTION EncodeWebPLossless(canvas AS Canvas,maxEncodedBytes AS INTEGER=67108864,maxWorkingBytes AS INTEGER=268435456) AS LIST OF BYTE FAILS CanvasError,IndexError,NumericError
webp
FUNCTION DecodeWebPAnimation(bytes AS LIST OF BYTE,maxPixels AS INTEGER=16777216,maxFrames AS INTEGER=1000,maxDecodedBytes AS INTEGER=268435456,maxEncodedBytes AS INTEGER=67108864) AS Animation FAILS CanvasError,IndexError,NumericError,StringError
FUNCTION DecodeWebP(bytes AS LIST OF BYTE,maxPixels AS INTEGER=16777216,maxEncodedBytes AS INTEGER=67108864,maxWorkingBytes AS INTEGER=268435456) AS Canvas FAILS CanvasError,IndexError,NumericError,StringError
FUNCTION EncodeWebP(canvas AS Canvas,maxEncodedBytes AS INTEGER=67108864,maxWorkingBytes AS INTEGER=268435456) AS LIST OF BYTE FAILS CanvasError,IndexError,NumericError
FUNCTION EncodeWebPAnimation(animation AS Animation,maxEncodedBytes AS INTEGER=67108864,maxWorkingBytes AS INTEGER=268435456) AS LIST OF BYTE FAILS CanvasError,IndexError,NumericError
bmp
FUNCTION DecodeBMP(data AS LIST OF BYTE,maxPixels AS INTEGER=16777216,maxEncodedBytes AS INTEGER=67108864) AS Canvas FAILS CanvasError,IndexError,NumericError
FUNCTION EncodeBMP(canvas AS Canvas,maxEncodedBytes AS INTEGER=67108864) AS LIST OF BYTE FAILS CanvasError,IndexError,NumericError
ENUM ImageFormat
Auto
PNG
APNG
BMP
JPEG
GIF
WebP
AVIF
TIFF
END ENUM
FUNCTION CanEncodeImage(format AS ImageFormat) AS BOOLEAN
FUNCTION CanDecodeImage(format AS ImageFormat) AS BOOLEAN
FUNCTION DecodeImage(bytes AS LIST OF BYTE,maxPixels AS INTEGER=16777216,maxEncodedBytes AS INTEGER=67108864) AS Canvas FAILS CanvasError,IndexError,NumericError,StringError
FUNCTION EncodeImage(canvas AS Canvas,format AS ImageFormat=ImageFormat.PNG) AS LIST OF BYTE FAILS CanvasError,IndexError,NumericError,StringError
FUNCTION LoadImage(path AS STRING,maxPixels AS INTEGER=16777216,maxEncodedBytes AS INTEGER=67108864) AS Canvas FAILS CanvasError,IndexError,NumericError,StringError,IoError
SUB SaveImage(canvas AS Canvas,path AS STRING,format AS ImageFormat=ImageFormat.Auto) FAILS CanvasError,IndexError,NumericError,StringError,IoError
animation_io
FUNCTION CanDecodeAnimation(format AS ImageFormat) AS BOOLEAN
FUNCTION CanEncodeAnimation(format AS ImageFormat) AS BOOLEAN
FUNCTION DecodeAnimation(bytes AS LIST OF BYTE,maxPixels AS INTEGER=16777216,maxFrames AS INTEGER=1000,maxDecodedBytes AS INTEGER=268435456,maxEncodedBytes AS INTEGER=67108864) AS Animation FAILS CanvasError,IndexError,NumericError,StringError
FUNCTION EncodeAnimation(animation AS Animation,format AS ImageFormat=ImageFormat.APNG,maxEncodedBytes AS INTEGER=67108864) AS LIST OF BYTE FAILS CanvasError,IndexError,NumericError,StringError
FUNCTION LoadAnimation(path AS STRING,maxPixels AS INTEGER=16777216,maxFrames AS INTEGER=1000,maxDecodedBytes AS INTEGER=268435456,maxEncodedBytes AS INTEGER=67108864) AS Animation FAILS CanvasError,IndexError,NumericError,StringError,IoError
SUB SaveAnimation(animation AS Animation,path AS STRING,format AS ImageFormat=ImageFormat.Auto,maxEncodedBytes AS INTEGER=67108864) FAILS CanvasError,IndexError,NumericError,StringError,IoError