@@ -1848,6 +1848,63 @@ extern SDL_DECLSPEC SDL_Surface * SDLCALL IMG_ReadXPMFromArray(char **xpm);
1848
1848
*/
1849
1849
extern SDL_DECLSPEC SDL_Surface * SDLCALL IMG_ReadXPMFromArrayToRGB888 (char * * xpm );
1850
1850
1851
+ /**
1852
+ * Save an SDL_Surface into an image file.
1853
+ *
1854
+ * If the file already exists, it will be overwritten.
1855
+ *
1856
+ * For formats that accept a quality, a default quality of 75 will be used.
1857
+ *
1858
+ * \param surface the SDL surface to save.
1859
+ * \param file path on the filesystem to write new file to.
1860
+ * \returns true on success or false on failure; call SDL_GetError() for more
1861
+ * information.
1862
+ *
1863
+ * \since This function is available since SDL_image 3.0.0.
1864
+ *
1865
+ * \sa IMG_SaveTyped_IO
1866
+ * \sa IMG_SaveAVIF
1867
+ * \sa IMG_SaveBMP
1868
+ * \sa IMG_SaveGIF
1869
+ * \sa IMG_SaveJPG
1870
+ * \sa IMG_SavePNG
1871
+ * \sa IMG_SaveTGA
1872
+ * \sa IMG_SaveWEBP
1873
+ */
1874
+ extern SDL_DECLSPEC bool SDLCALL IMG_Save (SDL_Surface * surface , const char * file );
1875
+
1876
+ /**
1877
+ * Save an SDL_Surface into formatted image data, via an SDL_IOStream.
1878
+ *
1879
+ * If you just want to save to a filename, you can use IMG_Save() instead.
1880
+ *
1881
+ * If `closeio` is true, `dst` will be closed before returning, whether this
1882
+ * function succeeds or not.
1883
+ *
1884
+ * For formats that accept a quality, a default quality of 75 will be used.
1885
+ *
1886
+ * \param surface the SDL surface to save.
1887
+ * \param dst the SDL_IOStream to save the image data to.
1888
+ * \param closeio true to close/free the SDL_IOStream before returning, false
1889
+ * to leave it open.
1890
+ * \param type a filename extension that represent this data ("BMP", "GIF",
1891
+ * "PNG", etc).
1892
+ * \returns true on success or false on failure; call SDL_GetError() for more
1893
+ * information.
1894
+ *
1895
+ * \since This function is available since SDL_image 3.0.0.
1896
+ *
1897
+ * \sa IMG_Save
1898
+ * \sa IMG_SaveAVIF_IO
1899
+ * \sa IMG_SaveBMP_IO
1900
+ * \sa IMG_SaveGIF_IO
1901
+ * \sa IMG_SaveJPG_IO
1902
+ * \sa IMG_SavePNG_IO
1903
+ * \sa IMG_SaveTGA_IO
1904
+ * \sa IMG_SaveWEBP_IO
1905
+ */
1906
+ extern SDL_DECLSPEC bool SDLCALL IMG_SaveTyped_IO (SDL_Surface * surface , SDL_IOStream * dst , bool closeio , const char * type );
1907
+
1851
1908
/**
1852
1909
* Save an SDL_Surface into a AVIF image file.
1853
1910
*
@@ -1863,6 +1920,12 @@ extern SDL_DECLSPEC SDL_Surface * SDLCALL IMG_ReadXPMFromArrayToRGB888(char **xp
1863
1920
* \since This function is available since SDL_image 3.0.0.
1864
1921
*
1865
1922
* \sa IMG_SaveAVIF_IO
1923
+ * \sa IMG_SaveBMP
1924
+ * \sa IMG_SaveGIF
1925
+ * \sa IMG_SaveJPG
1926
+ * \sa IMG_SavePNG
1927
+ * \sa IMG_SaveTGA
1928
+ * \sa IMG_SaveWEBP
1866
1929
*/
1867
1930
extern SDL_DECLSPEC bool SDLCALL IMG_SaveAVIF (SDL_Surface * surface , const char * file , int quality );
1868
1931
@@ -1886,6 +1949,12 @@ extern SDL_DECLSPEC bool SDLCALL IMG_SaveAVIF(SDL_Surface *surface, const char *
1886
1949
* \since This function is available since SDL_image 3.0.0.
1887
1950
*
1888
1951
* \sa IMG_SaveAVIF
1952
+ * \sa IMG_SaveBMP_IO
1953
+ * \sa IMG_SaveGIF_IO
1954
+ * \sa IMG_SaveJPG_IO
1955
+ * \sa IMG_SavePNG_IO
1956
+ * \sa IMG_SaveTGA_IO
1957
+ * \sa IMG_SaveWEBP_IO
1889
1958
*/
1890
1959
extern SDL_DECLSPEC bool SDLCALL IMG_SaveAVIF_IO (SDL_Surface * surface , SDL_IOStream * dst , bool closeio , int quality );
1891
1960
@@ -1902,6 +1971,12 @@ extern SDL_DECLSPEC bool SDLCALL IMG_SaveAVIF_IO(SDL_Surface *surface, SDL_IOStr
1902
1971
* \since This function is available since SDL_image 3.4.0.
1903
1972
*
1904
1973
* \sa IMG_SaveBMP_IO
1974
+ * \sa IMG_SaveAVIF
1975
+ * \sa IMG_SaveGIF
1976
+ * \sa IMG_SaveJPG
1977
+ * \sa IMG_SavePNG
1978
+ * \sa IMG_SaveTGA
1979
+ * \sa IMG_SaveWEBP
1905
1980
*/
1906
1981
extern SDL_DECLSPEC bool SDLCALL IMG_SaveBMP (SDL_Surface * surface , const char * file );
1907
1982
@@ -1923,6 +1998,12 @@ extern SDL_DECLSPEC bool SDLCALL IMG_SaveBMP(SDL_Surface *surface, const char *f
1923
1998
* \since This function is available since SDL_image 3.4.0.
1924
1999
*
1925
2000
* \sa IMG_SaveBMP
2001
+ * \sa IMG_SaveAVIF_IO
2002
+ * \sa IMG_SaveGIF_IO
2003
+ * \sa IMG_SaveJPG_IO
2004
+ * \sa IMG_SavePNG_IO
2005
+ * \sa IMG_SaveTGA_IO
2006
+ * \sa IMG_SaveWEBP_IO
1926
2007
*/
1927
2008
extern SDL_DECLSPEC bool SDLCALL IMG_SaveBMP_IO (SDL_Surface * surface , SDL_IOStream * dst , bool closeio );
1928
2009
@@ -1939,6 +2020,12 @@ extern SDL_DECLSPEC bool SDLCALL IMG_SaveBMP_IO(SDL_Surface *surface, SDL_IOStre
1939
2020
* \since This function is available since SDL_image 3.4.0.
1940
2021
*
1941
2022
* \sa IMG_SaveGIF_IO
2023
+ * \sa IMG_SaveAVIF
2024
+ * \sa IMG_SaveBMP
2025
+ * \sa IMG_SaveJPG
2026
+ * \sa IMG_SavePNG
2027
+ * \sa IMG_SaveTGA
2028
+ * \sa IMG_SaveWEBP
1942
2029
*/
1943
2030
extern SDL_DECLSPEC bool SDLCALL IMG_SaveGIF (SDL_Surface * surface , const char * file );
1944
2031
@@ -1960,6 +2047,12 @@ extern SDL_DECLSPEC bool SDLCALL IMG_SaveGIF(SDL_Surface *surface, const char *f
1960
2047
* \since This function is available since SDL_image 3.4.0.
1961
2048
*
1962
2049
* \sa IMG_SaveGIF
2050
+ * \sa IMG_SaveAVIF_IO
2051
+ * \sa IMG_SaveBMP_IO
2052
+ * \sa IMG_SaveJPG_IO
2053
+ * \sa IMG_SavePNG_IO
2054
+ * \sa IMG_SaveTGA_IO
2055
+ * \sa IMG_SaveWEBP_IO
1963
2056
*/
1964
2057
extern SDL_DECLSPEC bool SDLCALL IMG_SaveGIF_IO (SDL_Surface * surface , SDL_IOStream * dst , bool closeio );
1965
2058
@@ -1978,6 +2071,12 @@ extern SDL_DECLSPEC bool SDLCALL IMG_SaveGIF_IO(SDL_Surface *surface, SDL_IOStre
1978
2071
* \since This function is available since SDL_image 3.0.0.
1979
2072
*
1980
2073
* \sa IMG_SaveJPG_IO
2074
+ * \sa IMG_SaveAVIF
2075
+ * \sa IMG_SaveBMP
2076
+ * \sa IMG_SaveGIF
2077
+ * \sa IMG_SavePNG
2078
+ * \sa IMG_SaveTGA
2079
+ * \sa IMG_SaveWEBP
1981
2080
*/
1982
2081
extern SDL_DECLSPEC bool SDLCALL IMG_SaveJPG (SDL_Surface * surface , const char * file , int quality );
1983
2082
@@ -2001,6 +2100,12 @@ extern SDL_DECLSPEC bool SDLCALL IMG_SaveJPG(SDL_Surface *surface, const char *f
2001
2100
* \since This function is available since SDL_image 3.0.0.
2002
2101
*
2003
2102
* \sa IMG_SaveJPG
2103
+ * \sa IMG_SaveAVIF_IO
2104
+ * \sa IMG_SaveBMP_IO
2105
+ * \sa IMG_SaveGIF_IO
2106
+ * \sa IMG_SavePNG_IO
2107
+ * \sa IMG_SaveTGA_IO
2108
+ * \sa IMG_SaveWEBP_IO
2004
2109
*/
2005
2110
extern SDL_DECLSPEC bool SDLCALL IMG_SaveJPG_IO (SDL_Surface * surface , SDL_IOStream * dst , bool closeio , int quality );
2006
2111
@@ -2017,6 +2122,12 @@ extern SDL_DECLSPEC bool SDLCALL IMG_SaveJPG_IO(SDL_Surface *surface, SDL_IOStre
2017
2122
* \since This function is available since SDL_image 3.0.0.
2018
2123
*
2019
2124
* \sa IMG_SavePNG_IO
2125
+ * \sa IMG_SaveAVIF
2126
+ * \sa IMG_SaveBMP
2127
+ * \sa IMG_SaveGIF
2128
+ * \sa IMG_SaveJPG
2129
+ * \sa IMG_SaveTGA
2130
+ * \sa IMG_SaveWEBP
2020
2131
*/
2021
2132
extern SDL_DECLSPEC bool SDLCALL IMG_SavePNG (SDL_Surface * surface , const char * file );
2022
2133
@@ -2038,6 +2149,12 @@ extern SDL_DECLSPEC bool SDLCALL IMG_SavePNG(SDL_Surface *surface, const char *f
2038
2149
* \since This function is available since SDL_image 3.0.0.
2039
2150
*
2040
2151
* \sa IMG_SavePNG
2152
+ * \sa IMG_SaveAVIF_IO
2153
+ * \sa IMG_SaveBMP_IO
2154
+ * \sa IMG_SaveGIF_IO
2155
+ * \sa IMG_SaveJPG_IO
2156
+ * \sa IMG_SaveTGA_IO
2157
+ * \sa IMG_SaveWEBP_IO
2041
2158
*/
2042
2159
extern SDL_DECLSPEC bool SDLCALL IMG_SavePNG_IO (SDL_Surface * surface , SDL_IOStream * dst , bool closeio );
2043
2160
@@ -2054,6 +2171,12 @@ extern SDL_DECLSPEC bool SDLCALL IMG_SavePNG_IO(SDL_Surface *surface, SDL_IOStre
2054
2171
* \since This function is available since SDL_image 3.4.0.
2055
2172
*
2056
2173
* \sa IMG_SaveTGA_IO
2174
+ * \sa IMG_SaveAVIF
2175
+ * \sa IMG_SaveBMP
2176
+ * \sa IMG_SaveGIF
2177
+ * \sa IMG_SaveJPG
2178
+ * \sa IMG_SavePNG
2179
+ * \sa IMG_SaveWEBP
2057
2180
*/
2058
2181
extern SDL_DECLSPEC bool SDLCALL IMG_SaveTGA (SDL_Surface * surface , const char * file );
2059
2182
@@ -2075,6 +2198,12 @@ extern SDL_DECLSPEC bool SDLCALL IMG_SaveTGA(SDL_Surface *surface, const char *f
2075
2198
* \since This function is available since SDL_image 3.4.0.
2076
2199
*
2077
2200
* \sa IMG_SaveTGA
2201
+ * \sa IMG_SaveAVIF_IO
2202
+ * \sa IMG_SaveBMP_IO
2203
+ * \sa IMG_SaveGIF_IO
2204
+ * \sa IMG_SaveJPG_IO
2205
+ * \sa IMG_SavePNG_IO
2206
+ * \sa IMG_SaveWEBP_IO
2078
2207
*/
2079
2208
extern SDL_DECLSPEC bool SDLCALL IMG_SaveTGA_IO (SDL_Surface * surface , SDL_IOStream * dst , bool closeio );
2080
2209
@@ -2095,6 +2224,12 @@ extern SDL_DECLSPEC bool SDLCALL IMG_SaveTGA_IO(SDL_Surface *surface, SDL_IOStre
2095
2224
* \since This function is available since SDL_image 3.4.0.
2096
2225
*
2097
2226
* \sa IMG_SaveWEBP_IO
2227
+ * \sa IMG_SaveAVIF
2228
+ * \sa IMG_SaveBMP
2229
+ * \sa IMG_SaveGIF
2230
+ * \sa IMG_SaveJPG
2231
+ * \sa IMG_SavePNG
2232
+ * \sa IMG_SaveTGA
2098
2233
*/
2099
2234
extern SDL_DECLSPEC bool SDLCALL IMG_SaveWEBP (SDL_Surface * surface , const char * file , float quality );
2100
2235
@@ -2120,6 +2255,12 @@ extern SDL_DECLSPEC bool SDLCALL IMG_SaveWEBP(SDL_Surface *surface, const char *
2120
2255
* \since This function is available since SDL_image 3.4.0.
2121
2256
*
2122
2257
* \sa IMG_SaveWEBP
2258
+ * \sa IMG_SaveAVIF_IO
2259
+ * \sa IMG_SaveBMP_IO
2260
+ * \sa IMG_SaveGIF_IO
2261
+ * \sa IMG_SaveJPG_IO
2262
+ * \sa IMG_SavePNG_IO
2263
+ * \sa IMG_SaveTGA_IO
2123
2264
*/
2124
2265
extern SDL_DECLSPEC bool SDLCALL IMG_SaveWEBP_IO (SDL_Surface * surface , SDL_IOStream * dst , bool closeio , float quality );
2125
2266
0 commit comments