Gents,
I have recently started the process of modifying Ghostscript to be
able to use lcms v2 rather than v1 as is currently the case.
In so doing, I have found a couple of things I've had to tweak within
the library. I plan to start to feed these back in the hopes that
either they will be adopted within the release versions of the
library, or that you can inform me how to get the same effects
without such modifications.
I'll break these submissions down into 1 per email for simplicity. So
the first one...
In lcms v1, the profile structure type was public, so we could read
the current input and output types for a given transform directly. In
lcms v2 you have taken the (very reasonable) step of hiding the
structure away as an opaque type. In order to easily use our code
that calls cmsChangeBuffersFormat, we'd like the ability to get the
current input and output format for a transform.
I have therefore added 2 trivial functions to the API to achieve
this. Patch attached below.
Thanks,
Robin
--
diff --git a/include/lcms2.h b/include/lcms2.h
index 16c1b46..c53ff36 100644
--- a/include/lcms2.h
+++ b/include/lcms2.h
@@ -1620,6 +1620,8 @@ CMSAPI cmsBool CMSEXPORT
cmsChangeBuffersFormat(cmsHTRANSFORM hTransfor
cmsUInt32Number
InputFormat,
cmsUInt32Number
OutputFormat);
+CMSAPI cmsUInt32Number CMSEXPORT cmsGetTransformInputFormat(cmsHTRANSFORM);
+CMSAPI cmsUInt32Number CMSEXPORT cmsGetTransformOutputFormat(cmsHTRANSFORM);
// PostScript ColorRenderingDictionary and ColorSpaceArray
----------------------------------------------------
diff --git a/src/cmsxform.c b/src/cmsxform.c
index 0d34001..04b4efb 100644
--- a/src/cmsxform.c
+++ b/src/cmsxform.c
@@ -787,3 +787,17 @@ cmsBool CMSEXPORT cmsChangeBuffersFormat(cmsHTRANSFORM
hTransform,
xform ->ToOutput = ToOutput;
return TRUE;
}
+
+CMSAPI cmsUInt32Number CMSEXPORT cmsGetTransformInputFormat(cmsHTRANSFORM
hTransform)
+{
+ _cmsTRANSFORM* xform = (_cmsTRANSFORM*) hTransform;
+
+ return xform->InputFormat;
+}
+
+CMSAPI cmsUInt32Number CMSEXPORT cmsGetTransformOutputFormat(cmsHTRANSFORM
hTransform)
+{
+ _cmsTRANSFORM* xform = (_cmsTRANSFORM*) hTransform;
+
+ return xform->OutputFormat;
+}
------------------------------------------------------------------------------
Create and publish websites with WebMatrix
Use the most popular FREE web apps or write code yourself;
WebMatrix provides all the features you need to develop and
publish your website. http://p.sf.net/sfu/ms-webmatrix-sf
_______________________________________________
Lcms-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/lcms-user