{"id":"x-xcf","mimeType":"image/x-xcf","name":"GIMP Image Format","shortName":"XCF","category":"Raster Graphics \u0026 Layers","extensions":[".xcf"],"description":"The image/x-xcf MIME type represents the native project file format used by GIMP (GNU Image Manipulation Program). Standing originally for 'Experimental Computing Facility' (and later re-purposed as 'GIMP Color Format'), XCF is a comprehensive layered image format. Unlike flattened delivery formats such as JPEG or PNG, an XCF file preserves the complete editing state of a project—including individual layers, channels, transparency masks, paths, text data, and active selection boundaries. Because it is GIMP's internal working format, it is tightly coupled with GIMP's rendering engine and is rarely used outside of direct photo editing pipelines or asset creation workflows.","seo":{"title":"image/x-xcf MIME Type | Developer Reference for GIMP XCF Format","description":"Complete reference for the image/x-xcf MIME type: GIMP native project format, XCF layers and channels, magic bytes, and graphic asset management.","faqs":[{"question":"What is an XCF file?","answer":"An XCF file is the native project file format created by GIMP (GNU Image Manipulation Program). It stores all editing data for an image, including layers, transparency masks, channels, and paths, allowing you to resume editing later."},{"question":"Can I open an XCF file in a web browser?","answer":"No. Modern web browsers do not natively support XCF files. To display an XCF file on the web, you must open it in GIMP or a compatible image editor and export it to a web-friendly format like PNG, JPEG, or WebP."},{"question":"What is the difference between an XCF file and a PSD file?","answer":"They serve the exact same purpose for different applications. XCF is the native layered project format for GIMP, whereas PSD (Photoshop Document) is the native layered project format for Adobe Photoshop."}]},"index":{"compression":["None","RLE (Run-Length Encoding)","Zlib / Deflate (In newer GIMP versions)"],"browserSupport":{"score":1,"label":"None"},"commonUses":["GIMP Native Project Archival","Layered Photo Editing and Graphic Design","Intermediary Asset Preparation for Export"]},"technical":{"magicBytes":{"hex":"67 69 6D 70 20 78 63 66","ascii":"gimp xcf"},"container":"GIMP Hierarchical Chunk Container","compressionAlgorithm":["None","RLE","Zlib"],"colorDepth":["8-bit per channel","16-bit per channel","32-bit floating point"],"transparency":true,"animation":true,"metadata":{"exif":true,"xmp":true,"iccProfile":true},"alphaChannel":true,"progressiveLoading":false,"hdrSupport":true},"history":{"developer":"Spencer Kimball, Peter Mattis, and the GIMP Development Team","released":"1995","specification":"GIMP Core Source Documentation"},"browserSupport":{"chrome":false,"chromeVersion":"None","firefox":false,"firefoxVersion":"None","safari":false,"safariVersion":"None","edge":false,"edgeVersion":"None","internetExplorer":false},"softwareSupport":[{"name":"GIMP","logo":"gimp.svg"},{"name":"ImageMagick","logo":"image-magic.webp"},{"name":"Krita","logo":""},{"name":"XnView","logo":""}],"conversion":{"convertTo":["png","jpeg","webp","tiff"],"convertFrom":["psd","png","jpeg"]},"developer":{"httpHeaders":[{"header":"Content-Type","value":"image/x-xcf"},{"header":"Content-Type","value":"image/xcf"}],"htmlAccept":"image/x-xcf, .xcf","fileDetection":["Every valid GIMP XCF file begins with a distinct human-readable magic signature at byte offset 0.","Check the first 9-14 bytes for the ASCII string 'gimp xcf' followed by the version string (e.g., 'gimp xcf v001' or 'gimp xcf v002', Hex: 67 69 6D 70 20 78 63 66 ...).","This predictable file signature makes programmatic identification of XCF files exceptionally reliable."]},"prosCons":{"pros":["Preserves all non-destructive editing elements, layer hierarchies, masks, and alpha channels across GIMP sessions","Open and thoroughly documented specification within the open-source community, allowing third-party tools like Krita and ImageMagick to read project files","Reliable magic byte header prevents misidentification"],"cons":["Massive file sizes because raw, unflattened layer bitmaps and masks are stored directly within the project archive","Completely proprietary to the GIMP ecosystem for deep editing; cannot be natively rendered or parsed by web browsers","Third-party software supporting XCF may occasionally struggle to render complex text layer adjustments or advanced layer blend modes identically to GIMP"]},"specifications":{"url":"https://www.gimp.org/","rfc":"","mimeAliases":["image/xcf","application/x-xcf"]},"developerSnippets":{"python":"import magic\n# Libmagic effortlessly identifies GIMP XCF files via the 'gimp xcf' signature\nprint(magic.from_file('project.xcf', mime=True)) # Outputs 'image/x-xcf'","nodejs":"const fs = require('fs');\n// Manually checking the first 8 bytes for the 'gimp xcf' magic header\nconst buffer = Buffer.alloc(8);\nconst fd = fs.openSync('project.xcf', 'r');\nfs.readSync(fd, buffer, 0, 8, 0);\nfs.closeSync(fd);\nconst isXCF = buffer.toString('ascii', 0, 8) === 'gimp xcf';\nconsole.log('Is GIMP XCF Project:', isXCF);","go":"import (\n    \"bytes\"\n    \"net/http\"\n)\n// Native Go HTTP detection reads the prefix.\n// isXCF := bytes.HasPrefix(buf, []byte(\"gimp xcf\"))","php":"$mime = mime_content_type('project.xcf');\necho $mime; // Standard PHP setups with updated magic database definitions will return 'image/x-xcf'"},"relatedFormats":["png"]}
