package vendor:sdl3/image

⌘K
Ctrl+K
or
/

    Overview

    Bindings for SDL3 Image.

    Index

    Constants (32)
    Variables (0)

    This section is empty.

    Procedures (102)
    Procedure Groups (0)

    This section is empty.

    Types

    AnimationDecoderStatus ¶

    AnimationDecoderStatus :: enum i32 {
    	INVALID  = -1, 
    	OK, 
    	FAILED, 
    	COMPLETE, 
    }

    Constants

    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 :: "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 ---

    CreateAnimatedCursor ¶

    CreateAnimatedCursor :: proc "c" (anim: ^Animation, hot_x: i32, hot_y: i32) -> ^sdl3.Cursor ---

    CreateAnimationDecoder ¶

    CreateAnimationDecoder :: proc "c" (file: cstring) -> ^AnimationDecoder ---
     

    Animation decoder functions

    CreateAnimationEncoder ¶

    CreateAnimationEncoder :: proc "c" (file: cstring) -> ^AnimationEncoder ---
     

    Animation encoder functions

    GetAnimationDecoderFrame ¶

    GetAnimationDecoderFrame :: proc "c" (
    	decoder:  ^AnimationDecoder, 
    	frame:    ^^sdl3.Surface, 
    	duration: ^u64, 
    ) -> bool ---

    GetClipboardImage ¶

    GetClipboardImage :: proc "c" () -> ^sdl3.Surface ---
     

    Get the image currently in the clipboard.

    Load ¶

    Load :: proc "c" (file: cstring) -> ^sdl3.Surface ---
     

    Convenience functions

    LoadANIAnimation_IO ¶

    LoadANIAnimation_IO :: proc "c" (src: ^sdl3.IOStream) -> ^Animation ---
     

    Individual loading functions

    LoadAVIF_IO ¶

    LoadAVIF_IO :: proc "c" (src: ^sdl3.IOStream) -> ^sdl3.Surface ---
     

    Individual loading functions

    LoadAnimationTyped_IO ¶

    LoadAnimationTyped_IO :: proc "c" (
    	src:     ^sdl3.IOStream, 
    	closeio: bool, 
    	type:    cstring, 
    ) -> ^Animation ---

    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 ---

    LoadSizedSVG_IO ¶

    LoadSizedSVG_IO :: proc "c" (src: ^sdl3.IOStream, width, height: i32) -> ^sdl3.Surface ---

    LoadTexture ¶

    LoadTexture :: proc "c" (renderer: ^sdl3.Renderer, file: cstring) -> ^sdl3.Texture ---
     

    Load an image directly into a render texture.

    LoadTextureTyped_IO ¶

    LoadTextureTyped_IO :: proc "c" (
    	renderer: ^sdl3.Renderer, 
    	src:      ^sdl3.IOStream, 
    	closeio:  bool, 
    	type:     cstring, 
    ) -> ^sdl3.Texture ---

    LoadTexture_IO ¶

    LoadTexture_IO :: proc "c" (
    	renderer: ^sdl3.Renderer, 
    	src:      ^sdl3.IOStream, 
    	closeio:  bool, 
    ) -> ^sdl3.Texture ---

    LoadTyped_IO ¶

    LoadTyped_IO :: proc "c" (src: ^sdl3.IOStream, closeio: bool, type: cstring) -> ^sdl3.Surface ---
     

    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);
    

    Load_IO ¶

    Load_IO :: proc "c" (src: ^sdl3.IOStream, closeio: bool) -> ^sdl3.Surface ---

    Save ¶

    Save :: proc "c" (surface: ^sdl3.Surface, file: cstring) -> bool ---
     

    Individual saving functions

    SaveANIAnimation_IO ¶

    SaveANIAnimation_IO :: proc "c" (anim: ^Animation, dst: ^sdl3.IOStream, closeio: bool) -> bool ---
     

    Individual saving functions

    SaveAPNGAnimation_IO ¶

    SaveAPNGAnimation_IO :: proc "c" (
    	anim:    ^Animation, 
    	dst:     ^sdl3.IOStream, 
    	closeio: bool, 
    ) -> bool ---

    SaveAVIF ¶

    SaveAVIF :: proc "c" (surface: ^sdl3.Surface, file: cstring, quality: i32) -> bool ---

    SaveAVIFAnimation_IO ¶

    SaveAVIFAnimation_IO :: proc "c" (
    	anim:    ^Animation, 
    	dst:     ^sdl3.IOStream, 
    	closeio: bool, 
    	quality: i32, 
    ) -> bool ---

    SaveAVIF_IO ¶

    SaveAVIF_IO :: proc "c" (
    	surface: ^sdl3.Surface, 
    	dst:     ^sdl3.IOStream, 
    	closeio: bool, 
    	quality: i32, 
    ) -> bool ---

    SaveAnimationTyped_IO ¶

    SaveAnimationTyped_IO :: proc "c" (
    	anim:    ^Animation, 
    	dst:     ^sdl3.IOStream, 
    	closeio: bool, 
    	type:    cstring, 
    ) -> bool ---

    SaveBMP ¶

    SaveBMP :: proc "c" (surface: ^sdl3.Surface, file: cstring) -> bool ---

    SaveBMP_IO ¶

    SaveBMP_IO :: proc "c" (surface: ^sdl3.Surface, dst: ^sdl3.IOStream, closeio: bool) -> bool ---

    SaveCUR ¶

    SaveCUR :: proc "c" (surface: ^sdl3.Surface, file: cstring) -> bool ---

    SaveCUR_IO ¶

    SaveCUR_IO :: proc "c" (surface: ^sdl3.Surface, dst: ^sdl3.IOStream, closeio: bool) -> bool ---

    SaveGIF ¶

    SaveGIF :: proc "c" (surface: ^sdl3.Surface, file: cstring) -> bool ---

    SaveGIFAnimation_IO ¶

    SaveGIFAnimation_IO :: proc "c" (anim: ^Animation, dst: ^sdl3.IOStream, closeio: bool) -> bool ---

    SaveGIF_IO ¶

    SaveGIF_IO :: proc "c" (surface: ^sdl3.Surface, dst: ^sdl3.IOStream, closeio: bool) -> bool ---

    SaveICO ¶

    SaveICO :: proc "c" (surface: ^sdl3.Surface, file: cstring) -> bool ---

    SaveICO_IO ¶

    SaveICO_IO :: proc "c" (surface: ^sdl3.Surface, dst: ^sdl3.IOStream, closeio: bool) -> bool ---

    SaveJPG ¶

    SaveJPG :: proc "c" (surface: ^sdl3.Surface, file: cstring, quality: i32) -> bool ---

    SaveJPG_IO ¶

    SaveJPG_IO :: proc "c" (
    	surface: ^sdl3.Surface, 
    	dst:     ^sdl3.IOStream, 
    	closeio: bool, 
    	quality: i32, 
    ) -> bool ---

    SavePNG ¶

    SavePNG :: proc "c" (surface: ^sdl3.Surface, file: cstring) -> bool ---

    SavePNG_IO ¶

    SavePNG_IO :: proc "c" (surface: ^sdl3.Surface, dst: ^sdl3.IOStream, closeio: bool) -> bool ---

    SaveTGA ¶

    SaveTGA :: proc "c" (surface: ^sdl3.Surface, file: cstring) -> bool ---

    SaveTGA_IO ¶

    SaveTGA_IO :: proc "c" (surface: ^sdl3.Surface, dst: ^sdl3.IOStream, closeio: bool) -> bool ---

    SaveTyped_IO ¶

    SaveTyped_IO :: proc "c" (
    	surface: ^sdl3.Surface, 
    	dst:     ^sdl3.IOStream, 
    	closeio: bool, 
    	type:    cstring, 
    ) -> bool ---

    SaveWEBP ¶

    SaveWEBP :: proc "c" (surface: ^sdl3.Surface, file: cstring, quality: f32) -> bool ---

    SaveWEBPAnimation_IO ¶

    SaveWEBPAnimation_IO :: proc "c" (
    	anim:    ^Animation, 
    	dst:     ^sdl3.IOStream, 
    	closeio: bool, 
    	quality: i32, 
    ) -> bool ---

    SaveWEBP_IO ¶

    SaveWEBP_IO :: proc "c" (
    	surface: ^sdl3.Surface, 
    	dst:     ^sdl3.IOStream, 
    	closeio: bool, 
    	quality: f32, 
    ) -> bool ---

    isANI ¶

    isANI :: proc "c" (src: ^sdl3.IOStream) -> bool ---
     

    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-10 (vendor "odin") Windows_amd64 @ 2026-10-12 23:22:57.846843600 +0000 UTC