summaryrefslogtreecommitdiffstats
path: root/chalk/doc/impexp.txt
blob: 123807dc8ab5c3fb315dcd426969fc973ddf38ad (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
THIS IS OBSOLETE

Import/Export & ImageMagick

Import/Export is currently hardcoded to use ImageMagick and the RGB colormodel.
Additionally, export is broken and even when working, only supported exporting
to images with one layer.

Kimgio is not suitable for Chalk since it only supports importing images as one 
QImage.

The new design should support plugins instead of hardcoded filters, so we can
add an ImageMagick plugin, an openExr plugin or any other kind of image readers.

Issues:

        * conflicts -- more than one plugin might want to support JPEG, for instance.
        * configuration -- compression settings, optional flattening, adding
          profiles, colorspace conversion
        * identification -- no sane way to distinguish a particular type of tiff from
          another type, for instance.
        * colormodel integration -- basically, there are cmyk, rgb and grayscale
          images in a variety of bit depths (e.g., openexr supports 16 bit and half).
          Colorspaces must interpret the file data to build Chalk pixels and must
          unpack chalk pixels to a format a file exporter (e.g, ImageMagick pixel
          packets) can work with. This means that plugins can depend on the presence
          of other plugins.
	* Import/export should be lossless -- i.e., all extra information any file
	  format may attach to the image should be kept around and used on export.
	  Examples are Exif data and profiles, but also Gimp comments.


KisAnnotation contains metadata about an image that is grabbed from
a file, such as exif data or TIFF tags and that we should be able to save.

KisAnnotation

	KisAnnotation(QString type, QString annotation);
	KisAnnotation(QString type, QByteArray annotation);;