diff options
| author | Michele Calgaro <michele.calgaro@yahoo.it> | 2020-09-11 14:38:47 +0900 |
|---|---|---|
| committer | Michele Calgaro <michele.calgaro@yahoo.it> | 2020-09-11 14:38:47 +0900 |
| commit | 884c8093d63402a1ad0b502244b791e3c6782be3 (patch) | |
| tree | a600d4ab0d431a2bdfe4c15b70df43c14fbd8dd0 /debian/lcms/lcms-1.19.dfsg2/Delphi/Samples/getxyz.pas | |
| parent | 14e1aa2006796f147f3f4811fb908a6b01e79253 (diff) | |
| download | extra-dependencies-884c8093d63402a1ad0b502244b791e3c6782be3.tar.gz extra-dependencies-884c8093d63402a1ad0b502244b791e3c6782be3.zip | |
Added debian extra dependency packages.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
Diffstat (limited to 'debian/lcms/lcms-1.19.dfsg2/Delphi/Samples/getxyz.pas')
| -rwxr-xr-x | debian/lcms/lcms-1.19.dfsg2/Delphi/Samples/getxyz.pas | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/debian/lcms/lcms-1.19.dfsg2/Delphi/Samples/getxyz.pas b/debian/lcms/lcms-1.19.dfsg2/Delphi/Samples/getxyz.pas new file mode 100755 index 00000000..f8eeffe5 --- /dev/null +++ b/debian/lcms/lcms-1.19.dfsg2/Delphi/Samples/getxyz.pas @@ -0,0 +1,62 @@ +program TestXYZ;
+uses lcmsdll;
+
+
+type
+ TRGB8 = Packed record
+ r, g, b : Byte
+ END;
+
+var
+
+ InputProfile, OutputProfile : cmsHPROFILE;
+ Transform: cmsHTRANSFORM;
+ RGB8: TRGB8;
+ XYZ: cmsCIEXYZ;
+
+begin
+ InputProfile := cmsOpenProfileFromFile('profile.icm','r');
+ OutputProfile := cmsCreateXYZProfile();
+
+ Transform := cmsCreateTransform(InputProfile,
+ TYPE_RGB_8,
+ OutputProfile,
+ TYPE_XYZ_DBL,
+ INTENT_ABSOLUTE_COLORIMETRIC, cmsFLAGS_NOTPRECALC);
+
+ WriteLn('Enter RGB (0-255) or all 0 to end');
+ REPEAT
+
+ Write('R?'); ReadLn(RGB8.r);
+ Write('G?'); ReadLn(RGB8.g);
+ Write('B?'); ReadLn(RGB8.b);
+
+
+ cmsDoTransform(Transform,
+ @RGB8,
+ @XYZ,
+ 1);
+
+
+ {Transport to radiance}
+
+ XYZ.X := XYZ.X * 100.;
+ XYZ.Y := XYZ.Y * 100.;
+ XYZ.Z := XYZ.Z * 100.;
+
+
+ WriteLn; WriteLn('XYZ (as viewed on D50 box)');
+
+ Write('X='); WriteLn(XYZ.X:3:2);
+ Write('Y='); WriteLn(XYZ.Y:3:2);
+ Write('Z='); WriteLn(XYZ.Z:3:2);
+
+ UNTIL ((RGB8.r = 0) and (RGB8.g = 0) and (RGB8.b = 0));
+
+
+ cmsDeleteTransform(Transform);
+ cmsCloseProfile(InputProfile);
+ cmsCloseProfile(OutputProfile)
+
+END.
+
|
