Last week, I blogged about the removal of the graphics magick file format filter in Krita, and that it would mean that we need to write directly our own support for many file formats, using low-levels library when relevant and available. And by forcing us to do this work, the support for file formats in 2.2 will rock.
Among the three mostly usefull file formats that were delivered by the gmagick file format filter, there is XCF, the file format of the Gimp. After my blog, pusling (Sune Vuorela of the debian KDE team) reminded me about xcftools, a tool written by Henning Makholm that extract information from XCF files. Despite not being a library, the code to parse XCF files is well seperated from the command line logic, and I imported it in Krita (might be a good idea to turn it into a real library ?).
As mentioned, the previous filter was not really good, we were only able to get the layers, but no masks or no composite information, or opacity, as reported in this bug 106730. And with the xcftools based filter, we can read all that information, making XCF a first class citizen in Krita. There might be some issues with composite ops that behaves differently on some cases between application, but that something that we would need to fix as well.
For the other way around, to import from Krita into the Gimp, the OpenRaster Archiving format would be the way to go.
About other file formats, Boudewijn is already working on PSD support. The last important one is GIF support, which will probably be done using libgif.