diff options
Diffstat (limited to 'tree/colorspace.c')
-rw-r--r-- | tree/colorspace.c | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/tree/colorspace.c b/tree/colorspace.c new file mode 100644 index 00000000..6ff61d3e --- /dev/null +++ b/tree/colorspace.c @@ -0,0 +1,34 @@ +#include <fitz.h> + +void +fz_freecolorspace(fz_colorspace *cs) +{ + if (cs->frozen) + return; + if (cs->free) + cs->free(cs); + fz_free(cs); +} + +void +fz_convertcolor(fz_colorspace *srcs, float *srcv, fz_colorspace *dsts, float *dstv) +{ + float xyz[3]; + int i; + if (srcs != dsts) + { +printf("convert color from %s to %s\n ", srcs->name, dsts->name); +for(i=0;i<srcs->n;i++)printf("%g ", srcv[i]);printf("\n"); + srcs->toxyz(srcs, srcv, xyz); +printf(" %g %g %g\n ", xyz[0], xyz[1], xyz[2]); + dsts->fromxyz(dsts, xyz, dstv); +for(i=0;i<dsts->n;i++)printf("%g ", dstv[i]);printf("\n"); + } + else + { + int i; + for (i = 0; i < srcs->n; i++) + dstv[i] = srcv[i]; + } +} + |