viewhack

XCF viewer: open a GIMP file without GIMP

Someone sent you an .xcf and you do not have GIMP? Drop it here. You get the picture as GIMP shows it, the canvas size, bit depth and colour mode, and every layer with a thumbnail and a show/hide switch, groups and text layers included. Save the whole picture or any single layer as a PNG. Works with files from GIMP 1 to GIMP 3.2, and with compressed .xcf.gz.

The file is read by this tab only. It is never uploaded.

What it shows

What it cannot do

XCF versions and the GIMP that opens them

Bytes 10 to 13 of every XCF, right after gimp xcf , say its version: file for version 0, then v001, v002 and so on. GIMP saves with the lowest version that can hold the image, so a simple picture saved by GIMP 2.10 can still be version 3. When an older GIMP refuses a file, this is why; the page shows the version and the oldest GIMP that reads it.

XCF versionFirst GIMPWhat it added
0 and 10.99.16 (1997)The format; version 1 adds palettes for indexed images
21.3.10 / 2.0Soft light, grain extract, grain merge; better paths
32.7.1 / 2.8Layer groups
4 to 132.10 (2018)16- and 32-bit and floating-point precision, linear light, zlib tiles, new layer modes, 64-bit offsets for files over 4 GB (version 11 and up)
14 to 233.0 (2025)Several selected layers, item sets, paths as their own structures (18), live filters (20)
24 to 263.2Vector layers and link layers (24, 25), filters on channels (26)

Useful to know

Why an .xcf will not open in most programs
Unlike a PSD, which usually carries a flattened copy of the image, an XCF stores only the layers, cut into 64 × 64 pixel tiles. A program has to read every tile of every layer and stack them with GIMP's layer modes to show anything, so photo viewers, browsers and most converters do not try. Krita and Photopea read many XCF files; ImageMagick reads older ones.
Getting a plain PNG or JPEG for someone
“Save picture as PNG” gives the whole image with transparency kept. In GIMP the same thing is File › Export As; File › Save always writes XCF.
Indexed images and transparency
In an indexed (palette) image GIMP has no partial transparency: an alpha value of 128 or more is fully opaque, anything lower is fully transparent. The page follows the same rule.
Linear and perceptual precision
Since GIMP 2.10 a 16- or 32-bit image can store light linearly (“linear light”) or the way screens encode it (“perceptual”, sRGB). The page converts both to 8-bit sRGB for display, so a linear image looks as it does in GIMP, not darker.
Compressed XCF
Tiles are run-length encoded by default; GIMP 2.10 and 3 use zlib instead when “better but slower compression” is ticked in the Save dialog. The facts here say which one a file uses. Separately, saving as name.xcf.gz compresses the whole file with gzip.