AMFM

application/x-font-adobe-metric

Safe

Magic Bytes

Offset: 0
53 74 61 72 74 46 6F 6E 74 4D 65 74 72 69 63 73

The Adobe Font Metrics (AMFM) format is a text-based specification developed by Adobe Systems to provide character layout data for PostScript fonts. It is utilized by desktop publishing software to determine glyph widths, kerning pairs, and bounding box dimensions without accessing the actual font program. As a legacy ASCII format, it is considered safe for parsing, although it has largely been superseded by modern OpenType and TrueType font specifications.

Extension

.amfm

MIME Type

application/x-font-adobe-metric

Byte Offset

0

Risk Level

Safe

Validation Code

How to validate .amfm files in Python

Python
def is_amfm(file_path: str) -> bool:
    """Check if file is a valid AMFM by magic bytes."""
    signature = bytes([0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x6F, 0x6E, 0x74, 0x4D, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73])
    with open(file_path, "rb") as f:
        return f.read(16) == signature

How to validate .amfm files in Node.js

Node.js
function isAMFM(buffer: Buffer): boolean {
  const signature = Buffer.from([0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x6F, 0x6E, 0x74, 0x4D, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73]);
  return buffer.subarray(0, 16).equals(signature);
}
Go
func IsAMFM(data []byte) bool {
    signature := []byte{0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x6F, 0x6E, 0x74, 0x4D, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73}
    if len(data) < 16 {
        return false
    }
    return bytes.Equal(data[:16], signature)
}

API Endpoint

GET /api/v1/amfm
curl https://filesignature.org/api/v1/amfm

Related Formats