Image MIME Reference
JNG
JPEG Network Graphics
image/x-jng
VS
Khronos Texture
image/ktx
KTX
A complete technical comparison of JPEG Network Graphics and Khronos Texture — covering compression, feature support, browser compatibility, magic bytes, and when to choose each format.
Equal browser support
Feature Support
| Feature | JNG | KTX |
|---|---|---|
| Transparency (Alpha) | Yes | Yes |
| Animation Support | ✕ No | ✕ No |
| Progressive Loading | Yes | ✕ No |
| HDR Support | ✕ No | Yes |
| EXIF Metadata | Yes | ✕ No |
| ICC Color Profile | Yes | ✕ No |
JPEG Network Graphics
image/x-jng
Extension
.jng
Container
PNG-style Chunk Structure (JHDR, JDAT, IDAT, IEND)
Compression
Lossy (JPEG/DCT for color) / Lossless (Deflate for alpha mask)
Algorithm
JPEG (Discrete Cosine Transform)Deflate (LZ77)
Color Depth
8-bit, 12-bit, 24-bit (RGB), 32-bit (RGBA)
Developed by
MNG Development Group (Glenn Randers-Pehrson et al.)
Released
2001
Magic Bytes
8B 4A 4E 47 0D 0A 1A 0A
Khronos Texture
image/ktx
Extension
.ktx
Container
KTX (Khronos Texture 1.1)
Compression
Uncompressed / GPU Compressed (ASTC, ETC, BCn, PVRTC)
Algorithm
ASTCETC1 / ETC2BCn (DXT)PVRTCBasis Universal (in KTX2)
Color Depth
8-bit, 16-bit, 32-bit (Integer/Float)
Developed by
Khronos Group
Released
2010
Magic Bytes
AB 4B 54 58 20 31 31 BB 0D 0A 1A 0A
Browser Support Comparison
| Browser | JNG | KTX |
|---|---|---|
|
|
✕ | ✕ |
|
|
✕ | ✕ |
|
|
✕ | ✕ |
|
|
✕ | ✕ |
|
|
✕ | ✕ |
JNG
JNG Strengths
- Solved a massive technical hurdle in the early 2000s by combining high-compression lossy photographic data with crisp, 8-bit alpha transparency
- Utilized the highly robust, extensible chunk-based architecture of the PNG format
- Provided an excellent, bandwidth-saving alternative to massive 32-bit transparent PNGs for web design
Limitations
- Failed to achieve critical mass; browser vendors largely abandoned the MNG/JNG standard due to implementation complexity
- Completely obsolete today, having been superseded by natively supported, superior formats like WebP, AVIF, and HEIC
- Decoding requires a hybrid engine that can parse PNG chunks while simultaneously decoding a JPEG stream and a Deflate stream, complicating software support
KTX
KTX Strengths
- Enables direct-to-GPU texture uploading, drastically reducing load times and CPU overhead in 3D applications
- Supports complex texture types natively (mipmaps, cubemaps, 3D volumes, texture arrays)
- Standardized across major Khronos APIs (OpenGL, Vulkan, WebGL) unlike vendor-specific formats like DDS
Limitations
- Requires custom JavaScript loaders to parse and display on the web
- Zero native support in consumer image viewers or 2D photo editing software
- Format fragmentation: a KTX file containing an ASTC payload will fail to render on hardware that only supports BCn compression (KTX2 and Basis Universal solve this)
When to choose which format
JNG
Use JNG when…
- Embedded frames in MNG animations
- Historical web graphics requiring lossy compression with transparency
KTX
Use KTX when…
- Real-time 3D Graphics
- WebGL / WebGPU Applications
- Mobile Games
- Virtual/Augmented Reality (VR/AR)