diff options
author | Marti Maria <info@littlecms.com> | 2012-02-04 17:41:27 +0100 |
---|---|---|
committer | Marti Maria <info@littlecms.com> | 2012-02-04 17:41:27 +0100 |
commit | 8c6d0897c0d488f3da1a5d31656385bf2e996fd8 (patch) | |
tree | 5557349012a1e74686f52b27f66ce8d911012753 /utils/transicc | |
parent | 77c6f2aa568baf67a8a48d0cdeb2cf982e4f34a4 (diff) | |
download | lcms2-8c6d0897c0d488f3da1a5d31656385bf2e996fd8.tar.gz |
Porting several changes upstream
Diffstat (limited to 'utils/transicc')
-rw-r--r-- | utils/transicc/transicc.c | 91 |
1 files changed, 91 insertions, 0 deletions
diff --git a/utils/transicc/transicc.c b/utils/transicc/transicc.c index 2181359..f1bcb6d 100644 --- a/utils/transicc/transicc.c +++ b/utils/transicc/transicc.c @@ -909,6 +909,36 @@ void TakeCGATSValues(int nPatch, cmsFloat64Number Float[]) Float[2] = GetIT8Val("CMY_Y", 1.0); break; + case cmsSig1colorData: + case cmsSig2colorData: + case cmsSig3colorData: + case cmsSig4colorData: + case cmsSig5colorData: + case cmsSig6colorData: + case cmsSig7colorData: + case cmsSig8colorData: + case cmsSig9colorData: + case cmsSig10colorData: + case cmsSig11colorData: + case cmsSig12colorData: + case cmsSig13colorData: + case cmsSig14colorData: + case cmsSig15colorData: + { + cmsUInt32Number i, n; + + n = cmsChannelsOf(InputColorSpace); + for (i=0; i < n; i++) { + + char Buffer[255]; + + sprintf(Buffer, "%dCLR_%d", n, i+1); + Float[i] = GetIT8Val(Buffer, 100.0); + } + + } + break; + default: { cmsUInt32Number i, n; @@ -987,6 +1017,37 @@ void PutCGATSValues(cmsFloat64Number Float[]) SetCGATSfld("CMY_Y", Float[2]); break; + case cmsSig1colorData: + case cmsSig2colorData: + case cmsSig3colorData: + case cmsSig4colorData: + case cmsSig5colorData: + case cmsSig6colorData: + case cmsSig7colorData: + case cmsSig8colorData: + case cmsSig9colorData: + case cmsSig10colorData: + case cmsSig11colorData: + case cmsSig12colorData: + case cmsSig13colorData: + case cmsSig14colorData: + case cmsSig15colorData: + { + + cmsUInt32Number i, n; + + n = cmsChannelsOf(InputColorSpace); + for (i=0; i < n; i++) { + + char Buffer[255]; + + sprintf(Buffer, "%dCLR_%d", n, i+1); + + SetCGATSfld(Buffer, Float[i] * 100.0); + } + } + break; + default: { @@ -1074,6 +1135,36 @@ void SetOutputDataFormat(void) cmsIT8SetDataFormat(hIT8out, 3, "CMY_Y"); break; + case cmsSig1colorData: + case cmsSig2colorData: + case cmsSig3colorData: + case cmsSig4colorData: + case cmsSig5colorData: + case cmsSig6colorData: + case cmsSig7colorData: + case cmsSig8colorData: + case cmsSig9colorData: + case cmsSig10colorData: + case cmsSig11colorData: + case cmsSig12colorData: + case cmsSig13colorData: + case cmsSig14colorData: + case cmsSig15colorData: + { + int i, n; + char Buffer[255]; + + n = cmsChannelsOf(OutputColorSpace); + cmsIT8SetPropertyDbl(hIT8out, "NUMBER_OF_FIELDS", n+1); + cmsIT8SetDataFormat(hIT8out, 0, "SAMPLE_ID"); + + for (i=1; i <= n; i++) { + sprintf(Buffer, "%dCLR_%d", n, i); + cmsIT8SetDataFormat(hIT8out, i, Buffer); + } + } + break; + default: { int i, n; |