Supported Image Formats
Description | Animated Portable Network Graphics |
Can Load | Grayscale: 1-bit, 2-bit, 4-bit, 8-bit, 16-bit.
Indexed: 1-bit, 2-bit, 4-bit, 8-bit.
RGB: 24-bit, 48-bit.
RGBA: 32-bit, 64-bit.
Content: Static, Animated, Meta data, ICC profiles. Special properties[4]: "apng-frames": Number of frames in the animation. Possible values: unsigned int. "apng-plays": Number of plays of the animation. Possible values: unsigned int. |
Cannot Load | Blend operations with pixel formats other than BPP16-GRAYSCALE-ALPHA, BPP32-GRAYSCALE-ALPHA, BPP32-RGBA, BPP64-RGBA. |
Can Save | Unsupported |
Cannot Save | - |
Dependencies | libpng+APNG patch |
Description | AV1 Still Image File Format |
Can Load | YUV: 8-bit, 10-bit, 12-bit.
Content: Static, Animated, Meta data, ICC profiles. |
Cannot Load | - |
Can Save | Unsupported |
Cannot Save | - |
Dependencies | libavif |
Description | Bitmap Picture |
Can Load |
Indexed: 1-bit, 4-bit, 8-bit (DIB only).
RGB: 16-bit, 24-bit, 32-bit.
Compressions: NONE, RLE4, RLE8. BMP Versions: V1 (DDB), V2, V3, V4, V5. Content: Static, Meta data, ICC profiles. |
Cannot Load |
Indexed: 8-bit (in DDB images).
Compressions: ALPHABITFIELDS, BITFIELDS, CMYK, CMYK-RLE4, CMYK-RLE8, JPEG, PNG. BMP Versions: OS/2. |
Can Save | Unsupported |
Cannot Save | - |
Dependencies | - |
Description | Windows Cursor |
Can Load |
Bit depth: Same to BMP.
Content: Static, Multi-paged. Special properties[4]: "cur-hotspot-x": X coordinate of the hotspot. Possible values: unsigned int. "cur-hotspot-y": Y coordinate of the hotspot. Possible values: unsigned int. |
Cannot Load | PNG contained images |
Can Save | Unsupported |
Cannot Save | - |
Dependencies | - |
Description | Graphics Interchange Format |
Can Load |
Indexed: 8-bit.
Content: Static, Animated, Meta data. |
Cannot Load | - |
Can Save | Unsupported |
Cannot Save | - |
Dependencies | giflib |
Description | Windows Icon |
Can Load |
Bit depth: Same to BMP.
Content: Static, Multi-paged. |
Cannot Load | PNG contained images |
Can Save | Unsupported |
Cannot Save | - |
Dependencies | - |
Description | Joint Photographic Experts Group |
Can Load |
Grayscale: 8-bit.
RGB: 565 16-bit[1], 24-bit.
BGR:[1] 24-bit.
YCbCr: 24-bit.
RGBA:[1] 32-bit.
BGRA:[1] 32-bit.
ARGB:[1] 32-bit.
ABGR:[1] 32-bit.
CMYK: 32-bit.
YCCK: 32-bit.
Content: Static, Meta data, ICC profiles. |
Cannot Load | - |
Can Save |
Grayscale: 8-bit.
RGB: 565 16-bit[1], 24-bit.
BGR:[1] 24-bit.
YCbCr: 24-bit.
RGBA:[1] 32-bit.
BGRA:[1] 32-bit.
ARGB:[1] 32-bit.
ABGR:[1] 32-bit.
CMYK: 32-bit.
YCCK: 32-bit.
Content: Static, Meta data, ICC profiles. Tuning[3]: "jpeg-dct-method": JPEG DCT method. Possible values: "slow", "fast", "float". "jpeg-optimize-coding": Compute optimal Huffman tables. Possible values: true or false. "jpeg-smoothing-factor": Smooth the image. Possible values: Unsigned int range from 1U to 100U. See the libjpeg docs for more. |
Cannot Save | - |
Dependencies | libjpeg or libjpeg-turbo |
Description | JPEG 2000 |
Can Load |
Grayscale: 8-bit, 16-bit.
RGB: 24-bit, 48-bit.
YCbCr: 24-bit.
RGBA: 32-bit, 64-bit.
Content: Static. |
Cannot Load |
Pixel formats: YCCK, CMYK, LAB, XYZ, and other.
Content: Meta data, ICC profiles, images with non-zero position, images with bits per channel greater than 16. |
Can Save | Unsupported |
Cannot Save | - |
Dependencies | jasper |
Description | JPEG XL |
Can Load |
Grayscale: 8-bit, 16-bit.
RGB: 24-bit, 48-bit.
RGBA: 32-bit, 64-bit.
CMYK: 32-bit, 64-bit.
Content: Static, Animated, Meta data, ICC profiles. Special properties[4]: "jpegxl-bits-per-sample". Possible values: unsigned int. "jpegxl-exponent-bits-per-sample". Possible values: unsigned int. "jpegxl-intensity-target". Possible values: float. "jpegxl-min-nits". Possible values: float. "jpegxl-relative-to-max-display". Possible values: bool. "jpegxl-linear-below". Possible values: float. "jpegxl-color-channels". Possible values: unsigned int. "jpegxl-extra-channels". Possible values: unsigned int. "jpegxl-alpha-bits". Possible values: unsigned int. "jpegxl-intrinsic-width". Possible values: unsigned int. "jpegxl-intrinsic-height". Possible values: unsigned int. See the JxlBasicInfo structure documentation in libjxl for more. |
Cannot Load | Wide color gamut data gets clipped |
Can Save | Unsupported |
Cannot Save | - |
Dependencies | libjxl |
Description | Picture Exchange |
Can Load |
Indexed: 1-bit, 4-bit, 8-bit.
RGB: 24-bit.
RGBA: 32-bit.
Content: Static. Compressions: NONE[2], RLE. |
Cannot Load | - |
Can Save | Unsupported |
Cannot Save | - |
Dependencies | - |
Description | Portable Network Graphics |
Can Load |
Grayscale: 1-bit, 2-bit, 4-bit, 8-bit, 16-bit.
Indexed: 1-bit, 2-bit, 4-bit, 8-bit.
RGB: 24-bit, 48-bit.
RGBA: 32-bit, 64-bit.
Content: Static, Meta data, ICC profiles. |
Cannot Load | - |
Can Save |
Grayscale: 1-bit, 2-bit, 4-bit, 8-bit, 16-bit.
Indexed: 1-bit, 2-bit, 4-bit, 8-bit.
RGB: 24-bit, 48-bit.
RGBA: 32-bit, 64-bit.
Content: Static, Meta data, ICC profiles. Tuning[3]: "png-filter": PNG filters to apply. Possible values: "none", "sub", "up", "avg", "paeth". It's also possible to combine filters with ';' like that: "none;sub;paeth". See the libpng docs for more. |
Cannot Save | - |
Dependencies | libpng |
Description | Portable aNy Map |
Can Load |
Grayscale: 8-bit, 16-bit.
Indexed: 1-bit.
RGB: 24-bit, 48-bit.
Content: Static, Meta data. Special properties[4]: "pnm-ascii": True if the image pixels are encoded in ASCII mode. Possible values: bool. |
Cannot Load | - |
Can Save | Unsupported |
Cannot Save | - |
Dependencies | - |
Description | Photoshop Document |
Can Load |
Grayscale: 8-bit, 16-bit.
Indexed: 1-bit, 8-bit.
RGB: 24-bit, 48-bit.
RGBA: 32-bit, 64-bit.
Compressions: NONE, RLE. Content: Static (Preview Image Only). |
Cannot Load |
Grayscale: 32-bit.
RGB: 96-bit.
RGBA: 128-bit.
Pixel formats: Multichannel, Duotone, LAB.
Compressions: ZIP. Content: Layers, masks, etc. |
Can Save | Unsupported |
Cannot Save | - |
Dependencies | - |
Description | Quite OK Image |
Can Load |
RGB: 24-bit.
RGBA: 32-bit.
Content: Static. |
Cannot Load | Linear color space. |
Can Save |
RGB: 24-bit.
RGBA: 32-bit.
Content: Static. |
Cannot Save | Linear color space. |
Dependencies | - |
Description | Scalable Vector Graphics |
Can Load |
Bit depth: 32-bit.
Content: Static. See resvg support table when compiled with resvg. |
Cannot Load |
Content: Animated, Meta data, ICC profiles.
See resvg support table when compiled with resvg. |
Can Save | Unsupported |
Cannot Save | - |
Dependencies | resvg or nanosvg |
Description | Truevision TGA |
Can Load |
Grayscale: 8-bit.
Indexed: 8-bit.
RGB: 24-bit.
RGBA: 32-bit.
Content: Static, Meta data. |
Cannot Load | Content: Thumbnail images. |
Can Save | Unsupported |
Cannot Save | - |
Dependencies | - |
Description | Tagged Image File Format |
Can Load |
Bit depth: 1-bit, 2-bit, 4-bit, 8-bit, 16-bit, 24-bit, 32-bit, 48-bit, 64-bit.
Compressions:[1] ADOBE-DEFLATE, CCITT-RLE, CCITT-RLEW, CCITT-T4, CCITT-T6, DCS, DEFLATE, IT-8BL, IT8-CTPAD, IT8-LW, IT8-MP, JBIG, JPEG, JPEG-2000, LERC, LZMA, LZW, NEXT, NONE, OJPEG, PACKBITS, PIXAR-FILM, PIXAR-LOG, SGI-LOG24, SGI-LOG, T43, T85, THUNDERSCAN, WEBP, ZSTD. Content: Static, Multi-paged, Meta data, ICC profiles. |
Cannot Load | - |
Can Save |
RGBA: 32-bit.
Compressions:[1] ADOBE-DEFLATE, CCITT-RLE, CCITT-RLEW, CCITT-T4, CCITT-T6, DCS, DEFLATE, IT-8BL, IT8-CTPAD, IT8-LW, IT8-MP, JBIG, JPEG, JPEG-2000, LERC, LZMA, LZW, NEXT, NONE, OJPEG, PACKBITS, PIXAR-FILM, PIXAR-LOG, SGI-LOG24, SGI-LOG, T43, T85, THUNDERSCAN, WEBP, ZSTD. Content: Static, Multi-paged, Meta data, ICC profiles. |
Cannot Save | - |
Dependencies | libtiff |
Description | Quake2 Texture |
Can Load |
Indexed: 8-bit.
Content: Static, Multi-paged. |
Cannot Load | - |
Can Save | Unsupported |
Cannot Save | - |
Dependencies | - |
Description | Web Picture |
Can Load |
Bit depth: 24-bit, 32-bit.
Content: Static, Animated, Meta data, ICC profiles. |
Cannot Load | - |
Can Save | Unsupported |
Cannot Save | - |
Dependencies | libwebp |
Description | X BitMap |
Can Load |
Bit depth: 1-bit.
Content: Static. Specifications: X10, X11. |
Cannot Load | Content: Multi-paged, C-style /*...*/ comments. |
Can Save | Unsupported |
Cannot Save | - |
Dependencies | - |
References
- [1] If supported by the underlying codec like libjpeg.
- [2] Even though uncompressed PCX files are not considered valid by the spec.
- [3] See save_options.tuning.
- [4] See source_image.special_properties.