{"success":true,"data":{"ext":"fh9","name":"FH9","description":"FH9 is a vector graphics file format associated with Adobe FreeHand 9, originally developed by Macromedia and later maintained by Adobe after its acquisition of the product line. It was used for illustrations, page layouts, logos, and print-oriented artwork in desktop publishing and design workflows. The format is now legacy and may require older software or converters to open; files from untrusted sources should be handled with standard caution.","mime":["image/x-freehand"],"risk_level":"Safe","signatures":[{"hex":"41 47 44 32","offset":0,"sources":[{"name":"Apache Tika","url":"https://raw.githubusercontent.com/apache/tika/main/tika-core/src/main/resources/org/apache/tika/mime/tika-mimetypes.xml"}]},{"hex":"41 47 44 33","offset":0,"sources":[{"name":"Apache Tika","url":"https://raw.githubusercontent.com/apache/tika/main/tika-core/src/main/resources/org/apache/tika/mime/tika-mimetypes.xml"}]},{"hex":"41 47 44 34","offset":0,"sources":[{"name":"Apache Tika","url":"https://raw.githubusercontent.com/apache/tika/main/tika-core/src/main/resources/org/apache/tika/mime/tika-mimetypes.xml"}]},{"hex":"46 72 65 65 48 61 6E 64 31 30","offset":0,"sources":[{"name":"Apache Tika","url":"https://raw.githubusercontent.com/apache/tika/main/tika-core/src/main/resources/org/apache/tika/mime/tika-mimetypes.xml"}]},{"hex":"46 72 65 65 48 61 6E 64 31 31","offset":0,"sources":[{"name":"Apache Tika","url":"https://raw.githubusercontent.com/apache/tika/main/tika-core/src/main/resources/org/apache/tika/mime/tika-mimetypes.xml"}]},{"hex":"46 72 65 65 48 61 6E 64 31 32","offset":0,"sources":[{"name":"Apache Tika","url":"https://raw.githubusercontent.com/apache/tika/main/tika-core/src/main/resources/org/apache/tika/mime/tika-mimetypes.xml"}]}],"related":["fh","fh10","fh11","fh12","fh4","fh40"],"usage":{"python":"def is_fh9(file_path: str) -> bool:\n    \"\"\"Check if file is a valid FH9 by magic bytes.\"\"\"\n    signature = bytes([0x41, 0x47, 0x44, 0x32])\n    with open(file_path, \"rb\") as f:\n        return f.read(4) == signature","node":"function isFH9(buffer: Buffer): boolean {\n  const signature = Buffer.from([0x41, 0x47, 0x44, 0x32]);\n  return buffer.subarray(0, 4).equals(signature);\n}","go":"func IsFH9(data []byte) bool {\n    signature := []byte{0x41, 0x47, 0x44, 0x32}\n    if len(data) < 4 {\n        return false\n    }\n    return bytes.Equal(data[:4], signature)\n}"},"category":"Images"}}