Image MIME Reference
Canon-CR2
Canon Raw Version 2
image/x-canon-cr2
VS
X Pixmap
image/x-xpixmap
XPM
A complete technical comparison of Canon Raw Version 2 and X Pixmap — covering compression, feature support, browser compatibility, magic bytes, and when to choose each format.
Equal browser support
Feature Support
| Feature | Canon-CR2 | XPM |
|---|---|---|
| Transparency (Alpha) | ✕ No | Yes |
| Animation Support | ✕ No | ✕ No |
| Progressive Loading | ✕ No | ✕ No |
| HDR Support | Yes | ✕ No |
| EXIF Metadata | Yes | ✕ No |
| ICC Color Profile | Yes | ✕ No |
Canon Raw Version 2
image/x-canon-cr2
Extension
.cr2
Container
TIFF
Compression
Lossless JPEG (ITU-T81)
Algorithm
Lossless JPEG (ITU-T81)
Color Depth
12-bit (Per Channel), 14-bit (Per Channel)
Developed by
Canon Inc.
Released
2004
Magic Bytes
49 49 2A 00 10 00 00 00 43 52 02 00
X Pixmap
image/x-xpixmap
Extension
.xpm
Container
C Source Code Header (.c / .h)
Compression
Uncompressed (Source Code)
Algorithm
None
Color Depth
Indexed Color (Custom Palette with RGB and Alpha 'None')
Developed by
Daniel Dardailler and Colas Nahaboo (Bull / X Consortium)
Released
1989
Magic Bytes
2F 2A 20 58 50 4D 20 2A 2F (ASCII '/* XPM */')
Browser Support Comparison
| Browser | Canon-CR2 | XPM |
|---|---|---|
|
|
✕ | ✕ |
|
|
✕ | ✕ |
|
|
✕ | ✕ |
|
|
✕ | ✕ |
|
|
✕ |
✓
|
Canon-CR2
Canon-CR2 Strengths
- Retains maximum sensor data, allowing extreme recovery of highlights and shadows that would be permanently lost in a JPEG
- White balance and color profiling are not 'baked in', meaning they can be completely altered in post-production without degrading the image
- Lossless compression ensures perfect pixel accuracy while reducing file size compared to fully uncompressed formats
Limitations
- Proprietary format means it requires constant updates to raw processing engines (like Adobe Camera Raw) every time Canon releases a new camera model
- Produces very large file sizes (often 20MB to 40MB per image depending on sensor resolution)
- Cannot be directly embedded into web pages or used in standard HTML/CSS contexts
XPM
XPM Strengths
- Can be compiled directly into C or C++ source code without requiring an external asset loading mechanism
- Human-readable palette mapping allows developers to inspect, modify, or hand-craft icons directly within a text editor
- Native support for color palettes and transparency via the 'None' keyword
Limitations
- Extremely inefficient storage structure for large images, resulting in massive file bloat compared to binary formats like PNG
- Completely obsolete and unsupported in modern web browsers
- Parsing overhead requires compiling or interpreting text-based color tables at runtime
When to choose which format
Canon-CR2
Use Canon-CR2 when…
- Professional Digital Photography
- Non-destructive Image Post-Processing
- High Dynamic Range (HDR) Imaging Archival
XPM
Use XPM when…
- X Window System (X11) Application Icons and Cursors
- Embedded C/C++ Firmware Color UI Assets
- Early Linux Desktop Environment Themes