cover image
Web

Web Image Formats

In a digital landscape where visual content reigns supreme, the demand for efficient and high-quality web image formats has never been greater. Discover the secrets behind next-generation formats in the browser that promise to redefine the way we consume and share visual information.

This article focuses on image formats that are directly supported by modern browsers.

Lossy image formats are image formats that use lossy compression. Lossy compression means that the image data is compressed in a way that some information is lost. Lossless compression means that the image data is compressed in a way that no information is lost. For example, for screenshots, lossless compression would be better, because the text in the screenshot would be more readable.

GIF

The Graphics Interchange Format (GIF) is a bitmap image format that was introduced in 1987 by CompuServe. GIF uses a special compression algorithm that is based on the Lempel-Ziv-Welch (LZW) lossless data compression technique.

Simple animations are supported by the format.

Since the beginnings of HTML, GIF was supported in browsers. Consequently, all browsers today support GIF.

Specification: https://www.w3.org/Graphics/GIF/spec-gif89a.txt

JPEG

Currently, JPEG (Joint Photographic Experts Group image) is the most popular image format on the web. It supports lossy compression and as of today, all United States patents on the format have expired.

JPEG is supported by all modern browsers.

Specification: https://jpeg.org/jpeg

PNG

The PNG (Portable Network Graphics) format is a lossless format that was designed as a replacement for GIF. Therefore, it supports higher color depth and is more efficient than GIF. It also supports alpha transparency.

PNG is supported by all modern browsers.

Specification: https://www.w3.org/TR/png

APNG

The abbreviation APGN stands for "Animated Portable Network Graphics". It is a file format that extends the PNG format with support for animations.

In comparison to GIF which also supports animations, it has an enhanced support for color depths.

According to caniuse.com, APNG is at the time of writing the article supported by 96.14% of all browsers. All of today's modern browser support APNG.

Specification: https://wiki.mozilla.org/APNG_Specification

SVG

SVG (Scalable Vector Graphics) is a vector graphics format for the web. In this it differs from the other formats that are discussed in this article. The other formats are bitmap formats. SVG is great for logos and icons and scales well without loss of quality.

SVG is supported by all modern browsers.

Specification: https://www.w3.org/TR/SVG2

WebP

The WebP image format was developed by Google and is based on the VP8 video codec. It supports lossy and lossless compression. Furthermore, it supports transparency and animations.

It was designed to be a replacement for JPEG, PNG, and GIF. AVIF and JPEG XL could supersede WebP in the future.

Its license is open-source and royalty-free.

According to caniuse.com, WebP is supported by 96.63% of all browsers.

Specification: https://developers.google.com/speed/webp/docs/webp_lossless_bitstream_specification and https://datatracker.ietf.org/doc/html/rfc6386

AVIF

The AV1 Image File Format (AVIF) is an open-source and royalty-free image file format.

Rooted in the AV1 video codec, it offers superb lossy compression and compares favorably to other image formats such as JPEG, PNG, and WebP. It also offers lossless compression and has animation capability. Furthermore, it supports HDR and wide color gamut for high-quality images.

Currently, the support for AVIF in browsers stands at 83,97% globally according to caniuse.com.

Among the modern browsers, only Edge does not support AVIF.

Specification: https://aomediacodec.github.io/av1-avif

Conclusion

In all, today there are a variety of image formats to choose from for the web. The choice of the format depends on the use case. For example, for logos and icons, SVG is a good choice. For photos, JPEG is a good choice. Screenshots are best saved as PNG. If you use one of the newer image file formats like WebP and AVIF, you should specify a fallback format for older browsers.

References

Cover image by Alvin Lenin on Unsplash

Published 12 Jun 2023
Thomas Derflinger

Written by Thomas Derflinger

I am a visionary entrepreneur and software developer. In this blog I mainly write about web programming and related topics like IoT.