package vendor:sdl3/image
⌘K
Ctrl+K
or
/
Overview
Bindings for SDL3 Image.
Index
Constants (32)
- MAJOR_VERSION
- MINOR_VERSION
- PATCHLEVEL
- PROP_ANIMATION_DECODER_CREATE_AVIF_ALLOW_INCREMENTAL_BOOLEAN
- PROP_ANIMATION_DECODER_CREATE_AVIF_ALLOW_PROGRESSIVE_BOOLEAN
- PROP_ANIMATION_DECODER_CREATE_AVIF_MAX_THREADS_NUMBER
- PROP_ANIMATION_DECODER_CREATE_FILENAME_STRING
- PROP_ANIMATION_DECODER_CREATE_GIF_NUM_COLORS_NUMBER
- PROP_ANIMATION_DECODER_CREATE_GIF_TRANSPARENT_COLOR_INDEX_NUMBER
- PROP_ANIMATION_DECODER_CREATE_IOSTREAM_AUTOCLOSE_BOOLEAN
- PROP_ANIMATION_DECODER_CREATE_IOSTREAM_POINTER
- PROP_ANIMATION_DECODER_CREATE_TIMEBASE_DENOMINATOR_NUMBER
- PROP_ANIMATION_DECODER_CREATE_TIMEBASE_NUMERATOR_NUMBER
- PROP_ANIMATION_DECODER_CREATE_TYPE_STRING
- PROP_ANIMATION_ENCODER_CREATE_AVIF_KEYFRAME_INTERVAL_NUMBER
- PROP_ANIMATION_ENCODER_CREATE_AVIF_MAX_THREADS_NUMBER
- PROP_ANIMATION_ENCODER_CREATE_FILENAME_STRING
- PROP_ANIMATION_ENCODER_CREATE_GIF_USE_LUT_BOOLEAN
- PROP_ANIMATION_ENCODER_CREATE_IOSTREAM_AUTOCLOSE_BOOLEAN
- PROP_ANIMATION_ENCODER_CREATE_IOSTREAM_POINTER
- PROP_ANIMATION_ENCODER_CREATE_QUALITY_NUMBER
- PROP_ANIMATION_ENCODER_CREATE_TIMEBASE_DENOMINATOR_NUMBER
- PROP_ANIMATION_ENCODER_CREATE_TIMEBASE_NUMERATOR_NUMBER
- PROP_ANIMATION_ENCODER_CREATE_TYPE_STRING
- PROP_METADATA_AUTHOR_STRING
- PROP_METADATA_COPYRIGHT_STRING
- PROP_METADATA_CREATION_TIME_STRING
- PROP_METADATA_DESCRIPTION_STRING
- PROP_METADATA_FRAME_COUNT_NUMBER
- PROP_METADATA_IGNORE_PROPS_BOOLEAN
- PROP_METADATA_LOOP_COUNT_NUMBER
- PROP_METADATA_TITLE_STRING
Variables (0)
This section is empty.
Procedures (102)
- AddAnimationEncoderFrame
- CloseAnimationDecoder
- CloseAnimationEncoder
- CreateAnimatedCursor
- CreateAnimationDecoder
- CreateAnimationDecoderWithProperties
- CreateAnimationDecoder_IO
- CreateAnimationEncoder
- CreateAnimationEncoderWithProperties
- CreateAnimationEncoder_IO
- FreeAnimation
- GetAnimationDecoderFrame
- GetAnimationDecoderProperties
- GetAnimationDecoderStatus
- GetClipboardImage
- Load
- LoadANIAnimation_IO
- LoadAPNGAnimation_IO
- LoadAVIFAnimation_IO
- LoadAVIF_IO
- LoadAnimation
- LoadAnimationTyped_IO
- LoadAnimation_IO
- LoadBMP_IO
- LoadCUR_IO
- LoadGIFAnimation_IO
- LoadGIF_IO
- LoadGPUTexture
- LoadGPUTextureTyped_IO
- LoadGPUTexture_IO
- LoadICO_IO
- LoadJPG_IO
- LoadJXL_IO
- LoadLBM_IO
- LoadPCX_IO
- LoadPNG_IO
- LoadPNM_IO
- LoadQOI_IO
- LoadSVG_IO
- LoadSizedSVG_IO
- LoadTGA_IO
- LoadTIF_IO
- LoadTexture
- LoadTextureTyped_IO
- LoadTexture_IO
- LoadTyped_IO
- LoadWEBPAnimation_IO
- LoadWEBP_IO
- LoadXCF_IO
- LoadXPM_IO
- LoadXV_IO
- Load_IO
- ReadXPMFromArray
- ReadXPMFromArrayToRGB888
- ResetAnimationDecoder
- Save
- SaveANIAnimation_IO
- SaveAPNGAnimation_IO
- SaveAVIF
- SaveAVIFAnimation_IO
- SaveAVIF_IO
- SaveAnimation
- SaveAnimationTyped_IO
- SaveBMP
- SaveBMP_IO
- SaveCUR
- SaveCUR_IO
- SaveGIF
- SaveGIFAnimation_IO
- SaveGIF_IO
- SaveICO
- SaveICO_IO
- SaveJPG
- SaveJPG_IO
- SavePNG
- SavePNG_IO
- SaveTGA
- SaveTGA_IO
- SaveTyped_IO
- SaveWEBP
- SaveWEBPAnimation_IO
- SaveWEBP_IO
- Version
- isANI
- isAVIF
- isBMP
- isCUR
- isGIF
- isICO
- isJPG
- isJXL
- isLBM
- isPCX
- isPNG
- isPNM
- isQOI
- isSVG
- isTIF
- isWEBP
- isXCF
- isXPM
- isXV
Procedure Groups (0)
This section is empty.
Types
AnimationDecoder ¶
AnimationDecoder :: struct {}
Related Procedures With Parameters
Related Procedures With Returns
AnimationDecoderStatus ¶
AnimationDecoderStatus :: enum i32 { INVALID = -1, OK, FAILED, COMPLETE, }
Related Procedures With Returns
AnimationEncoder ¶
AnimationEncoder :: struct {}
Related Procedures With Parameters
Related Procedures With Returns
Constants
MAJOR_VERSION ¶
MAJOR_VERSION: int : 3
MINOR_VERSION ¶
MINOR_VERSION: int : 4
PATCHLEVEL ¶
PATCHLEVEL: int : 0
PROP_ANIMATION_DECODER_CREATE_AVIF_ALLOW_INCREMENTAL_BOOLEAN ¶
PROP_ANIMATION_DECODER_CREATE_AVIF_ALLOW_INCREMENTAL_BOOLEAN :: "SDL_image.animation_decoder.create.avif.allow_incremental"
PROP_ANIMATION_DECODER_CREATE_AVIF_ALLOW_PROGRESSIVE_BOOLEAN ¶
PROP_ANIMATION_DECODER_CREATE_AVIF_ALLOW_PROGRESSIVE_BOOLEAN :: "SDL_image.animation_decoder.create.avif.allow_progressive"
PROP_ANIMATION_DECODER_CREATE_AVIF_MAX_THREADS_NUMBER ¶
PROP_ANIMATION_DECODER_CREATE_AVIF_MAX_THREADS_NUMBER :: "SDL_image.animation_decoder.create.avif.max_threads"
PROP_ANIMATION_DECODER_CREATE_FILENAME_STRING ¶
PROP_ANIMATION_DECODER_CREATE_FILENAME_STRING :: "SDL_image.animation_decoder.create.filename"
PROP_ANIMATION_DECODER_CREATE_GIF_NUM_COLORS_NUMBER ¶
PROP_ANIMATION_DECODER_CREATE_GIF_NUM_COLORS_NUMBER :: "SDL_image.animation_encoder.create.gif.num_colors"
PROP_ANIMATION_DECODER_CREATE_GIF_TRANSPARENT_COLOR_INDEX_NUMBER ¶
PROP_ANIMATION_DECODER_CREATE_GIF_TRANSPARENT_COLOR_INDEX_NUMBER :: "SDL_image.animation_encoder.create.gif.transparent_color_index"
PROP_ANIMATION_DECODER_CREATE_IOSTREAM_AUTOCLOSE_BOOLEAN ¶
PROP_ANIMATION_DECODER_CREATE_IOSTREAM_AUTOCLOSE_BOOLEAN :: "SDL_image.animation_decoder.create.iostream.autoclose"
PROP_ANIMATION_DECODER_CREATE_IOSTREAM_POINTER ¶
PROP_ANIMATION_DECODER_CREATE_IOSTREAM_POINTER :: "SDL_image.animation_decoder.create.iostream"
PROP_ANIMATION_DECODER_CREATE_TIMEBASE_DENOMINATOR_NUMBER ¶
PROP_ANIMATION_DECODER_CREATE_TIMEBASE_DENOMINATOR_NUMBER :: "SDL_image.animation_decoder.create.timebase.denominator"
PROP_ANIMATION_DECODER_CREATE_TIMEBASE_NUMERATOR_NUMBER ¶
PROP_ANIMATION_DECODER_CREATE_TIMEBASE_NUMERATOR_NUMBER :: "SDL_image.animation_decoder.create.timebase.numerator"
PROP_ANIMATION_DECODER_CREATE_TYPE_STRING ¶
PROP_ANIMATION_DECODER_CREATE_TYPE_STRING :: "SDL_image.animation_decoder.create.type"
PROP_ANIMATION_ENCODER_CREATE_AVIF_KEYFRAME_INTERVAL_NUMBER ¶
PROP_ANIMATION_ENCODER_CREATE_AVIF_KEYFRAME_INTERVAL_NUMBER :: "SDL_image.animation_encoder.create.avif.keyframe_interval"
PROP_ANIMATION_ENCODER_CREATE_AVIF_MAX_THREADS_NUMBER ¶
PROP_ANIMATION_ENCODER_CREATE_AVIF_MAX_THREADS_NUMBER :: "SDL_image.animation_encoder.create.avif.max_threads"
PROP_ANIMATION_ENCODER_CREATE_FILENAME_STRING ¶
PROP_ANIMATION_ENCODER_CREATE_FILENAME_STRING :: "SDL_image.animation_encoder.create.filename"
PROP_ANIMATION_ENCODER_CREATE_GIF_USE_LUT_BOOLEAN ¶
PROP_ANIMATION_ENCODER_CREATE_GIF_USE_LUT_BOOLEAN :: "SDL_image.animation_encoder.create.gif.use_lut"
PROP_ANIMATION_ENCODER_CREATE_IOSTREAM_AUTOCLOSE_BOOLEAN ¶
PROP_ANIMATION_ENCODER_CREATE_IOSTREAM_AUTOCLOSE_BOOLEAN :: "SDL_image.animation_encoder.create.iostream.autoclose"
PROP_ANIMATION_ENCODER_CREATE_IOSTREAM_POINTER ¶
PROP_ANIMATION_ENCODER_CREATE_IOSTREAM_POINTER :: "SDL_image.animation_encoder.create.iostream"
PROP_ANIMATION_ENCODER_CREATE_QUALITY_NUMBER ¶
PROP_ANIMATION_ENCODER_CREATE_QUALITY_NUMBER :: "SDL_image.animation_encoder.create.quality"
PROP_ANIMATION_ENCODER_CREATE_TIMEBASE_DENOMINATOR_NUMBER ¶
PROP_ANIMATION_ENCODER_CREATE_TIMEBASE_DENOMINATOR_NUMBER :: "SDL_image.animation_encoder.create.timebase.denominator"
PROP_ANIMATION_ENCODER_CREATE_TIMEBASE_NUMERATOR_NUMBER ¶
PROP_ANIMATION_ENCODER_CREATE_TIMEBASE_NUMERATOR_NUMBER :: "SDL_image.animation_encoder.create.timebase.numerator"
PROP_ANIMATION_ENCODER_CREATE_TYPE_STRING ¶
PROP_ANIMATION_ENCODER_CREATE_TYPE_STRING :: "SDL_image.animation_encoder.create.type"
PROP_METADATA_AUTHOR_STRING ¶
PROP_METADATA_AUTHOR_STRING :: "SDL_image.metadata.author"
PROP_METADATA_COPYRIGHT_STRING ¶
PROP_METADATA_COPYRIGHT_STRING :: "SDL_image.metadata.copyright"
PROP_METADATA_CREATION_TIME_STRING ¶
PROP_METADATA_CREATION_TIME_STRING :: "SDL_image.metadata.creation_time"
PROP_METADATA_DESCRIPTION_STRING ¶
PROP_METADATA_DESCRIPTION_STRING :: "SDL_image.metadata.description"
PROP_METADATA_FRAME_COUNT_NUMBER ¶
PROP_METADATA_FRAME_COUNT_NUMBER :: "SDL_image.metadata.frame_count"
PROP_METADATA_IGNORE_PROPS_BOOLEAN ¶
PROP_METADATA_IGNORE_PROPS_BOOLEAN :: "SDL_image.metadata.ignore_props"
PROP_METADATA_LOOP_COUNT_NUMBER ¶
PROP_METADATA_LOOP_COUNT_NUMBER :: "SDL_image.metadata.loop_count"
PROP_METADATA_TITLE_STRING ¶
PROP_METADATA_TITLE_STRING :: "SDL_image.metadata.title"
Variables
This section is empty.
Procedures
AddAnimationEncoderFrame ¶
AddAnimationEncoderFrame :: proc "c" (encoder: ^AnimationEncoder, surface: ^sdl3.Surface, duration: u64) -> bool ---
CloseAnimationDecoder ¶
CloseAnimationDecoder :: proc "c" (decoder: ^AnimationDecoder) -> bool ---
CloseAnimationEncoder ¶
CloseAnimationEncoder :: proc "c" (encoder: ^AnimationEncoder) -> bool ---
CreateAnimationDecoder ¶
CreateAnimationDecoder :: proc "c" (file: cstring) -> ^AnimationDecoder ---
Animation decoder functions
CreateAnimationDecoderWithProperties ¶
CreateAnimationDecoderWithProperties :: proc "c" (props: sdl3.PropertiesID) -> ^AnimationDecoder ---
CreateAnimationDecoder_IO ¶
CreateAnimationDecoder_IO :: proc "c" (src: ^sdl3.IOStream, closeio: bool, type: cstring) -> ^AnimationDecoder ---
CreateAnimationEncoder ¶
CreateAnimationEncoder :: proc "c" (file: cstring) -> ^AnimationEncoder ---
Animation encoder functions
CreateAnimationEncoderWithProperties ¶
CreateAnimationEncoderWithProperties :: proc "c" (props: sdl3.PropertiesID) -> ^AnimationEncoder ---
CreateAnimationEncoder_IO ¶
CreateAnimationEncoder_IO :: proc "c" (dst: ^sdl3.IOStream, closeio: bool, type: cstring) -> ^AnimationEncoder ---
FreeAnimation ¶
FreeAnimation :: proc "c" (anim: ^Animation) ---
GetAnimationDecoderFrame ¶
GetAnimationDecoderFrame :: proc "c" (decoder: ^AnimationDecoder, frame: ^^sdl3.Surface, duration: ^u64) -> bool ---
GetAnimationDecoderProperties ¶
GetAnimationDecoderProperties :: proc "c" (decoder: ^AnimationDecoder) -> sdl3.PropertiesID ---
GetAnimationDecoderStatus ¶
GetAnimationDecoderStatus :: proc "c" (decoder: ^AnimationDecoder) -> AnimationDecoderStatus ---
GetClipboardImage ¶
GetClipboardImage :: proc "c" () -> ^sdl3.Surface ---
Get the image currently in the clipboard.
LoadANIAnimation_IO ¶
Individual loading functions
LoadAVIF_IO ¶
Individual loading functions
LoadGPUTexture ¶
LoadGPUTexture :: proc "c" (device: ^sdl3.GPUDevice, copy_pass: ^sdl3.GPUCopyPass, file: cstring, width: ^i32, height: ^i32) -> ^sdl3.GPUTexture ---
Load an image directly into a GPU texture.
LoadGPUTextureTyped_IO ¶
LoadGPUTextureTyped_IO :: proc "c" ( device: ^sdl3.GPUDevice, copy_pass: ^sdl3.GPUCopyPass, src: ^sdl3.IOStream, closeio: bool, type: cstring, width: ^i32, height: ^i32, ) -> ^sdl3.GPUTexture ---
LoadGPUTexture_IO ¶
LoadGPUTexture_IO :: proc "c" ( device: ^sdl3.GPUDevice, copy_pass: ^sdl3.GPUCopyPass, src: ^sdl3.IOStream, closeio: bool, width: ^i32, height: ^i32, ) -> ^sdl3.GPUTexture ---
LoadTexture ¶
Load an image directly into a render texture.
LoadTyped_IO ¶
Load an image from an SDL data source.
The 'type' may be one of: "BMP", "GIF", "PNG", etc.
If the image format supports a transparent pixel, SDL will set the
colorkey for the surface. You can enable RLE acceleration on the
surface afterwards by calling:
SDL_SetColorKey(image, SDL_RLEACCEL, image->format->colorkey);
ResetAnimationDecoder ¶
ResetAnimationDecoder :: proc "c" (decoder: ^AnimationDecoder) -> bool ---
Save ¶
Individual saving functions
SaveANIAnimation_IO ¶
Individual saving functions
isANI ¶
Functions to detect a file type, given a seekable source
Procedure Groups
This section is empty.
Source Files
Generation Information
Generated with odin version dev-2026-01 (vendor "odin") Windows_amd64 @ 2026-01-29 22:15:46.272335100 +0000 UTC