imgSaveWebp function image
Save an SDL_Surface into a WEBP image file.
If the file already exists, it will be overwritten.
\param surface the SDL surface to save. \param file path on the filesystem to write the new file to. \param quality between 0 and 100. For lossy, 0 gives the smallest size and 100 the largest. For lossless, this parameter is the amount of effort put into the compression: 0 is the fastest but gives larger files compared to the slowest, but best, 100. \returns true on success or false on failure; call SDL_GetError() for more information.
\since This function is available since SDL_image 3.4.0.
\sa IMG_SaveWEBP_IO
extern SDL_DECLSPEC bool SDLCALL IMG_SaveWEBP(SDL_Surface *surface, const char *file, float quality)
Implementation
bool imgSaveWebp(Pointer<SdlSurface> surface, String? file, double quality) {
final imgSaveWebpLookupFunction = _libImage
.lookupFunction<
Uint8 Function(
Pointer<SdlSurface> surface,
Pointer<Utf8> file,
Float quality,
),
int Function(
Pointer<SdlSurface> surface,
Pointer<Utf8> file,
double quality,
)
>('IMG_SaveWEBP');
final filePointer = file != null ? file.toNativeUtf8() : nullptr;
final result = imgSaveWebpLookupFunction(surface, filePointer, quality) == 1;
calloc.free(filePointer);
return result;
}