Free webp to jpg
Corel-CMX

Corel Metafile Exchange

image/x-cmx Released Mid-1990s · by Corel Corporation

The image/x-cmx MIME type represents the Corel Metafile Exchange (CMX) format, a proprietary vector graphics format developed by Corel Corporation. Introduced in the mid-1990s alongside the CorelDRAW suite, CMX was specifically designed to facilitate the easy exchange of vector graphics, clip art, and page layouts between different Corel applications and third-party software. Built on the RIFF (Resource Interchange File Format) container architecture, CMX stores scalable drawing commands rather than a pixel grid, maintaining high fidelity but remaining largely restricted to the Corel software ecosystem.

Vector Graphics & Legacy Transparency Production Ready

Technical Specifications

MIME Type
image/x-cmx
Extensions
.cmx
Container
RIFF (Resource Interchange File Format)
Compression
Uncompressed Vector Commands & Embedded Raster Compression (Optional)
Algorithms
None (Vector)
Color Depth
Vector Data, Supports embedded bitmaps
Metadata
ICC
Capabilities
Transparency
Animation
Progressive Loading
Alpha Channel
HDR Support
Official Specification
Aliases: application/x-cmximage/cmx

Magic Bytes & HTTP Headers

File Signature (Magic Bytes)
52 49 46 46 (skip 4) 43 4D 58 31
ASCII: RIFF....CMX1
HTTP Headers
Content-Type: image/x-cmx
Content-Type: application/x-cmx
HTML Accept Attribute
accept="image/x-cmx, .cmx"

Browser Support Matrix

Browser Status Min Version
Chrome Chrome
Not Supported
Firefox Firefox
Not Supported
Safari Safari
Not Supported
Edge Edge
Not Supported
Internet Explorer Internet Explorer
Not Supported Legacy

Advantages & Limitations

Advantages
  • Preserves rich vector attributes and layer groupings native to the Corel drawing engine better than standard WMF files
  • Significantly smaller footprint than full CDR project files, making it excellent for early CD-ROM clip art distribution
  • Maintains decent support in the open-source community thanks to libraries like libcdr
Limitations
  • Proprietary format strictly tied to Corel's ecosystem, often causing compatibility issues with Adobe software
  • Zero support in web browsers; must be converted to SVG for modern web usage
  • Largely obsolete for modern workflows, superseded by PDF and SVG

Developer Code Snippets

import magic
# Libmagic can usually detect the RIFF container and CMX signature
print(magic.from_file('clipart.cmx', mime=True)) # Outputs 'image/x-cmx' or 'image/cmx'

# Manual RIFF header check:
with open('clipart.cmx', 'rb') as f:
    header = f.read(12)
    if len(header) >= 12 and header[0:4] == b'RIFF' and header[8:11] == b'CMX':
        print('Is Corel CMX: True')
const fs = require('fs');
// Manually detecting the RIFF/CMX magic bytes
const buffer = Buffer.alloc(12);
const fd = fs.openSync('clipart.cmx', 'r');
fs.readSync(fd, buffer, 0, 12, 0);
fs.closeSync(fd);
const isRIFF = buffer.toString('ascii', 0, 4) === 'RIFF';
const isCMX = buffer.toString('ascii', 8, 11) === 'CMX';
console.log('Is Corel CMX:', isRIFF && isCMX);
import (
    "bytes"
    "net/http"
)
// Native Go HTTP detection will likely only see the generic RIFF header (often mapping to 'video/avi' or 'application/octet-stream').
// You must explicitly check the bytes at offset 8.
// isCMX := len(buf) > 12 && bytes.Equal(buf[0:4], []byte("RIFF")) && bytes.Equal(buf[8:11], []byte("CMX"))
$mime = mime_content_type('clipart.cmx');
echo $mime; // Standard PHP setups will often resolve this to generic 'application/octet-stream' without custom magic database rules.

File Detection Steps

How to programmatically detect a image/x-cmx file by reading its raw bytes:

  1. 1 Check the first 4 bytes for the RIFF ASCII signature (Hex: 52 49 46 46).
  2. 2 Skip the next 4 bytes (which dictate the total file size).
  3. 3 Check bytes 8-11 for the CMX specific signatures: 'CMX1', 'CMX2', or 'CMX3' (Hex: 43 4D 58 31, etc.).

Software Support

C
CorelDRAW
I
Inkscape (via libcdr / UniConvertor)
L
LibreOffice Draw
X
XnView

Conversion Tools

Share & Embed

Markdown Badge
Corel-CMX Format Badge
[![Corel-CMX Format](https://freewebptojpg.com/mime/image/corel-cmx/badge.svg)](https://freewebptojpg.com/mime/image/corel-cmx)
Interactive iframe Widget
<iframe src="https://freewebptojpg.com/mime/image/corel-cmx/embed" width="100%" height="280" style="border:1px solid #cbd5e1;border-radius:8px;" title="Corel-CMX Specs"></iframe>

JSON API

All data on this page is available as a free, open JSON API. Use it in your project, documentation, or tooling.

GET https://freewebptojpg.com/mime/image/corel-cmx.json Open JSON
Free to use
No auth required
CORS enabled
Use from any domain
Cached 24h
Cache-Control headers set

Frequently Asked Questions

What is a CMX file?

A CMX (Corel Metafile Exchange) file is a vector image format created by Corel. It was widely used in the 1990s and 2000s for distributing clip art collections (like Corel Mega Gallery) and sharing vector graphics between different design applications.

What is the difference between CMX and CDR files?

CDR is the primary, complex working document format for CorelDRAW, supporting multi-page layouts and advanced program-specific features. CMX is a simplified, highly portable "exchange" format intended solely for storing single vector illustrations or clip art.

Can Adobe Illustrator open Corel CMX files?

Adobe Illustrator's native support for CMX is notoriously unreliable and often fails on newer versions. It is highly recommended to open the file in CorelDRAW, Inkscape, or LibreOffice Draw, and then export it to a standard format like SVG, PDF, or EPS.

Related Formats

Share this format