SDL_PremultiplyAlpha(3)

NAME
SDL_PremultiplyAlpha - Premultiply the alpha on a block of pixels.

SYNOPSIS
#include <SDL3/SDL_surface.h>

bool SDL_PremultiplyAlpha(int width, int height, SDL_PixelFormat src_format, const void *src, int src_pitch, SDL_PixelFormat dst_format, void *dst, int dst_pitch, bool linear);

DESCRIPTION
This is safe to use with src == dst, but not for other overlapping areas.

FUNCTION PARAMETERS

width
    the width of the block to convert, in pixels.

height
    the height of the block to convert, in pixels.

src_format
    an SDL_PixelFormat value of the src pixels format.

src a pointer to the source pixels.

src_pitch
    the pitch of the source pixels, in bytes.

dst_format
    an SDL_PixelFormat value of the dst pixels format.

dst a pointer to be filled in with premultiplied pixel data.

dst_pitch
    the pitch of the destination pixels, in bytes.

linear
    true to convert from sRGB to linear space for the alpha multiplication, false to do multiplication in sRGB space.

RETURN VALUE
for more information.

THREAD SAFETY
The same destination pixels should not be used from two threads at once. It is safe to use the same source pixels from multiple threads.

AVAILABILITY
This function is available since SDL 3.2.0.