As I told to Wolthera, I'd like to add support for SwatchBooker palettes.
Format highlights:
- It is a ZIP file with extension .sbz and declared unofficial MIME type application/swatchbook
- Contents:
- swatchbook.xml is the palette itself
- <file name>.jpg/png is the palette's thumbnail/icon
- profiles/*.icc contains all profiles referred to by the palette
- Metadata: format, type, description, license, rights, title.
- SwatchBook.xml itself
- separated into materials (colors) and book (those included in the palette)
- materials is one or more colors, each one with metadata (id + title, possibly localized with xml:lang) and one or more definitions in a given colorspace
Questions and issues I've found:
- KoColorSet should be refactored to read the file only once. Currently, it reads the whole contents into a QByteArray, which I cannot use with KoStore or KZip AFAIK.
- I can use this opportunity to switch to KisMimeDatabase instead for detecting XML and ZIP.
- How to deal with localized color names? Till KoColorSet supports i18n, which one to assign as name?
- How to deal with multiple color definitions? The specs say
There can be several values definitions for each color. They'll be treated in order of appearance.
so I guess it should be set to the first one read (again, till KoColorSet supports multiple definitions and/or defines a colorspace priority).
- How to see and edit metadata?