%!PS-Adobe-3.0 EPSF-3.0 www.ps.bam.de/SE90/10L/L90E00XX.PS 20060101 %%BoundingBox: 00 00 414 292 /pdfmark where {pop} {userdict /pdfmark /cleartomark load put} ifelse /languagelevel where {pop languagelevel} {1} ifelse 2 lt { userdict (<<) cvn ([) cvn load put userdict (>>) cvn (]) cvn load put } if [ /Title (PostScript pictures: www.ps.bam.de/SE90/SE90.HTM) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: www.ps.bam.de or http://o2.ps.bam.de) /Keywords (image reproduction, colour devices) /Creator (klaus.Richter@bam.de) /CreationDate (D:2006010112000) /ModDate (D:2006010112000) /DOCINFO pdfmark [ /View [ /Fit ] /DOCVIEW pdfmark %BEG SE90/10L/L90E00ZED Output Linearization (OL) LAB* -> cmyolvnw* 20060101 /sggray {setgray} bind def /sgrgbcolor {setrgbcolor} bind def /sgcmykcolor {setcmykcolor} bind def /sgtransfer {settransfer} bind def /sgcolortransfer {setcolortransfer} bind def /sgcolor {setcolor} bind def %FILE PREPARED FOR MIXED MODE, e. g. input ORS18 and output TLS00 /IMES 0 def %0=LAB* used, no reflection factor necessary %/IMES 1 def /Yre 2.52 def %1=XYZ measurement and standard device reflection /i*ptrsc 0 def %LAB* setcolor to cmy0* / 000n* setcmykcolor %/i*ptrsc 1 def %LAB* setcolor to olv* setrgbcolor / w* setgray %/i*ptrsc 2 def %LAB* setcolor to cmy0* / nnn0* setcmykcolor %/i*ptrsc 3 def %LAB* setcolor to olv* / www* setrgbcolor %/i*ptrsc 4 def %LAB* setcolor to lab* setcolor %/i*ptrsc 5 def %LAB* setcolor to LAB* setcolor %/i*ptrsc 6 def %LAB* setcolor to 000n* setcmykcolor %/i*ptrsc 7 def %LAB* setcolor to w* setgray /ISIN*ioG 0 def %default input for Offset Reflective System (ORS18) %/ISOU*ioG 0 def %default output dto. %/ISIN*ioG 1 def %input for Television Luminous System (TLS00) /ISOU*ioG 1 def %output dto. %/ISIN*ioG 2 def %input for Device Reflective measurement system (DRSXX) %/ISOU*ioG 2 def %output dto. %/ISIN*ioG 3 def %input for Television Luminous Reflection System (TLS18) %/ISOU*ioG 3 def %output dto. %/ISIN*ioG 4 def %input for Natural Luminous System (NLS00) %/ISOU*ioG 4 def %output dto. %/ISIN*ioG 5 def %input for Natural Reflective System (NRS18) %/ISOU*ioG 5 def %output dto. %/ISIN*ioG 6 def %input for Standard Reflective System (SRS18) %/ISOU*ioG 6 def %output dto. %/ISIN*ioG 7 def %input for Standard Reflective System (TLS70) %/ISOU*ioG 7 def %output dto. /iLAB 0 def /ISIO*ioG 0 def /ISRL*ioG 0 def % for io-System, only once %line 36*************************************************************** %line 38*************************************************************** /LAB*ioG {%BEG Procedure LAB*ioG (L=local) %requires ISRL*ioG=0,1,3 /RJGBLAB* 12 array def /RJGBLAB*[ 39.92 58.74 27.99 % r CIE No.09 elementary colours in LAB, D65 81.26 -2.89 71.56 % J CIE No.10 52.23 -42.42 13.60 % G CIE No.11 30.57 1.41 -46.47 % B CIE No.12 ] def /LAB* 36 array def /LAB*a 36 array def /LAB*00 24 array def /LAB*01 24 array def /LAB*02 24 array def /LAB*03 24 array def /LAB*04 24 array def /LAB*05 24 array def /LAB*06 24 array def /LAB*07 24 array def ISRL*ioG 0 eq { %ISRL*ioG=0 /LAB*00 [%D=Device OYLCVMO+NW %for Offset Reflective System (ORS18) 47.94 65.31 52.07 %O 0 90.37 -11.16 96.17 %Y 1 50.90 -62.97 36.71 %L 2 58.62 -30.63 -42.75 %C 3 %see TABle 1 of ISO/IEC 15775:1999-12 25.72 31.45 -44.36 %V 4 48.13 75.20 -6.80 %M 5 18.01 0.50 -0.47 %N 7 95.41 -0.99 4.76 %W 8 ] def %OYLCVMO+NW /LAB*01 [%D=Device OYLCVMO+NW %for Television Luminous System (TLS00) 50.50 76.92 64.55 %O 0 92.66 -20.70 90.75 %Y 1 83.63 -82.76 79.90 %L 2 86.88 -46.17 -13.56 %C 3 %see TABle 1 of ISO/IEC 15775:1999-12 30.39 76.06 -103.6 %V 4 corected 57.30 94.35 -58.42 %M 5 corected 00.01 0.00 0.00 %N 7 corected 95.41 0.00 0.00 %W 8 ] def %OYLCVMO+NW /LAB*02 [%D=Device OYLCVMO+NW %for Device Reflective System (DRSXX) 42.21 65.82 52.84 %O-W 0 cmy0* setcmykcolor 64 90.32 -16.74 106.88 %Y-W 1 cmy0* setcmykcolor 32 48.21 -76.54 32.93 %L-W 2 cmy0* setcmykcolor 80 53.44 -34.16 -45.19 %C-W 3 cmy0* setcmykcolor 0 actual printer 34.16 -2.06 -44.39 %V-W 4 cmy0* setcmykcolor 96 42.71 78.01 0.28 %M-W 5 cmy0* setcmykcolor 16 16.56 -1.42 2.07 %N-W 6 000n* setcmykcolor 48 96.31 -0.12 2.59 %A-W 7 ] def %OYLCVMO+NW /LAB*03 [%D=Device OYLCVMO+NW %for Television Luminous System (TLS18) 52.76 71.63 49.88 %O 0 92.74 -20.03 84.97 %Y 1 84.00 -78.99 73.94 %L 2 87.14 -44.42 -13.12 %C 3 %see TABle 1 of ISO/IEC 15775:1999-12 35.47 64.92 -95.07 %V 4 %see TABle X of ISO/IEC TR 24705:2005-10 59.01 89.33 -55.68 %M 5 %see Annex A, www.ps.bam.de/RLABE.PDF 18.01 0.00 0.00 %N 6 Yr=2.52 95.41 0.00 0.00 %W 7 ] def %OYLCVMO+NW /LAB*04 [%Natural symmetric Luminous System OYLCVMO+NW (NLS00) 31.81 82.62 47.70 %O 0 95.40/2 = 47.70 63.61 00.00 95.40 %Y 1 C*ab = 95.40 31.81 -82.62 47.70 %L 2 0.866 C*ab = 0.866 * 95.40 = 82.62 63.61 -82.62 -47.70 %C 3 delta L*=25.8 31.81 00.00 -95.40 %V 4 43.81=00.01+31.80 63.61 82.62 -47.70 %M 5 69.61=00.01+2*31.80 00.01 0.00 0.00 %N 6 95.40/3 = 31.80 95.41 0.00 0.00 %W 7 95.40*(2/3) = 63.60 ] def %CVMOYLC+NW /LAB*05 [%Natural symmetric Luminous System OYLCVMO+NW (NLS18) 43.81 67.03 38.70 %O 0 77.40/2 = 38.70 69.61 00.00 77.40 %Y 1 C*ab = 77.40 43.81 -67.03 38.70 %L 2 0.866 C*ab = 67.03 69.61 -67.03 -38.70 %C 3 delta L*=25.8 43.81 00.00 -77.40 %V 4 43.81=18.01+25.80 69.61 67.03 -38.70 %M 5 69.61=18.01+2*25.80 18.01 0.00 0.00 %N 6 18.01+77.40/3 = 18.01+25.80=43.81 95.41 0.00 0.00 %W 7 18.01+77.40*(2/3) = 18.01+51.60=69.61 ] def %CVMOYLC+NW /LAB*06 [%Symmetric Reflective System OYLCVMO+NW (SRS18) 56.71 67.03 38.70 %O 0 18.01 + 77.40*0.5 = 18.01 + 38.70 = 56.71 56.71 00.00 77.40 %Y 1 C*ab = 77.40 56.71 -67.03 38.70 %L 2 0.866 C*ab = 67.03 56.71 -67.03 -38.70 %C 3 delta L*=25.8 56.71 00.00 -77.40 %V 4 43.81=18.01+25.80 56.71 67.03 -38.70 %M 5 69.61=18.01+2*25.80 18.01 0.00 0.00 %N 6 95.41 0.00 0.00 %W 7 95.41=18.01+3*25.80 ] def %CVMOYLC+NW /LAB*07 [%D=Device OYLCVMO+NW %for Television Luminous System (TLS70) 76.43 26.27 10.57 %O 0 93.93 -10.77 34.63 %Y 1 89.32 -35.81 27.64 %L 2 90.93 -21.96 -7.08 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 72.10 15.76 -35.64 %V 4 78.50 37.52 -25.24 %M 5 69.70 0.00 0.00 %N 6 Yr=40.32 95.41 0.00 0.00 %W 7 ] def %OYLCVMO+NW } if %ISRL*ioG=0 ISRL*ioG 1 eq { %ISRL*ioG=1 /LAB*00 [%D=Device CVMOYLC+NW %for Television Luminous System (TLS00) 50.50 76.91 64.55 %O 0 92.66 -20.68 90.75 %Y 1 83.62 -82.74 79.90 %L 2 86.88 -46.15 -13.54 %C 3 %see TABle 1 of ISO/IEC 15775:1999-12 30.39 76.06 -103.6 %V 4 %see TABle X of ISO/IEC TR 24705:2005-10 57.31 94.35 -58.40 %M 5 %see Annex A, www.ps.bam.de/RLABE.PDF 00.01 0.00 0.00 %N 6 Yr=0.00 95.41 0.00 0.00 %W 7 ] def %CVMOYLC+NW /LAB*01 [%D=Device CVMOYLC+NW %for Television Luminous System (TLS06) 51.08 75.54 59.69 %O 0 92.68 -20.51 89.24 %Y 1 83.72 -81.79 78.32 %L 2 86.94 -45.72 -13.43 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 31.77 72.91 -101.3 %V 4 57.74 93.06 -57.71 %M 5 05.69 0.00 0.00 %N 6 Yr=0.63 95.41 0.00 0.00 %W 7 ] def %CVMOYLC+NW /LAB*02 [%D=Device CVMOYLC+NW %for Television Luminous System (TLS11) 51.65 74.20 55.83 %O 0 92.70 -20.35 87.77 %Y 1 83.81 -80.85 76.81 %L 2 87.01 -45.28 -13.33 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 33.06 70.03 -99.09 %V 4 58.17 91.80 -57.03 %M 5 10.99 0.00 0.00 %N 6 Yr=1.26 95.41 0.00 0.00 %W 7 ] def %CVMOYLC+NW /LAB*03 [%D=Device CVMOYLC+NW %for Television Luminous System (TLS18) 52.76 71.63 49.88 %O 0 92.74 -20.03 84.97 %Y 1 84.00 -78.99 73.94 %L 2 87.14 -44.42 -13.12 %C 3 %see TABle 1 of ISO/IEC 15775:1999-12 35.47 64.92 -95.07 %V 4 %see TABle X of ISO/IEC TR 24705:2005-10 59.01 89.33 -55.68 %M 5 %see Annex A, www.ps.bam.de/RLABE.PDF 18.01 0.00 0.00 %N 6 Yr=2.52 95.41 0.00 0.00 %W 7 ] def %CVMOYLC+NW /LAB*04 [%D=Device CVMOYLC+NW %for Television Luminous System (TLS27) 54.88 66.84 41.69 %O 0 92.82 -19.39 79.81 %Y 1 84.37 -75.39 68.76 %L 2 87.40 -42.72 -12.70 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 39.70 56.66 -88.02 %V 4 60.64 84.61 -53.08 %M 5 26.85 0.00 0.00 %N 6 Yr=5.04 95.41 0.00 0.00 %W 7 ] def %CVMOYLC+NW /LAB*05 [%D=Device CVMOYLC+NW %for Television Luminous System (TLS38) 58.77 58.45 31.73 %O 0 92.98 -18.11 70.81 %Y 1 85.11 -68.58 60.02 %L 2 87.92 -39.42 -11.87 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 46.64 44.93 -76.56 %V 4 63.71 75.92 -48.22 %M 5 37.99 0.00 0.00 %N 6 Yr=10.08 95.41 0.00 0.00 %W 7 ] def %CVMOYLC+NW /LAB*06 [%D=Device CVMOYLC+NW %for Television Luminous System (TLS52) 65.53 45.06 20.98 %O 0 93.30 -15.61 56.27 %Y 1 86.55 -56.31 46.52 %L 2 88.94 -33.19 -10.24 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 57.17 30.66 -59.40 %V 4 69.22 60.95 -39.57 %M 5 52.02 0.00 0.00 %N 6 Yr=20.16 95.41 0.00 0.00 %W 7 ] def %CVMOYLC+NW /LAB*07 [%D=Device CVMOYLC+NW %for Television Luminous System (TLS70) 76.43 26.27 10.57 %O 0 93.93 -10.77 34.63 %Y 1 89.32 -35.81 27.64 %L 2 90.93 -21.96 -7.08 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 72.10 15.76 -35.64 %V 4 78.50 37.52 -25.24 %M 5 69.70 0.00 0.00 %N 6 Yr=40.32 95.41 0.00 0.00 %W 7 ] def %CVMOYLC+NW } if %ISRL*ioG=1 ISRL*ioG 2 eq { %ISRL*ioG=2 /LAB*00 [%D=Device OYLCVMO+NW %for Offset Luminous System (OLS00) 45.14 71.37 75.54 %O 0 90.22 -10.60 99.51 %Y 1 48.45 -73.19 42.21 %L 2 56.88 -33.11 -47.41 %C 3 %see TABle 1 of ISO/IEC 15775:1999-12 16.48 45.84 -56.22 %V 4 %see TABle X of ISO/IEC TR 24705:2005-10 45.36 81.85 -9.29 %M 5 %see Annex A, www.ps.bam.de/RLABE.PDF 00.01 0.00 0.00 %N 6 Yr=0.00 95.41 0.00 0.00 %W 7 ] def %OYLCVMO+NW /LAB*01 [%D=Device OYLCVMO+NW %for Offset Luminous System (OLS06) 45.87 69.79 66.99 %O 0 90.25 -10.51 97.42 %Y 1 49.08 -70.28 40.08 %L 2 57.33 -32.38 -46.80 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 19.26 40.73 -52.47 %V 4 46.07 80.12 -9.04 %M 5 05.69 0.00 0.00 %N 6 Yr=0.63 95.41 0.00 0.00 %W 7 ] def %OYLCVMO+NW /LAB*02 [%D=Device OYLCVMO+NW %for Offset Luminous System (OLS11) 46.57 68.27 59.62 %O 0 90.29 -10.43 95.45 %Y 1 49.70 -67.60 38.19 %L 2 57.76 -31.68 -46.19 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 21.67 36.81 -49.37 %V 4 46.77 78.45 -8.80 %M 5 10.99 0.00 0.00 %N 6 Yr=1.26 95.41 0.00 0.00 %W 7 ] def %OYLCVMO+NW /LAB*03 [%D=Device OYLCVMO+NW %for Offset Luminous System (OLS18) 47.94 65.39 50.52 %O 0 90.37 -10.26 91.75 %Y 1 50.90 -62.83 34.96 %L 2 58.62 -30.34 -45.01 %C 3 %see TABle 1 of ISO/IEC 15775:1999-12 25.72 31.10 -44.40 %V 4 %see TABle X of ISO/IEC TR 24705:2005-10 48.13 75.28 -8.36 %M 5 %see Annex A, www.ps.bam.de/RLABE.PDF 18.01 0.00 0.00 %N 6 Yr=2.52 95.41 0.00 0.00 %W 7 ] def %OYLCVMO+NW /LAB*04 [%D=Device OYLCVMO+NW %for Offset Luminous System (OLS27) 50.51 60.17 40.13 %O 0 90.52 -9.92 85.20 %Y 1 53.18 -55.04 30.00 %L 2 60.28 -27.91 -42.75 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 32.06 24.02 -37.32 %V 4 50.68 69.50 -7.57 %M 5 26.85 0.00 0.00 %N 6 Yr=5.04 95.41 0.00 0.00 %W 7 ] def %OYLCVMO+NW /LAB*05 [%D=Device OYLCVMO+NW %for Offset Luminous System (OLS38) 55.13 51.42 29.16 %O 0 90.83 -9.25 74.37 %Y 1 57.35 -43.84 23.35 %L 2 63.39 -23.83 -38.56 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 41.26 16.67 -28.49 %V 4 55.27 59.74 -6.32 %M 5 37.99 0.00 0.00 %N 6 Yr=10.08 95.41 0.00 0.00 %W 7 ] def %OYLCVMO+NW /LAB*06 [%D=Device OYLCVMO+NW %for Offset Luminous System (OLS52) 62.90 38.38 18.55 %O 0 91.44 -7.95 57.91 %Y 1 64.49 -30.06 15.67 %L 2 68.98 -17.74 -31.24 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 53.87 10.09 -18.84 %V 4 63.00 44.96 -4.56 %M 5 52.02 0.00 0.00 %N 6 Yr=20.16 95.41 0.00 0.00 %W 7 ] def %OYLCVMO+NW /LAB*07 [%D=Device OYLCVMO+NW %for Offset Luminous System (OLS70) 75.01 21.53 9.07 %O 0 92.64 -5.45 34.85 %Y 1 75.86 -15.50 7.96 %L 2 78.37 -9.90 -19.51 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 70.54 4.74 -9.47 %V 4 75.07 25.47 -2.46 %M 5 69.70 0.00 0.00 %N 6 Yr=40.32 95.41 0.00 0.00 %W 7 ] def %OYLCVMO+NW } if %ISRL*ioG=2 0 1 11 {/sISO exch def /i30 sISO 3 mul def /i31 i30 1 add def /i32 i30 2 add def sISO 7 le { %sISO=0,7 ISIO*ioG 0 eq { %ORS18/TLS00/OLS00 LAB* i30 LAB*00 i30 get put LAB* i31 LAB*00 i31 get put LAB* i32 LAB*00 i32 get put } if ISIO*ioG 1 eq { %TLS00/TLS06/OLS06 LAB* i30 LAB*01 i30 get put LAB* i31 LAB*01 i31 get put LAB* i32 LAB*01 i32 get put } if ISIO*ioG 2 eq { %DRSXX/TLS11/OLS11 LAB* i30 LAB*02 i30 get put LAB* i31 LAB*02 i31 get put LAB* i32 LAB*02 i32 get put } if ISIO*ioG 3 eq { %TLS18/TLS18/OLS18 LAB* i30 LAB*03 i30 get put LAB* i31 LAB*03 i31 get put LAB* i32 LAB*03 i32 get put } if ISIO*ioG 4 eq { %NLS00/TSL28/OLS28 LAB* i30 LAB*04 i30 get put LAB* i31 LAB*04 i31 get put LAB* i32 LAB*04 i32 get put } if ISIO*ioG 5 eq { %NRS18/TLS38/OLS38 LAB* i30 LAB*05 i30 get put LAB* i31 LAB*05 i31 get put LAB* i32 LAB*05 i32 get put } if ISIO*ioG 6 eq { %SRS18/TLS50/OLS50 LAB* i30 LAB*06 i30 get put LAB* i31 LAB*06 i31 get put LAB* i32 LAB*06 i32 get put } if ISIO*ioG 7 eq { %TLS70/TLS70/OLS70 LAB* i30 LAB*07 i30 get put LAB* i31 LAB*07 i31 get put LAB* i32 LAB*07 i32 get put } if } %sISO=0,7 { %sISO=8,11 /jISO sISO 8 sub def /j30 jISO 3 mul def /j31 j30 1 add def /j32 j30 2 add def LAB* i30 RJGBLAB* j30 get put LAB* i31 RJGBLAB* j31 get put LAB* i32 RJGBLAB* j32 get put } ifelse %sISO=0,7 and 8,11 } for /L*Nio LAB* 18 get def /A*Nio LAB* 19 get def /B*Nio LAB* 20 get def /L*Wio LAB* 21 get def /A*Wio LAB* 22 get def /B*Wio LAB* 23 get def /A*Dio A*Wio A*Nio sub def /B*Dio B*Wio B*Nio sub def 0 1 11 {/sISO exch def /i30 sISO 3 mul def /i31 i30 1 add def /i32 i30 2 add def LAB*a i30 LAB* i30 get put /l*CIE LAB* i30 get L*Nio sub L*Wio L*Nio sub div def %system rel. lightn. /a*s A*Wio A*Nio sub l*CIE mul def /b*s B*Wio B*Nio sub l*CIE mul def LAB*a i31 LAB* i31 get A*Nio sub a*s sub put LAB*a i32 LAB* i32 get B*Nio sub b*s sub put } for /cLAB*s0 3 array def %C cyan blue /vLAB*s0 3 array def %V violet blue /mLAB*s0 3 array def %M magenta red /oLAB*s0 3 array def %O orange red /yLAB*s0 3 array def %Y yellow /lLAB*s0 3 array def %L leaf green /nLAB*s0 3 array def %N black /wLAB*s0 3 array def %W white /rLAB*s0 3 array def %R elementary red /jLAB*s0 3 array def %J elementary yellow /gLAB*s0 3 array def %G elementary green /bLAB*s0 3 array def %B elementary blue %Determine Matrix data input or output data oLAB*s0 0 LAB*a 0 get L*Nio sub put oLAB*s0 1 LAB*a 1 get put oLAB*s0 2 LAB*a 2 get put yLAB*s0 0 LAB*a 3 get L*Nio sub put yLAB*s0 1 LAB*a 4 get put yLAB*s0 2 LAB*a 5 get put lLAB*s0 0 LAB*a 6 get L*Nio sub put lLAB*s0 1 LAB*a 7 get put lLAB*s0 2 LAB*a 8 get put cLAB*s0 0 LAB*a 9 get L*Nio sub put cLAB*s0 1 LAB*a 10 get put cLAB*s0 2 LAB*a 11 get put vLAB*s0 0 LAB*a 12 get L*Nio sub put vLAB*s0 1 LAB*a 13 get put vLAB*s0 2 LAB*a 14 get put mLAB*s0 0 LAB*a 15 get L*Nio sub put mLAB*s0 1 LAB*a 16 get put mLAB*s0 2 LAB*a 17 get put nLAB*s0 0 LAB*a 18 get L*Nio sub put nLAB*s0 1 LAB*a 19 get put nLAB*s0 2 LAB*a 20 get put wLAB*s0 0 LAB*a 21 get L*Nio sub put wLAB*s0 1 LAB*a 22 get put wLAB*s0 2 LAB*a 23 get put rLAB*s0 0 LAB*a 24 get L*Nio sub put rLAB*s0 1 LAB*a 25 get put rLAB*s0 2 LAB*a 26 get put jLAB*s0 0 LAB*a 27 get L*Nio sub put jLAB*s0 1 LAB*a 28 get put jLAB*s0 2 LAB*a 29 get put gLAB*s0 0 LAB*a 30 get L*Nio sub put gLAB*s0 1 LAB*a 31 get put gLAB*s0 2 LAB*a 32 get put bLAB*s0 0 LAB*a 33 get L*Nio sub put bLAB*s0 1 LAB*a 34 get put bLAB*s0 2 LAB*a 35 get put % Determine the input or output angle in the A* B* plane % of each of the colours defined above /C*Ang cLAB*s0 2 get cLAB*s0 1 get 0.0001 add atan def /V*Ang vLAB*s0 2 get vLAB*s0 1 get 0.0001 add atan def /M*Ang mLAB*s0 2 get mLAB*s0 1 get 0.0001 add atan def /O*Ang oLAB*s0 2 get oLAB*s0 1 get 0.0001 add atan def /Y*Ang yLAB*s0 2 get yLAB*s0 1 get 0.0001 add atan def /L*Ang lLAB*s0 2 get mLAB*s0 1 get 0.0001 add atan def /N*Ang 0 def /W*Ang 0 def /R*Ang rLAB*s0 2 get rLAB*s0 1 get 0.0001 add atan def /J*Ang jLAB*s0 2 get jLAB*s0 1 get 0.0001 add atan def /G*Ang gLAB*s0 2 get gLAB*s0 1 get 0.0001 add atan def /B*Ang bLAB*s0 2 get bLAB*s0 1 get 0.0001 add atan def % The detprocL below finds the determinant of the Matrix: % | A1 B1 C1 D1 | % | A2 B2 C2 D2 | % | A3 B3 C3 D3 | % | A4 B4 C4 D4 | % /detprocL { %BEG procedure detprocL /term1 B2 C3 mul D4 mul C2 D3 mul B4 mul add D2 B3 mul C4 mul add B4 C3 mul D2 mul sub C4 D3 mul B2 mul sub D4 B3 mul C2 mul sub def /term2 A2 C3 mul D4 mul C2 D3 mul A4 mul add D2 A3 mul C4 mul add A4 C3 mul D2 mul sub C4 D3 mul A2 mul sub D4 A3 mul C2 mul sub def /term3 A2 B3 mul D4 mul B2 D3 mul A4 mul add D2 A3 mul B4 mul add A4 B3 mul D2 mul sub B4 D3 mul A2 mul sub D4 A3 mul B2 mul sub def /term4 A2 B3 mul C4 mul B2 C3 mul A4 mul add C2 A3 mul B4 mul add A4 B3 mul C2 mul sub B4 C3 mul A2 mul sub C4 A3 mul B2 mul sub def /det A1 term1 mul B1 term2 mul sub C1 term3 mul add D1 term4 mul sub def } bind def %END procedure detprocL % The CoeffprocL procedure solves for WhiteCoeff, black Coeff, Col1Coeff and % Col2Coeff in the matrix equation below. It takes as inputs A1->A4 B1->B4 % C1->C4 D1->D4 and s,y,z,t. It solves for these using Cramer's rule. % Note: Cramer's rule is valid only for non-singular matrices, ie |A| not % equal to 0. % % | A1 B1 C1 D1 | |WhiteCoeff| |x| % | A2 B2 C2 D2 | |BlackCoeff| = |y| % | A3 B3 C3 D3 | |Col1Coeff | |z| % | A4 B4 C4 D4 | |Col2Coeff | |t| % A B = C % /CoeffprocL { %BEG procedure CoeffprocL /t exch def /z exch def /y exch def /x exch def /D4 exch def /D3 exch def /D2 exch def /D1 exch def /C4 exch def /C3 exch def /C2 exch def /C1 exch def /B4 exch def /B3 exch def /B2 exch def /B1 exch def /A4 exch def /A3 exch def /A2 exch def /A1 exch def detprocL /den det def % determine white coefficient /temp1 A1 def /temp2 A2 def /temp3 A3 def /temp4 A4 def /A1 x def /A2 y def /A3 z def /A4 t def detprocL /numW det def /A1 temp1 def /A2 temp2 def /A3 temp3 def /A4 temp4 def % determine black coefficient /temp1 B1 def /temp2 B2 def /temp3 B3 def /temp4 B4 def /B1 x def /B2 y def /B3 z def /B4 t def detprocL /numB det def /B1 temp1 def /B2 temp2 def /B3 temp3 def /B4 temp4 def % determine colour1 coefficient /temp1 C1 def /temp2 C2 def /temp3 C3 def /temp4 C4 def /C1 x def /C2 y def /C3 z def /C4 t def detprocL /numCol1 det def /C1 temp1 def /C2 temp2 def /C3 temp3 def /C4 temp4 def % determine colour2 coefficient /temp1 D1 def /temp2 D2 def /temp3 D3 def /temp4 D4 def /D1 x def /D2 y def /D3 z def /D4 t def detprocL /numCol2 det def /D1 temp1 def /D2 temp2 def /D3 temp3 def /D4 temp4 def /WhiteCoeff numW den div def /BlackCoeff numB den div def /Col1Coeff numCol1 den div def /Col2Coeff numCol2 den div def WhiteCoeff BlackCoeff Col1Coeff Col2Coeff % returns these *color data } bind def %BEG procedure CoeffprocL } def %END Procedure LAB*ioG %*********************************************************** /cmyolv*io_to_LAB*ioG { %BEG Procedure transfer cmyolv*io_to_LAB*ioG %input olv* for IMODE=0 and cmy* for IMODE=1 %the following calculations based on olv* %Procedure LAB*inoutL is required in advance IMODE 1 eq {%IMODE=1, input cmy* /o* 1 c* sub def /l* 1 m* sub def /v* 1 y* sub def } if %skip of olv* data <0 and >1 o* 0 le {/o* 0.0001 def} if l* 0 le {/l* 0.0001 def} if v* 0 le {/v* 0.0001 def} if o* 1 ge {/o* 0.9999 def} if l* 1 ge {/l* 0.9999 def} if v* 1 ge {/v* 0.9999 def} if %output olv* and cmy* for both olv* and cmy* input %n*n: relative blackness %r*n: relative chromaticness %w*n: relative whiteness %L*F: CIE lightness L* %A*F: CIE chromaticness a* %B*F: CIE chromaticness b* %C*F: CIE radial chroma Cab* %x*F: x-position of colour F %y*F: y-position of colour F %e*w: eigencolour value of F o* 0 le {/o* 0.0001 def} if l* 0 le {/l* 0.0001 def} if v* 0 le {/v* 0.0001 def} if o* 1 ge {/o* 0.9999 def} if l* 1 ge {/l* 0.9999 def} if v* 1 ge {/v* 0.9999 def} if /tdel 0 def v* l* ge l* o* ge and tdel 0 eq and % v* >= l* >= o* equal y* <= m* <= c* %sector C-V of C-M, C>=M: i*p=0 {/w*n o* def /n*n 1 v* sub def /t*a v* l* sub def /array1 vLAB*s0 def % colour 1 is violet blue /t*b l* o* sub def /array2 cLAB*s0 def % colour 2 is cyan blue /i*p 0 def o* l* sub abs 0.001 le {/i*p 1 def} if /t*p l* l* v* add 0.0001 add div def /tdel 1 def } if % v* >= l* >= o* v* o* ge o* l* ge and tdel 0 eq and % v* >= o* >= l* equal y* <= c* <= m* %sector V-M of C-M, M>=C: i*p=1 {/w*n l* def /n*n 1 v* sub def /t*a v* o* sub def /array1 vLAB*s0 def % colour 1 is violet blue /t*b o* l* sub def /array2 mLAB*s0 def % colour 2 is magenta red /i*p 1 def v* o* sub abs 0.001 le {/i*p 2 def} if /t*p o* o* v* add 0.0001 add div def /tdel 1 def } if % v* >= o* >= l* o* v* ge v* l* ge and tdel 0 eq and % o* >= v* >= l* equal c* <= y* <= m* %sector M-O of M-Y, M>=Y: i*p=2 {/w*n l* def /n*n 1 o* sub def /t*a o* v* sub def /array1 oLAB*s0 def % colour 1 is orange /t*b v* l* sub def /array2 mLAB*s0 def % colour 2 is magenta red /i*p 2 def l* v* sub abs 0.001 le {/i*p 3 def} if /t*p v* v* o* add 0.0001 add div def /tdel 1 def } if % o* >= v* >= l* o* l* ge l* v* ge and tdel 0 eq and % o* >= l* >= v* equal c* <= m* <= y* %sector O-Y of M-Y, Y>=M: i*p=3 {/w*n v* def /n*n 1 o* sub def /t*a o* l* sub def /array1 oLAB*s0 def % colour 1 is orange red /t*b l* v* sub def /array2 yLAB*s0 def % colour 2 is yellow /i*p 3 def o* l* sub abs 0.001 le {/i*p 4 def} if /t*p l* l* o* add 0.0001 add div def /tdel 1 def } if % o* >= l* >= v* l* o* ge o* v* ge and tdel 0 eq and % l* >= o* >= v* equal m* <= c* <= y* %sector Y-L of Y-C, Y>=C: i*p=4 {/w*n v* def /n*n 1 l* sub def /t*a l* o* sub def /array1 lLAB*s0 def % colour 1 is leaf green /t*b o* v* sub def /array2 yLAB*s0 def % colour 2 is yellow /i*p 4 def o* v* sub abs 0.001 le {/i*p 5 def} if /t*p o* o* l* add 0.0001 add div def /tdel 1 def } if % l* >= o* >= v* l* v* ge v* o* ge and tdel 0 eq and % l* >= v* >= o* equal m* <= y* <= c* %sector L-C of Y-C, C>=Y: i*p=5 {/w*n o* def /n*n 1 l* sub def /t*a l* v* sub def /array1 lLAB*s0 def % colour 1 is leaf green /t*b v* o* sub def /array2 cLAB*s0 def % colour 2 is cyan blue /i*p 5 def l* v* sub abs 0.001 le {/i*p 0 def} if /t*p v* v* l* add 0.0001 add div def /tdel 1 def } if % l* >= v* >= o* %achromatic %W: o*, l*, v* = 1.00 1.0 o* sub abs 0.001 le 1.0 l* sub abs 0.001 le and 1.0 v* sub abs 0.001 le and %W special case {/i*p 6 def %W /e*w 0 def /n*n 0 def /w*n 1 def /t*a 0.0001 def /t*b 0.0001 def /t*p 0.0001 def } if %N: o*, l*, v* <= 0.001 o* abs 0.001 le l* abs 0.001 le and v* abs 0.001 le and %N special case {/i*p 6 def %N /e*w 0 def /n*n 1 def /w*n 0 def /t*a 0.0001 def /t*b 0.0001 def /t*p 0.0001 def } if %Achromatic o* l* sub abs 0.001 le l* v* sub abs 0.001 le and %Achromatic special case {/i*p 6 def %N /e*w 0 def /n*n 1 o* sub def /w*n o* def /t*a 0.0001 def /t*b 0.0001 def /t*p 0.0001 def } if /r*n 1 w*n sub n*n sub def /t*n 1 t*p sub def %w0-line of equal relative whiteness in colour triangle: y = 0.5 / h x + yw0 %n0-line of equal relative blackness in colour triangle: y = -0.5 / h x + yn0 %x*F = (yn0 - yw0) h %y*F = 0.5 (yn0 - yw0) + yw0 = 0.5 (yn0 + yw0) /h 0.75 sqrt def /yn0 1 n*n sub def /yw0 w*n def /x*F yn0 yw0 sub h mul def /y*F yn0 yw0 add 0.5 mul def /t*F y*F def /lab*tFa t*F def /lab*cFa r*n def /lab*wFa w*n def /lab*nFa n*n def %x*F / (1-y*F) = e*x / 1 %e*w = e*x /(2h) = [x*F / (1-y*F)]/(2h) %/e*w x*F 1 y*F sub div 2 h mul div def /e*w r*n n*n r*n add 0.0001 add div def %Eigencolor ratio r*n abs 0.001 le r*n abs 0.001 le and {/e*w 0.0001 def} if % with 0 for achromatic (c*n=0) and 1 for whitish colors (n*n=0) %cmyolv*_to_cmy* /c* 1 o* sub def /m* 1 l* sub def /y* 1 v* sub def %cmyolv*_to_LAB*LFs0 %L*Fs0 = w*n wLAB*s0 (0) + n*n nLAB*s0 (0) + t*a array1(0) + t*b array2(0) %A*Fs0 = w*n wLAB*s0 (1) + n*n nLAB*s0 (1) + t*a array1(1) + t*b array2(1) %B*Fs0 = w*n wLAB*s0 (2) + n*n nLAB*s0 (2) + t*a array1(2) + t*b array2(2) /L*Fs0 w*n wLAB*s0 0 get mul n*n nLAB*s0 0 get mul add t*a array1 0 get mul add t*b array2 0 get mul add def /A*Fs0 w*n wLAB*s0 1 get mul n*n nLAB*s0 1 get mul add t*a array1 1 get mul add t*b array2 1 get mul add def /B*Fs0 w*n wLAB*s0 2 get mul n*n nLAB*s0 2 get mul add t*a array1 2 get mul add t*b array2 2 get mul add def /L*Fsm t*a array1 0 get mul t*b array2 0 get mul add L*Nio add def %LAB*Fs0_to_LAB*F /L*F L*Fs0 L*Nio add def /l*CIE L*F L*Nio sub L*Wio L*Nio sub 0.0001 add div def /A*F A*Fs0 A*Nio add A*Dio l*CIE mul add def /B*F B*Fs0 B*Nio add B*Dio l*CIE mul add def /lab*lFa l*CIE def /LAB*LF L*F def /LAB*AF A*F def /LAB*BF B*F def /LAB*LFa L*F def /LAB*AFa A*Fs0 def /LAB*BFa B*Fs0 def %FOR CIELAB LCH /C*Fs0 A*Fs0 dup mul B*Fs0 dup mul add 0.000001 add sqrt def /H*Fs0 B*Fs0 A*Fs0 0.0001 add atan def /LAB*CFa C*Fs0 def /LAB*HFa H*Fs0 def /lab*hFa LAB*HFa 360 div def } bind def %END Procedure transfer cmyolv*io_to_LAB*ioG (L=local) /LAB*io_to_cmyolv*ioG {%BEG Procedure LAB*io_to_cmyolv*ioG (L=local) /B*F exch def /A*F exch def /L*F exch def %ISIO*ioG 0 eq ISOUP*ioG 3 eq and % {%achromatic transfer L*F,A*F,B*F (PR18) % % -> L*Fsa, A*Fsa, B*Fsa (PR18) % % -> L*F, A*F, B*F (TV18) % %LAB*F_to_LAB*Fsa % /l*CIE L*F L*Nio sub L*Wio L*Nio sub 0.0001 add div def % /A*Fs0 A*F A*Nio sub A*Dio l*CIE mul sub def % /B*Fs0 B*F B*Nio sub B*Dio l*CIE mul sub def % /A*F A*Fs0 def % /B*F B*Fs0 def % } if %achromatic transfer L*F,A*F,B*F (PR18) /l*CIE L*F L*Nio sub L*Wio L*Nio sub 0.0001 add div def /L*Fs0 L*F L*Nio sub def /A*Fs0 A*F A*Nio sub A*Dio l*CIE mul sub def /B*Fs0 B*F B*Nio sub B*Dio l*CIE mul sub def /C*Fs0 A*Fs0 dup mul B*Fs0 dup mul add 0.000001 add sqrt def /H*Fs0 B*Fs0 A*Fs0 0.0001 add atan def /LAB*LF L*F def /LAB*AF A*F def /LAB*BF B*F def /LAB*LFa L*F def /LAB*AFa A*Fs0 def /LAB*BFa B*Fs0 def % the angle formed by the input LAB* *color data in the A*B* plane /col_ang B*Fs0 A*Fs0 0.0001 add atan def %determine which two colours the LAB* *color data corresponds to %by testing the angles and solve the related four simultaneous equations %to find the olv *color data. % angle between magenta red and orange red, sector M-O of M-Y, M>=Y col_ang M*Ang ge col_ang O*Ang lt or {1 wLAB*s0 0 get wLAB*s0 1 get wLAB*s0 2 get 1 nLAB*s0 0 get nLAB*s0 1 get nLAB*s0 2 get 1 mLAB*s0 0 get mLAB*s0 1 get mLAB*s0 2 get 1 oLAB*s0 0 get oLAB*s0 1 get oLAB*s0 2 get 1 L*Fs0 A*Fs0 B*Fs0 CoeffprocL /c1*w exch def %O /c2*w exch def %M /n*w exch def /w*w exch def %magenta is a mixture of orange red and voilet blue, therefore leaf green(l) = white, %orange(o) = 1-black(n), voilet blue(v) = white + magenta red (c2*w) /v*n w*w c2*w add def % /l*n w*w def /o*n 1 n*w sub def /i*p 2 def /t*p v*n v*n o*n add 0.0001 add div def } if % angle between orange red and yellow, sector O-Y of M-Y, Y>=M col_ang O*Ang ge col_ang Y*Ang lt and {1 wLAB*s0 0 get wLAB*s0 1 get wLAB*s0 2 get 1 nLAB*s0 0 get nLAB*s0 1 get nLAB*s0 2 get 1 oLAB*s0 0 get oLAB*s0 1 get oLAB*s0 2 get 1 yLAB*s0 0 get yLAB*s0 1 get yLAB*s0 2 get 1 L*Fs0 A*Fs0 B*Fs0 CoeffprocL /c1*w exch def %Y /c2*w exch def %O /n*w exch def /w*w exch def %yellow is a mixture of orange red and leaf green, therefore voilet blue(v) = white, %orange(o) = 1-black(n), leaf green(l) = white + yellow (c1*w) /l*n w*w c1*w add def /v*n w*w def /o*n 1 n*w sub def /i*p 3 def /t*p l*n l*n o*n add 0.0001 add div def } if % angle between yellow and leaf green, sector Y-L of Y-C, Y>=C col_ang Y*Ang ge col_ang L*Ang lt and {1 wLAB*s0 0 get wLAB*s0 1 get wLAB*s0 2 get 1 nLAB*s0 0 get nLAB*s0 1 get nLAB*s0 2 get 1 yLAB*s0 0 get yLAB*s0 1 get yLAB*s0 2 get 1 lLAB*s0 0 get lLAB*s0 1 get lLAB*s0 2 get 1 L*Fs0 A*Fs0 B*Fs0 CoeffprocL /c1*w exch def %L /c2*w exch def %Y /n*w exch def /w*w exch def %yellow is a mixture of orange red and leaf green, therefore voilet blue(v) = white , %leaf green(l) = 1-black(n), orange red(o) = white + yellow (c2*w) /v*n w*w def /l*n 1 n*w sub def /o*n w*w c2*w add def /i*p 4 def /t*p o*n o*n l*n add 0.0001 add div def } if % angle between leaf green and cyan blue, sector L-C of Y-C, C>=Y col_ang L*Ang ge col_ang C*Ang lt and {1 wLAB*s0 0 get wLAB*s0 1 get wLAB*s0 2 get 1 nLAB*s0 0 get nLAB*s0 1 get nLAB*s0 2 get 1 lLAB*s0 0 get lLAB*s0 1 get lLAB*s0 2 get 1 cLAB*s0 0 get cLAB*s0 1 get cLAB*s0 2 get 1 L*Fs0 A*Fs0 B*Fs0 CoeffprocL /c1*w exch def %C /c2*w exch def %L /n*w exch def /w*w exch def %cyan is a mixture of leaf green and voilet blue, therefore orange red(o) = white, %leaf green(l) = 1-black(n), voilet blue(v) = white + cyan blue (c1*w) /v*n w*w c1*w add def /l*n 1 n*w sub def /o*n w*w def /i*p 5 def /t*p v*n v*n l*n add 0.0001 add div def } if % angle between cyan blue and voilet blue, sector C-V of C-M, C>=M col_ang C*Ang ge col_ang V*Ang lt and {1 wLAB*s0 0 get wLAB*s0 1 get wLAB*s0 2 get 1 nLAB*s0 0 get nLAB*s0 1 get nLAB*s0 2 get 1 cLAB*s0 0 get cLAB*s0 1 get cLAB*s0 2 get 1 vLAB*s0 0 get vLAB*s0 1 get vLAB*s0 2 get 1 L*Fs0 A*Fs0 B*Fs0 CoeffprocL /c1*w exch def %V /c2*w exch def %C /n*w exch def /w*w exch def %cyan is a mixture of leaf green and voilet blue, therefore orange red(o) = white, %violet blue(v) = 1-black(n), leaf green(l) = white + cyan blue (c2*w) /v*n 1 n*w sub def /l*n w*w c2*w add def /o*n w*w def /i*p 0 def /t*p l*n l*n v*n add 0.0001 add div def } if % angle between voilet blue and magenta red, sector V-M of C-M, M>=C col_ang V*Ang ge col_ang M*Ang lt and {1 wLAB*s0 0 get wLAB*s0 1 get wLAB*s0 2 get 1 nLAB*s0 0 get nLAB*s0 1 get nLAB*s0 2 get 1 vLAB*s0 0 get vLAB*s0 1 get vLAB*s0 2 get 1 mLAB*s0 0 get mLAB*s0 1 get mLAB*s0 2 get 1 L*Fs0 A*Fs0 B*Fs0 CoeffprocL /c1*w exch def %M /c2*w exch def %V /n*w exch def /w*w exch def %magenta is a mixture of orange red and voilet blue, therefore leaf green(l) = white, %violet(o) = 1-black(n), orange red(o) = white + magenta red (c1*w) /v*n 1 n*w sub def /l*n w*w def /o*n w*w c1*w add def /i*p 1 def /t*p o*n o*n v*n add 0.0001 add div def } if %achromatic %W: o*n, l*n, v*n = 1.00 1.0 o*n sub abs 0.001 le 1.0 l*n sub abs 0.001 le and 1.0 v*n sub abs 0.001 le and %W special case {/i*p 6 def %W /e*w 0 def /n*n 0 def /w*n 1 def /t*p 0.0001 def } if %N: o*n, l*n, v*n <= 0.01 o*n abs 0.001 le l*n abs 0.001 le and v*n abs 0.001 le and %N special case {/i*p 6 def %N /e*w 0 def /n*n 1 def /w*n 0 def /t*p 0.0001 def } if %Achromatic o*n l*n sub abs 0.001 le l*n v*n sub abs 0.001 le and %Achromatic special case {/i*p 6 def %N /e*w 0 def /n*n o*n def /w*n 1 o*n sub def /t*p 0.0001 def } if /c*w 1 o*n sub def /m*w 1 l*n sub def /y*w 1 v*n sub def /t*n 1 t*p sub def /r*w 1 n*w sub w*w sub def %Ostwald equation for radial chromaticness: %with r*w=radial chromaticness, n*w=blackness, w*w=whiteness /t*w 1 n*w sub r*w 0.5 mul add def %triangle lightness /e*w r*w n*w r*w add 0.0001 add div def %Eigencolor ratio r*w abs 0.001 le r*w abs 0.001 le and {/e*w 0.0001 def} if % with 0 for achromatic (c*w=0) and 1 for whitish colors (n*w=0) /lab*rFa r*w def %/lab*tFa t*w def /h1* (-) def /h2* (-) def /H 0 def /H1* (-) def /H2* (-) def /H 0 def /IEND 0 def col_ang R*Ang gt col_ang J*Ang le and {/H* col_ang R*Ang sub J*Ang R*Ang sub div def /p*F 0.00 H* 0.25 mul add def /h1* (r) def /h2* (j) def /H1* (R) def /H2* (J) def /HM* R*Ang def /HP* J*Ang def /IEND 1 def} if col_ang J*Ang gt col_ang G*Ang le and {/H* col_ang J*Ang sub G*Ang J*Ang sub div def /p*F 0.25 H* 0.25 mul add def /h1* (j) def /h2* (g) def /H1* (J) def /H2* (G) def /HM* J*Ang def /HP* G*Ang def /IEND 1 def} if col_ang G*Ang gt col_ang B*Ang le and {/H* col_ang G*Ang sub B*Ang G*Ang sub div def /p*F 0.50 H* 0.25 mul add def /h1* (g) def /h2* (b) def /H1* (G) def /H2* (B) def /HM* G*Ang def /HP* B*Ang def /IEND 1 def} if col_ang R*Ang le IEND 0 eq and {/Pcol_ang col_ang 360 add def} {/Pcol_ang col_ang def} ifelse Pcol_ang B*Ang gt Pcol_ang R*Ang 360 add le and {/H* Pcol_ang B*Ang sub R*Ang 360 add B*Ang sub div def /p*F 0.75 H* 0.25 mul add def /h1* (b) def /h2* (r) def /H1* (B) def /H2* (R) def /HM* B*Ang def /HP* R*Ang 360 add def} if /lab*e1Fa h1* def /lab*EFa H* def /lab*e2Fa h2* def /lab*eFa p*F def /CIEF 100 88.60 div def /X* {L*F 16 add 116 div A*Fs0 500 div add } bind def /Y* {L*F 16 add 116 div } bind def /Z* {L*F 16 add 116 div B*Fs0 200 div sub} bind def /DecodeXYZ* { dup 6 29 div ge { dup dup mul mul } { 4 29 div sub 108 841 div mul } ifelse } bind def /XCIE {X* DecodeXYZ* 0.9505 mul} bind def /YCIE {Y* DecodeXYZ* } bind def /ZCIE {Z* DecodeXYZ* 1.0890 mul} bind def /XCIE1 {X* DecodeXYZ* 0.9505 mul CIEF mul} bind def /YCIE1 {Y* DecodeXYZ* CIEF mul} bind def /ZCIE1 {Z* DecodeXYZ* 1.0890 mul CIEF mul} bind def %Transformation X Y Z to RsRGB, GsRGB, BsRGB /RsRGB XCIE1 3.2406 mul YCIE1 -1.5372 mul add ZCIE1 -0.4986 mul add def /GsRGB XCIE1 -0.9686 mul YCIE1 1.8758 mul add ZCIE1 0.0415 mul add def /BsRGB XCIE1 0.0557 mul YCIE1 -0.2040 mul add ZCIE1 1.0570 mul add def /Slope 1.0 2.4 div def RsRGB 0.00313008 le {/R'sRGB RsRGB 12.92 mul def} {/R'sRGB RsRGB Slope exp 1.055 mul 0.055 sub def} ifelse GsRGB 0.00313008 le {/G'sRGB GsRGB 12.92 mul def} {/G'sRGB GsRGB Slope exp 1.055 mul 0.055 sub def} ifelse BsRGB 0.00313008 le {/B'sRGB BsRGB 12.92 mul def} {/B'sRGB BsRGB Slope exp 1.055 mul 0.055 sub def} ifelse c*w m*w y*w 0 %default output data definition } bind def %END Procedure LAB*io_to_cmyolv*ioG (L=local) /ouTab*ioG {%BEG Procedure ouTab*ioG (L=local) /Fontsize 152 Tabfakt mul def /TN {Fontsize /Times-ISOL1 FS} def /TI {Fontsize /TimesI-ISOL1 FS} def /TB {Fontsize /TimesB-ISOL1 FS} def /TBI {Fontsize /TimesBI-ISOL1 FS} def 0 0 0 setrgbcolor /o* r def /l* g def /v* b def %olv*, cmy* /yTABm ya ys 0.81 mul add def /yTABd 132 Tabfakt mul def /yTABx yTABm yTABd 1 mul sub def /yTAB0 yTABm yTABd 2 mul sub def /yTAB1 yTABm yTABd 3 mul sub def /yTAB2 yTABm yTABd 4 mul sub def /yTAB3 yTABm yTABd 5.1 mul sub def /yTAB4 yTABm yTABd 6.1 mul sub def /yTABn yTABm yTABd 7.1 mul sub def /yTAB5 yTABm yTABd 8.1 mul sub def /yTAB6 yTABm yTABd 9.2 mul sub def /yTAB7 yTABm yTABd 10.2 mul sub def /yTAB8 yTABm yTABd 11.2 mul sub def /yTAB9 yTABm yTABd 12.2 mul sub def /yTAB10 yTABm yTABd 13.3 mul sub def /yTAB11 yTABm yTABd 14.3 mul sub def /yTAB12 yTABm yTABd 15.2 mul sub def /yTAB13 yTABm yTABd 16.1 mul sub def /xTABm xa xs 0.84 mul sub def /xTABd 500 Tabfakt mul def /xTAB10 xTABm xTABd 1.15 mul add def /xTAB20 xTABm xTABd 2.00 mul add def /xTAB30 xTABm xTABd 2.85 mul add def /xTAB40 xTABm xTABd 3.70 mul add def /xTAB1 xTABm xTABd 1.60 mul add def /xTAB2 xTABm xTABd 2.55 mul add def /xTAB3 xTABm xTABd 3.50 mul add def /o3*Fa o* def /l3*Fa l* def /v3*Fa v* def xTABm yTABm moveto TBI (relative ) show TB (Inform. Technology (IT)) show xTABm yTABx moveto TI (olvi3*) show TN xTAB10 yTABx moveto o3*Fa cvsshow3 xTAB20 yTABx moveto l3*Fa cvsshow3 xTAB30 yTABx moveto v3*Fa cvsshow3 xTAB40 yTABx moveto ((1.0)) show /c3*Fa 1 o3*Fa sub def /m3*Fa 1 l3*Fa sub def /y3*Fa 1 v3*Fa sub def xTABm yTAB0 moveto TI (cmyn3*) show TN xTAB10 yTAB0 moveto c3*Fa cvsshow3 xTAB20 yTAB0 moveto m3*Fa cvsshow3 xTAB30 yTAB0 moveto y3*Fa cvsshow3 xTAB40 yTAB0 moveto ((0.0)) show LAB*ioG /c* c3*Fa def /m* m3*Fa def /y* y3*Fa def /n* 0.0 def /o* 1 c* sub def /l* 1 m* sub def /v* 1 y* sub def cmyolv*io_to_LAB*ioG xTABm yTAB3 moveto TBI (standard ) show TB (and ) show TBI (adapted ) show TB (CIELAB) show xTABm yTAB4 moveto TI (LAB*LAB) show TN xTAB1 yTAB4 moveto LAB*LF cvsshow2 xTAB2 yTAB4 moveto LAB*AF cvsshow2 xTAB3 yTAB4 moveto LAB*BF cvsshow2 xTABm yTABn moveto TI (LAB*LABa) show TN xTAB1 yTABn moveto LAB*LFa cvsshow2 xTAB2 yTABn moveto LAB*AFa cvsshow2 xTAB3 yTABn moveto LAB*BFa cvsshow2 xTABm yTAB5 moveto TI (LAB*TCHa) show TN xTAB1 yTAB5 moveto lab*tFa 100 mul cvsshow2 xTAB2 yTAB5 moveto LAB*CFa cvsshow2 xTAB3 yTAB5 moveto LAB*CFa 1.0 ge {LAB*HFa cvsshow2} {( -) show} ifelse L*F A*F B*F LAB*io_to_cmyolv*ioG %lab relative CIELAB /c4*Fa c3*Fa lab*nFa sub def %at least one of cmy will be cero /m4*Fa m3*Fa lab*nFa sub def /y4*Fa y3*Fa lab*nFa sub def /n4*Fa lab*nFa def /o4*Fa 1 c4*Fa sub def /l4*Fa 1 m4*Fa sub def /v4*Fa 1 y4*Fa sub def /i4*Fa 1 n4*Fa sub def xTABm yTAB1 moveto TI (olvi4*) show TN xTAB10 yTAB1 moveto o4*Fa cvsshow3 xTAB20 yTAB1 moveto l4*Fa cvsshow3 xTAB30 yTAB1 moveto v4*Fa cvsshow3 xTAB40 yTAB1 moveto i4*Fa cvsshow3 xTABm yTAB2 moveto TI (cmyn4*) show TN xTAB10 yTAB2 moveto c4*Fa cvsshow3 xTAB20 yTAB2 moveto m4*Fa cvsshow3 xTAB30 yTAB2 moveto y4*Fa cvsshow3 xTAB40 yTAB2 moveto n4*Fa cvsshow3 xTABm yTAB6 moveto TBI (relative ) show TB (CIELAB ) show TBI (lab*) show xTABm yTAB7 moveto TI (lab*lab) show TN xTAB1 yTAB7 moveto lab*lFa cvsshow3 /lab*aFa lab*cFa LAB*HFa cos mul def /lab*bFa lab*cFa LAB*HFa sin mul def xTAB2 yTAB7 moveto lab*aFa cvsshow3 xTAB3 yTAB7 moveto lab*bFa cvsshow3 xTABm yTAB8 moveto TI (lab*tch) show TN xTAB1 yTAB8 moveto lab*tFa cvsshow3 xTAB2 yTAB8 moveto lab*cFa cvsshow3 xTAB3 yTAB8 moveto lab*cFa 0.01 ge {lab*hFa cvsshow3} {( -) show} ifelse xTABm yTAB9 moveto TI (lab*nch) show TN xTAB1 yTAB9 moveto lab*nFa cvsshow3 xTAB2 yTAB9 moveto lab*cFa cvsshow3 xTAB3 yTAB9 moveto lab*cFa 0.01 ge {lab*hFa cvsshow3} {( -) show} ifelse %lab*lrj,tce,ncE: similar to NCS xTABm yTAB10 moveto TBI (relative ) show TB (Natural Colour (NC)) show xTABm yTAB11 moveto TI (lab*lrj) show TN xTAB1 yTAB11 moveto lab*lFa cvsshow3 /lab*rFa lab*cFa lab*eFa 360 mul cos mul def /lab*jFa lab*cFa lab*eFa 360 mul sin mul def xTAB2 yTAB11 moveto lab*rFa cvsshow3 xTAB3 yTAB11 moveto lab*jFa cvsshow3 xTABm yTAB12 moveto TI (lab*tce) show TN xTAB1 yTAB12 moveto lab*tFa cvsshow3 xTAB2 yTAB12 moveto lab*cFa cvsshow3 xTAB3 yTAB12 moveto lab*cFa 0.01 ge {lab*eFa cvsshow3}{( -) show} ifelse xTABm yTAB13 moveto TI (lab*ncE) show TN xTAB1 yTAB13 moveto lab*nFa cvsshow3 xTAB2 yTAB13 moveto lab*cFa cvsshow3 xTAB3 yTAB13 moveto lab*cFa 0.01 ge {lab*e1Fa show lab*EFa 100 mul truncate cvi dup 10 lt {(0) show } if 6 string cvs show lab*e2Fa show} {( -) show} ifelse } bind def %END Procedure ouTab*ioG /ouCal*ioG {%BEG Procedure ouCal*ioG 0 0 0 setrgbcolor /o* r def /l* g def /v* b def /o3*Fa o* def /l3*Fa l* def /v3*Fa v* def /c3*Fa 1 o3*Fa sub def /m3*Fa 1 l3*Fa sub def /y3*Fa 1 v3*Fa sub def LAB*ioG /c* c3*Fa def /m* m3*Fa def /y* y3*Fa def /n* 0.0 def /o* 1 c* sub def /l* 1 m* sub def /v* 1 y* sub def cmyolv*io_to_LAB*ioG L*F A*F B*F LAB*io_to_cmyolv*ioG %lab relative CIELAB /c4*Fa c3*Fa lab*nFa sub def %at least one of cmy will be cero /m4*Fa m3*Fa lab*nFa sub def /y4*Fa y3*Fa lab*nFa sub def /n4*Fa lab*nFa def /o4*Fa 1 c4*Fa sub def /l4*Fa 1 m4*Fa sub def /v4*Fa 1 y4*Fa sub def /i4*Fa 1 n4*Fa sub def } bind def %END Procedure ouCal*ioG /proc_LAB*Fa_LAB*MaNTABl_olvi3*cmyn3*Ma*ioG { %BEG proc_LAB*Fa_LAB*MaNTABl_olvi3*cmyn3*Ma*ioG %only for calculation without hue tables %input LAB*Fa %input LAB*a (6 adapted colours OYLCVM) %input nLAB*s0 (colour white N for calculation of lab*l) %input wLAB*s0 (colour white W for achromatic axis) %output LAB*Ma %output olvi3*Ma %output cmyn3*Ma /UXF1a wLAB*s0 1 get B*Fa mul wLAB*s0 2 get A*Fa mul sub def /UXF2a wLAB*s0 2 get L*Fa mul wLAB*s0 0 get B*Fa mul sub def /UXF3a wLAB*s0 0 get A*Fa mul wLAB*s0 1 get L*Fa mul sub def /T1 0 def /T2 0 def 0 1 5 {/ia exch def /ia30 ia 3 mul def ia 5 eq {/ia31 0 def} {/ia31 ia30 3 add def} ifelse /T1 LAB*a ia30 get UXF1a mul LAB*a ia30 1 add get UXF2a mul add LAB*a ia30 2 add get UXF3a mul add def /T2 LAB*a ia31 get UXF1a mul LAB*a ia31 1 add get UXF2a mul add LAB*a ia31 2 add get UXF3a mul add def T1 0 le {/T1X (N) def} {/T1X (P) def} ifelse T2 0 gt {/T2X (P) def} {/T2X (N) def} ifelse T1 0 le T2 0 gt and {/ia3END ia30 def exit} if } for /L*11a LAB*a ia3END get def /A*11a LAB*a ia3END 1 add get def /B*11a LAB*a ia3END 2 add get def ia3END 15 ge {/ia3END -3 def} if /L*21a LAB*a ia3END 3 add get def /A*21a LAB*a ia3END 4 add get def /B*21a LAB*a ia3END 5 add get def /NENNER L*21a L*11a sub UXF1a mul A*21a A*11a sub UXF2a mul add B*21a B*11a sub UXF3a mul add def /ZAEHLE L*21a UXF1a mul A*21a UXF2a mul add B*21a UXF3a mul add def NENNER 0 ne {/ALPH ZAEHLE NENNER div def} {/ALPH 99999} ifelse /L*Ma ALPH L*11a mul 1 ALPH sub L*21a mul add def /A*Ma ALPH A*11a mul 1 ALPH sub A*21a mul add def /B*Ma ALPH B*11a mul 1 ALPH sub B*21a mul add def /C*Ma A*Ma dup mul B*Ma dup mul add 0.000001 add sqrt def /H*Ma B*Ma A*Ma 0.0001 add atan def /ia30 ia 3 mul def /iap 1 ALPH sub def /iam ALPH def ia 0 eq {/c3*Ma 0 def %L, c*=0, sector O->Y /m3*Ma iam def %L, m*=1->0 /y3*Ma 1 def %L, y*=1 } if ia 1 eq {/c3*Ma iap def %L, c*=0->1, sector Y->L /m3*Ma 0 def %L, m*=0 /y3*Ma 1 def %L, y*=1 } if ia 2 eq {/c3*Ma 1 def %L, c*=1, sector L->C /m3*Ma 0 def %L, m*=0 /y3*Ma iam def %L, y*=1->0 } if ia 3 eq {/c3*Ma 1 def %L, c*=1, sector C->V /m3*Ma iap def %L, m*=1->0 /y3*Ma 0 def %L, y*=0 } if ia 4 eq {/c3*Ma iam def %L, c*=1->0, sector V->M /m3*Ma 1 def %L, m*=1 /y3*Ma 0 def %L, y*=0 } if ia 5 eq {/c3*Ma 0 def %L, c*=0, sector M->O /m3*Ma 1 def %L, m*=1 /y3*Ma iap def %L, y*=0->1 } if /o3*Ma 1 c3*Ma sub def /l3*Ma 1 m3*Ma sub def /v3*Ma 1 y3*Ma sub def /i3*Ma 1 def /lab*nMa 0.00 def /lab*cMa 1.00 def /lab*wMa 0.00 def /lab*tMa 0.50 def /lab*hMa H*Ma 360 div def /lab*lMa L*Ma nLAB*s0 0 get sub wLAB*s0 0 get nLAB*s0 0 get sub 0.000001 add div def } bind def %END /proc_LAB*Fa_LAB*MaNTABl_olvi3*cmyn3*Ma*ioG %END SE90/10L/L90E00ZED Output Linearization (OL) LAB* -> cmyolvnw* 20060101 %BEG SE90/10L/OUTLIN1XFA.PS MXYZ_to_LAB* 20060101 %BEG Procedure special input XYZ to be transferred to LAB* /MXYZ_to_LAB* {%BEG MXYZ_to_LAB* /XD65 95.05 def /YD65 100.00 def /ZD65 108.90 def /ymaxf 88.59 Yre sub 100 div def /Xref XD65 Yre 100 div mul def /Yref YD65 Yre 100 div mul def %2.52% /Zref ZD65 Yre 100 div mul def /Xwref XD65 ymaxf mul def /Ywref YD65 ymaxf mul def %88.59-2.52=%86.07 /Zwref ZD65 ymaxf mul def 0 16 240 {/j exch def %j=0,112,16 %Asumption END point "white" /i10 j 4 mul 1 add def /i20 i10 15 4 mul add def /Xfact 1.0 MISO_S1gXYZ i20 0 add get div Xwref mul def /Yfact 1.0 MISO_S1gXYZ i20 1 add get div Ywref mul def /Zfact 1.0 MISO_S1gXYZ i20 2 add get div Zwref mul def 0 1 15 {/i exch def %i=0,15 /i2i1 i10 i 4 mul add def /i2i2 i2i1 1 add def /i2i3 i2i1 2 add def /XQ MISO_S1gXYZ i2i1 get Xfact mul Xref add XD65 div def /YQ MISO_S1gXYZ i2i2 get Yfact mul Yref add YD65 div def /ZQ MISO_S1gXYZ i2i3 get Zfact mul Zref add ZD65 div def XQ 0 lt {/XQ 0.00000001 def} if YQ 0 lt {/YQ 0.00000001 def} if ZQ 0 lt {/ZQ 0.00000001 def} if MISO_S1g i2i1 YQ 0.008856 lt {903.3 YQ mul} {YQ 0.33333333 exp 116 mul 16 sub} ifelse put MISO_S1g i2i2 XQ 0.008856 lt {7.787 XQ mul 16 116 div add} {XQ 0.33333333 exp} ifelse YQ 0.008856 lt {7.787 YQ mul 16 116 div add} {YQ 0.33333333 exp} ifelse sub 500 mul put MISO_S1g i2i3 YQ 0.008856 lt {7.787 YQ mul 16 116 div add} {YQ 0.33333333 exp} ifelse ZQ 0.008856 lt {7.787 ZQ mul 16 116 div add} {ZQ 0.33333333 exp} ifelse sub 200 mul put } for %i=0,15 } for %j=0,240,16 } bind def %END Procedure MXYZ_to_LAB* %END SE90/10L/OUTLIN1XFA.PS MXYZ_to_LAB* 20060101 %BEG DM00/CMISO_S1gLAB.DAT Output Linearization (OL), GLOBAL (G), 20011201 /MISO_S1g 1024 array def /CFilenameS1 %Start output Step S1 (www.ps.bam.de/SE90/10L/L90E00FA.PS) def %This file name /CDeviceS1 (Device: (Y); ) def %Device name and file measured /CMeasS1 (Meas.: SE90/10L/L90E00NA.PS;S1) def %File name measured in step S1 /CDateS1 (Date: M010401) def %Date of calculation/measurement /MISO_S1g [%real LAB* measurement of output to be included %no. CIELAB D65 rc 0.00% w* n* col L L10001FA.DAT CMYOLV.FOR 0 58.62 -30.62 -42.74 %0.000 1.000 C-W L cmy0* setcmykcolor 0 1 61.07 -28.64 -39.57 %0.067 0.933 C-W L 2 63.53 -26.67 -36.41 %0.133 0.867 C-W L 3 65.98 -24.69 -33.24 %0.200 0.800 C-W L 4 68.43 -22.72 -30.07 %0.267 0.733 C-W L 5 70.88 -20.74 -26.91 %0.333 0.667 C-W L 6 73.34 -18.77 -23.74 %0.400 0.600 C-W L 7 75.79 -16.79 -20.57 %0.467 0.533 C-W L 8 78.24 -14.82 -17.41 %0.533 0.467 C-W L 9 80.69 -12.84 -14.24 %0.600 0.400 C-W L 10 83.15 -10.87 -11.07 %0.667 0.333 C-W L 11 85.60 -8.89 -7.91 %0.733 0.267 C-W L 12 88.05 -6.92 -4.74 %0.800 0.200 C-W L 13 90.50 -4.94 -1.57 %0.867 0.133 C-W L 14 92.96 -2.97 1.59 %0.933 0.067 C-W L 15 95.41 -0.99 4.76 %1.000 0.000 C-W L 0 48.13 75.20 -6.79 %0.000 1.000 M-W L cmy0* setcmykcolor 16 1 51.28 70.12 -6.02 %0.067 0.933 M-W L 2 54.43 65.04 -5.25 %0.133 0.867 M-W L 3 57.59 59.96 -4.48 %0.200 0.800 M-W L 4 60.74 54.88 -3.71 %0.267 0.733 M-W L 5 63.89 49.80 -2.94 %0.333 0.667 M-W L 6 67.04 44.72 -2.17 %0.400 0.600 M-W L 7 70.19 39.64 -1.40 %0.467 0.533 M-W L 8 73.35 34.57 -0.63 %0.533 0.467 M-W L 9 76.50 29.49 0.14 %0.600 0.400 M-W L 10 79.65 24.41 0.91 %0.667 0.333 M-W L 11 82.80 19.33 1.68 %0.733 0.267 M-W L 12 85.95 14.25 2.45 %0.800 0.200 M-W L 13 89.11 9.17 3.22 %0.867 0.133 M-W L 14 92.26 4.09 3.99 %0.933 0.067 M-W L 15 95.41 -0.99 4.76 %1.000 0.000 M-W L 0 90.37 -11.15 96.17 %0.000 1.000 Y-W L cmy0* setcmykcolor 32 1 90.71 -10.47 90.08 %0.067 0.933 Y-W L 2 91.04 -9.80 83.98 %0.133 0.867 Y-W L 3 91.38 -9.12 77.89 %0.200 0.800 Y-W L 4 91.71 -8.44 71.79 %0.267 0.733 Y-W L 5 92.05 -7.76 65.70 %0.333 0.667 Y-W L 6 92.39 -7.09 59.61 %0.400 0.600 Y-W L 7 92.72 -6.41 53.51 %0.467 0.533 Y-W L 8 93.06 -5.73 47.42 %0.533 0.467 Y-W L 9 93.39 -5.05 41.32 %0.600 0.400 Y-W L 10 93.73 -4.38 35.23 %0.667 0.333 Y-W L 11 94.07 -3.70 29.14 %0.733 0.267 Y-W L 12 94.40 -3.02 23.04 %0.800 0.200 Y-W L 13 94.74 -2.34 16.95 %0.867 0.133 Y-W L 14 95.07 -1.67 10.85 %0.933 0.067 Y-W L 15 95.41 -0.99 4.76 %1.000 0.000 Y-W L 0 18.01 0.50 -0.46 %0.000 1.000 N-W L 000n* setcmykcolor 48 1 23.17 0.40 -0.11 %0.067 0.933 N-W L 2 28.33 0.30 0.24 %0.133 0.867 N-W L 3 33.49 0.20 0.58 %0.200 0.800 N-W L 4 38.65 0.10 0.93 %0.267 0.733 N-W L 5 43.81 0.00 1.28 %0.333 0.667 N-W L 6 48.97 -0.10 1.63 %0.400 0.600 N-W L 7 54.13 -0.20 1.98 %0.467 0.533 N-W L 8 59.29 -0.29 2.32 %0.533 0.467 N-W L 9 64.45 -0.39 2.67 %0.600 0.400 N-W L 10 69.61 -0.49 3.02 %0.667 0.333 N-W L 11 74.77 -0.59 3.37 %0.733 0.267 N-W L 12 79.93 -0.69 3.72 %0.800 0.200 N-W L 13 85.09 -0.79 4.06 %0.867 0.133 N-W L 14 90.25 -0.89 4.41 %0.933 0.067 N-W L 15 95.41 -0.99 4.76 %1.000 0.000 N-W L 0 47.94 65.31 52.07 %0.000 1.000 O-W L cmy0* setcmykcolor 64 1 51.10 60.89 48.92 %0.067 0.933 O-W L 2 54.27 56.47 45.76 %0.133 0.867 O-W L 3 57.43 52.05 42.61 %0.200 0.800 O-W L 4 60.60 47.63 39.45 %0.267 0.733 O-W L 5 63.76 43.21 36.30 %0.333 0.667 O-W L 6 66.93 38.79 33.15 %0.400 0.600 O-W L 7 70.09 34.37 29.99 %0.467 0.533 O-W L 8 73.26 29.95 26.84 %0.533 0.467 O-W L 9 76.42 25.53 23.68 %0.600 0.400 O-W L 10 79.59 21.11 20.53 %0.667 0.333 O-W L 11 82.75 16.69 17.38 %0.733 0.267 O-W L 12 85.92 12.27 14.22 %0.800 0.200 O-W L 13 89.08 7.85 11.07 %0.867 0.133 O-W L 14 92.25 3.43 7.91 %0.933 0.067 O-W L 15 95.41 -0.99 4.76 %1.000 0.000 O-W L 0 50.90 -62.96 36.71 %0.000 1.000 L-W L cmy0* setcmykcolor 80 1 53.87 -58.83 34.58 %0.067 0.933 L-W L 2 56.83 -54.70 32.45 %0.133 0.867 L-W L 3 59.80 -50.57 30.32 %0.200 0.800 L-W L 4 62.77 -46.43 28.19 %0.267 0.733 L-W L 5 65.74 -42.30 26.06 %0.333 0.667 L-W L 6 68.70 -38.17 23.93 %0.400 0.600 L-W L 7 71.67 -34.04 21.80 %0.467 0.533 L-W L 8 74.64 -29.91 19.67 %0.533 0.467 L-W L 9 77.61 -25.78 17.54 %0.600 0.400 L-W L 10 80.57 -21.65 15.41 %0.667 0.333 L-W L 11 83.54 -17.52 13.28 %0.733 0.267 L-W L 12 86.51 -13.38 11.15 %0.800 0.200 L-W L 13 89.48 -9.25 9.02 %0.867 0.133 L-W L 14 92.44 -5.12 6.89 %0.933 0.067 L-W L 15 95.41 -0.99 4.76 %1.000 0.000 L-W L 0 25.72 31.45 -44.35 %0.000 1.000 V-W L cmy0* setcmykcolor 96 1 30.37 29.29 -41.08 %0.067 0.933 V-W L 2 35.01 27.12 -37.80 %0.133 0.867 V-W L 3 39.66 24.96 -34.53 %0.200 0.800 V-W L 4 44.30 22.80 -31.25 %0.267 0.733 V-W L 5 48.95 20.64 -27.98 %0.333 0.667 V-W L 6 53.60 18.47 -24.71 %0.400 0.600 V-W L 7 58.24 16.31 -21.43 %0.467 0.533 V-W L 8 62.89 14.15 -18.16 %0.533 0.467 V-W L 9 67.53 11.99 -14.88 %0.600 0.400 V-W L 10 72.18 9.82 -11.61 %0.667 0.333 V-W L 11 76.83 7.66 -8.34 %0.733 0.267 V-W L 12 81.47 5.50 -5.06 %0.800 0.200 V-W L 13 86.12 3.34 -1.79 %0.867 0.133 V-W L 14 90.76 1.17 1.49 %0.933 0.067 V-W L 15 95.41 -0.99 4.76 %1.000 0.000 V-W L 0 18.01 0.50 -0.46 %0.000 1.000 A-W L nnn0* setcmykcolor 112 1 23.17 0.40 -0.11 %0.067 0.933 A-W L 2 28.33 0.30 0.24 %0.133 0.867 A-W L 3 33.49 0.20 0.58 %0.200 0.800 A-W L 4 38.65 0.10 0.93 %0.267 0.733 A-W L 5 43.81 0.00 1.28 %0.333 0.667 A-W L 6 48.97 -0.10 1.63 %0.400 0.600 A-W L 7 54.13 -0.20 1.98 %0.467 0.533 A-W L 8 59.29 -0.29 2.32 %0.533 0.467 A-W L 9 64.45 -0.39 2.67 %0.600 0.400 A-W L 10 69.61 -0.49 3.02 %0.667 0.333 A-W L 11 74.77 -0.59 3.37 %0.733 0.267 A-W L 12 79.93 -0.69 3.72 %0.800 0.200 A-W L 13 85.09 -0.79 4.06 %0.867 0.133 A-W L 14 90.25 -0.89 4.41 %0.933 0.067 A-W L 15 95.41 -0.99 4.76 %1.000 0.000 A-W L %no. CIELAB D65 rc 0.00% w* n* col L L10001FA.DAT CMYOLV.FOR 0 58.62 -30.62 -42.74 %0.000 1.000 C-W L olv* setrgbcolor 128 1 61.07 -28.64 -39.57 %0.067 0.933 C-W L 2 63.53 -26.67 -36.41 %0.133 0.867 C-W L 3 65.98 -24.69 -33.24 %0.200 0.800 C-W L 4 68.43 -22.72 -30.07 %0.267 0.733 C-W L 5 70.88 -20.74 -26.91 %0.333 0.667 C-W L 6 73.34 -18.77 -23.74 %0.400 0.600 C-W L 7 75.79 -16.79 -20.57 %0.467 0.533 C-W L 8 78.24 -14.82 -17.41 %0.533 0.467 C-W L 9 80.69 -12.84 -14.24 %0.600 0.400 C-W L 10 83.15 -10.87 -11.07 %0.667 0.333 C-W L 11 85.60 -8.89 -7.91 %0.733 0.267 C-W L 12 88.05 -6.92 -4.74 %0.800 0.200 C-W L 13 90.50 -4.94 -1.57 %0.867 0.133 C-W L 14 92.96 -2.97 1.59 %0.933 0.067 C-W L 15 95.41 -0.99 4.76 %1.000 0.000 C-W L 0 48.13 75.20 -6.79 %0.000 1.000 M-W L olv* setrgbcolor 144 1 51.28 70.12 -6.02 %0.067 0.933 M-W L 2 54.43 65.04 -5.25 %0.133 0.867 M-W L 3 57.59 59.96 -4.48 %0.200 0.800 M-W L 4 60.74 54.88 -3.71 %0.267 0.733 M-W L 5 63.89 49.80 -2.94 %0.333 0.667 M-W L 6 67.04 44.72 -2.17 %0.400 0.600 M-W L 7 70.19 39.64 -1.40 %0.467 0.533 M-W L 8 73.35 34.57 -0.63 %0.533 0.467 M-W L 9 76.50 29.49 0.14 %0.600 0.400 M-W L 10 79.65 24.41 0.91 %0.667 0.333 M-W L 11 82.80 19.33 1.68 %0.733 0.267 M-W L 12 85.95 14.25 2.45 %0.800 0.200 M-W L 13 89.11 9.17 3.22 %0.867 0.133 M-W L 14 92.26 4.09 3.99 %0.933 0.067 M-W L 15 95.41 -0.99 4.76 %1.000 0.000 M-W L 0 90.37 -11.15 96.17 %0.000 1.000 Y-W L olv* setrgbcolor 160 1 90.71 -10.47 90.08 %0.067 0.933 Y-W L 2 91.04 -9.80 83.98 %0.133 0.867 Y-W L 3 91.38 -9.12 77.89 %0.200 0.800 Y-W L 4 91.71 -8.44 71.79 %0.267 0.733 Y-W L 5 92.05 -7.76 65.70 %0.333 0.667 Y-W L 6 92.39 -7.09 59.61 %0.400 0.600 Y-W L 7 92.72 -6.41 53.51 %0.467 0.533 Y-W L 8 93.06 -5.73 47.42 %0.533 0.467 Y-W L 9 93.39 -5.05 41.32 %0.600 0.400 Y-W L 10 93.73 -4.38 35.23 %0.667 0.333 Y-W L 11 94.07 -3.70 29.14 %0.733 0.267 Y-W L 12 94.40 -3.02 23.04 %0.800 0.200 Y-W L 13 94.74 -2.34 16.95 %0.867 0.133 Y-W L 14 95.07 -1.67 10.85 %0.933 0.067 Y-W L 15 95.41 -0.99 4.76 %1.000 0.000 Y-W L 0 18.01 0.50 -0.46 %0.000 1.000 N-W L w* setgray 176 1 23.17 0.40 -0.11 %0.067 0.933 N-W L 2 28.33 0.30 0.24 %0.133 0.867 N-W L 3 33.49 0.20 0.58 %0.200 0.800 N-W L 4 38.65 0.10 0.93 %0.267 0.733 N-W L 5 43.81 0.00 1.28 %0.333 0.667 N-W L 6 48.97 -0.10 1.63 %0.400 0.600 N-W L 7 54.13 -0.20 1.98 %0.467 0.533 N-W L 8 59.29 -0.29 2.32 %0.533 0.467 N-W L 9 64.45 -0.39 2.67 %0.600 0.400 N-W L 10 69.61 -0.49 3.02 %0.667 0.333 N-W L 11 74.77 -0.59 3.37 %0.733 0.267 N-W L 12 79.93 -0.69 3.72 %0.800 0.200 N-W L 13 85.09 -0.79 4.06 %0.867 0.133 N-W L 14 90.25 -0.89 4.41 %0.933 0.067 N-W L 15 95.41 -0.99 4.76 %1.000 0.000 N-W L 0 47.94 65.31 52.07 %0.000 1.000 O-W L olv* setrgbcolor 194 1 51.10 60.89 48.92 %0.067 0.933 O-W L 2 54.27 56.47 45.76 %0.133 0.867 O-W L 3 57.43 52.05 42.61 %0.200 0.800 O-W L 4 60.60 47.63 39.45 %0.267 0.733 O-W L 5 63.76 43.21 36.30 %0.333 0.667 O-W L 6 66.93 38.79 33.15 %0.400 0.600 O-W L 7 70.09 34.37 29.99 %0.467 0.533 O-W L 8 73.26 29.95 26.84 %0.533 0.467 O-W L 9 76.42 25.53 23.68 %0.600 0.400 O-W L 10 79.59 21.11 20.53 %0.667 0.333 O-W L 11 82.75 16.69 17.38 %0.733 0.267 O-W L 12 85.92 12.27 14.22 %0.800 0.200 O-W L 13 89.08 7.85 11.07 %0.867 0.133 O-W L 14 92.25 3.43 7.91 %0.933 0.067 O-W L 15 95.41 -0.99 4.76 %1.000 0.000 O-W L 0 50.90 -62.96 36.71 %0.000 1.000 L-W L olv* setrgbcolor 210 1 53.87 -58.83 34.58 %0.067 0.933 L-W L 2 56.83 -54.70 32.45 %0.133 0.867 L-W L 3 59.80 -50.57 30.32 %0.200 0.800 L-W L 4 62.77 -46.43 28.19 %0.267 0.733 L-W L 5 65.74 -42.30 26.06 %0.333 0.667 L-W L 6 68.70 -38.17 23.93 %0.400 0.600 L-W L 7 71.67 -34.04 21.80 %0.467 0.533 L-W L 8 74.64 -29.91 19.67 %0.533 0.467 L-W L 9 77.61 -25.78 17.54 %0.600 0.400 L-W L 10 80.57 -21.65 15.41 %0.667 0.333 L-W L 11 83.54 -17.52 13.28 %0.733 0.267 L-W L 12 86.51 -13.38 11.15 %0.800 0.200 L-W L 13 89.48 -9.25 9.02 %0.867 0.133 L-W L 14 92.44 -5.12 6.89 %0.933 0.067 L-W L 15 95.41 -0.99 4.76 %1.000 0.000 L-W L 0 25.72 31.45 -44.35 %0.000 1.000 V-W L olv* setrgbcolor 226 1 30.37 29.29 -41.08 %0.067 0.933 V-W L 2 35.01 27.12 -37.80 %0.133 0.867 V-W L 3 39.66 24.96 -34.53 %0.200 0.800 V-W L 4 44.30 22.80 -31.25 %0.267 0.733 V-W L 5 48.95 20.64 -27.98 %0.333 0.667 V-W L 6 53.60 18.47 -24.71 %0.400 0.600 V-W L 7 58.24 16.31 -21.43 %0.467 0.533 V-W L 8 62.89 14.15 -18.16 %0.533 0.467 V-W L 9 67.53 11.99 -14.88 %0.600 0.400 V-W L 10 72.18 9.82 -11.61 %0.667 0.333 V-W L 11 76.83 7.66 -8.34 %0.733 0.267 V-W L 12 81.47 5.50 -5.06 %0.800 0.200 V-W L 13 86.12 3.34 -1.79 %0.867 0.133 V-W L 14 90.76 1.17 1.49 %0.933 0.067 V-W L 15 95.41 -0.99 4.76 %1.000 0.000 V-W L 0 18.01 0.50 -0.46 %0.000 1.000 A-W L nnn* setrgbcolor 242 1 23.17 0.40 -0.11 %0.067 0.933 A-W L 2 28.33 0.30 0.24 %0.133 0.867 A-W L 3 33.49 0.20 0.58 %0.200 0.800 A-W L 4 38.65 0.10 0.93 %0.267 0.733 A-W L 5 43.81 0.00 1.28 %0.333 0.667 A-W L 6 48.97 -0.10 1.63 %0.400 0.600 A-W L 7 54.13 -0.20 1.98 %0.467 0.533 A-W L 8 59.29 -0.29 2.32 %0.533 0.467 A-W L 9 64.45 -0.39 2.67 %0.600 0.400 A-W L 10 69.61 -0.49 3.02 %0.667 0.333 A-W L 11 74.77 -0.59 3.37 %0.733 0.267 A-W L 12 79.93 -0.69 3.72 %0.800 0.200 A-W L 13 85.09 -0.79 4.06 %0.867 0.133 A-W L 14 90.25 -0.89 4.41 %0.933 0.067 A-W L 15 95.41 -0.99 4.76 %1.000 0.000 A-W L % 0 0.00 0.00 0.00 %0.000 X-W Dummy for visual estimation % 1 6.67 0.00 0.00 %0.067 X-W % 2 13.33 0.00 0.00 %0.133 X-W % 3 20.00 0.00 0.00 %0.200 X-W % 4 26.67 0.00 0.00 %0.267 X-W % 5 33.33 0.00 0.00 %0.333 X-W % 6 40.00 0.00 0.00 %0.400 X-W % 7 46.67 0.00 0.00 %0.467 X-W % 8 53.33 0.00 0.00 %0.533 X-W % 9 60.00 0.00 0.00 %0.600 X-W % 10 66.67 0.00 0.00 %0.667 X-W % 11 73.33 0.00 0.00 %0.733 X-W % 12 80.00 0.00 0.00 %0.800 X-W % 13 86.67 0.00 0.00 %0.867 X-W % 14 93.33 0.00 0.00 %0.933 X-W % 15 99.99 0.00 0.00 %1.000 X-W ] def %END DM00/CMISO_S1gLAB.DAT Output Linearization (OL), GLOBAL (G), 20011201 %BEG DM00/CMISO_S1gXYZ.DAT Output Linearization (OL), GLOBAL (G), 20011201 /MISO_S1gXYZ 1024 array def /CFilenameS1 %Start output Step S1 (www.ps.bam.de/SE90/10L/L90E00FA.PS) def %This file name /CDeviceS1 (Device: (Y); ) def %Device name and file measured /CMeasS1 (Meas.: SE90/10L/L90E00NA.PS;S1) def %File name measured in step S1 /CDateS1 (Date: M010401) def %Date of calculation/measurement /MISO_S1gXYZ [%real XYZ measurement of output to be included %no. CIEXYZ D65 rc 0.00% w* n* col L L10011FA.DAT CMYOLV.FOR 0 18.74 26.62 68.54 %0.000 1.000 C-W L cmy0* setcmykcolor 0 1 21.27 29.33 69.82 %0.067 0.933 C-W L 2 24.02 32.22 71.12 %0.133 0.867 C-W L 3 26.99 35.30 72.43 %0.200 0.800 C-W L 4 30.21 38.56 73.76 %0.267 0.733 C-W L 5 33.66 42.02 75.11 %0.333 0.667 C-W L 6 37.37 45.68 76.47 %0.400 0.600 C-W L 7 41.35 49.54 77.85 %0.467 0.533 C-W L 8 45.59 53.62 79.24 %0.533 0.467 C-W L 9 50.12 57.92 80.66 %0.600 0.400 C-W L 10 54.94 62.44 82.09 %0.667 0.333 C-W L 11 60.05 67.19 83.53 %0.733 0.267 C-W L 12 65.48 72.17 84.99 %0.800 0.200 C-W L 13 71.22 77.40 86.47 %0.867 0.133 C-W L 14 77.28 82.87 87.97 %0.933 0.067 C-W L 15 83.69 88.59 89.48 %1.000 0.000 C-W L 0 33.06 16.90 22.00 %0.000 1.000 M-W L cmy0* setcmykcolor 16 1 35.52 19.51 24.73 %0.067 0.933 M-W L 2 38.09 22.39 27.68 %0.133 0.867 M-W L 3 40.79 25.53 30.85 %0.200 0.800 M-W L 4 43.61 28.95 34.25 %0.267 0.733 M-W L 5 46.56 32.67 37.90 %0.333 0.667 M-W L 6 49.64 36.69 41.80 %0.400 0.600 M-W L 7 52.86 41.03 45.95 %0.467 0.533 M-W L 8 56.21 45.69 50.37 %0.533 0.467 M-W L 9 59.69 50.70 55.07 %0.600 0.400 M-W L 10 63.32 56.06 60.05 %0.667 0.333 M-W L 11 67.10 61.79 65.32 %0.733 0.267 M-W L 12 71.02 67.90 70.89 %0.800 0.200 M-W L 13 75.09 74.39 76.77 %0.867 0.133 M-W L 14 79.31 81.28 82.96 %0.933 0.067 M-W L 15 83.69 88.59 89.48 %1.000 0.000 M-W L 0 68.07 77.11 9.03 %0.000 1.000 Y-W L cmy0* setcmykcolor 32 1 69.05 77.84 11.27 %0.067 0.933 Y-W L 2 70.03 78.58 13.85 %0.133 0.867 Y-W L 3 71.02 79.32 16.79 %0.200 0.800 Y-W L 4 72.03 80.06 20.12 %0.267 0.733 Y-W L 5 73.04 80.82 23.87 %0.333 0.667 Y-W L 6 74.06 81.57 28.06 %0.400 0.600 Y-W L 7 75.09 82.33 32.71 %0.467 0.533 Y-W L 8 76.13 83.10 37.85 %0.533 0.467 Y-W L 9 77.18 83.87 43.49 %0.600 0.400 Y-W L 10 78.24 84.65 49.68 %0.667 0.333 Y-W L 11 79.31 85.43 56.42 %0.733 0.267 Y-W L 12 80.39 86.21 63.75 %0.800 0.200 Y-W L 13 81.48 87.00 71.69 %0.867 0.133 Y-W L 14 82.58 87.79 80.26 %0.933 0.067 Y-W L 15 83.69 88.59 89.48 %1.000 0.000 Y-W L 0 2.42 2.52 2.81 %0.000 1.000 N-W L 000n* setcmykcolor 48 1 3.69 3.85 4.21 %0.067 0.933 N-W L 2 5.33 5.58 6.02 %0.133 0.867 N-W L 3 7.40 7.77 8.28 %0.200 0.800 N-W L 4 9.95 10.46 11.05 %0.267 0.733 N-W L 5 13.03 13.71 14.38 %0.333 0.667 N-W L 6 16.68 17.57 18.31 %0.400 0.600 N-W L 7 20.96 22.10 22.90 %0.467 0.533 N-W L 8 25.92 27.34 28.21 %0.533 0.467 N-W L 9 31.60 33.36 34.27 %0.600 0.400 N-W L 10 38.05 40.20 41.14 %0.667 0.333 N-W L 11 45.33 47.91 48.88 %0.733 0.267 N-W L 12 53.49 56.56 57.53 %0.800 0.200 N-W L 13 62.57 66.18 67.15 %0.867 0.133 N-W L 14 72.62 76.84 77.78 %0.933 0.067 N-W L 15 83.69 88.59 89.48 %1.000 0.000 N-W L 0 30.13 16.75 2.68 %0.000 1.000 O-W L cmy0* setcmykcolor 64 1 32.64 19.36 4.05 %0.067 0.933 O-W L 2 35.29 22.23 5.83 %0.133 0.867 O-W L 3 38.07 25.37 8.07 %0.200 0.800 O-W L 4 41.00 28.79 10.81 %0.267 0.733 O-W L 5 44.08 32.51 14.12 %0.333 0.667 O-W L 6 47.31 36.54 18.04 %0.400 0.600 O-W L 7 50.69 40.88 22.62 %0.467 0.533 O-W L 8 54.22 45.56 27.92 %0.533 0.467 O-W L 9 57.92 50.58 33.99 %0.600 0.400 O-W L 10 61.78 55.95 40.88 %0.667 0.333 O-W L 11 65.81 61.70 48.64 %0.733 0.267 O-W L 12 70.02 67.82 57.33 %0.800 0.200 O-W L 13 74.39 74.34 67.00 %0.867 0.133 O-W L 14 78.95 81.26 77.70 %0.933 0.067 O-W L 15 83.69 88.59 89.48 %1.000 0.000 O-W L 0 8.71 19.18 6.62 %0.000 1.000 L-W L cmy0* setcmykcolor 80 1 10.82 21.85 8.62 %0.067 0.933 L-W L 2 13.25 24.75 10.99 %0.133 0.867 L-W L 3 16.02 27.90 13.77 %0.200 0.800 L-W L 4 19.14 31.31 16.97 %0.267 0.733 L-W L 5 22.66 34.98 20.63 %0.333 0.667 L-W L 6 26.57 38.93 24.79 %0.400 0.600 L-W L 7 30.91 43.17 29.47 %0.467 0.533 L-W L 8 35.71 47.71 34.70 %0.533 0.467 L-W L 9 40.97 52.55 40.52 %0.600 0.400 L-W L 10 46.73 57.70 46.96 %0.667 0.333 L-W L 11 53.00 63.19 54.04 %0.733 0.267 L-W L 12 59.81 69.01 61.81 %0.800 0.200 L-W L 13 67.18 75.18 70.28 %0.867 0.133 L-W L 14 75.13 81.70 79.49 %0.933 0.067 L-W L 15 83.69 88.59 89.48 %1.000 0.000 L-W L 0 7.17 4.65 21.40 %0.000 1.000 V-W L cmy0* setcmykcolor 96 1 9.15 6.39 24.13 %0.067 0.933 V-W L 2 11.46 8.50 27.07 %0.133 0.867 V-W L 3 14.13 11.05 30.25 %0.200 0.800 V-W L 4 17.19 14.05 33.66 %0.267 0.733 V-W L 5 20.65 17.55 37.32 %0.333 0.667 V-W L 6 24.56 21.60 41.24 %0.400 0.600 V-W L 7 28.93 26.22 45.43 %0.467 0.533 V-W L 8 33.79 31.45 49.88 %0.533 0.467 V-W L 9 39.16 37.34 54.62 %0.600 0.400 V-W L 10 45.07 43.93 59.65 %0.667 0.333 V-W L 11 51.56 51.24 64.99 %0.733 0.267 V-W L 12 58.64 59.33 70.62 %0.800 0.200 V-W L 13 66.33 68.22 76.58 %0.867 0.133 V-W L 14 74.67 77.97 82.86 %0.933 0.067 V-W L 15 83.69 88.59 89.48 %1.000 0.000 V-W L 0 2.42 2.52 2.81 %0.000 1.000 A-W L nnn0* setcmykcolor 112 1 3.69 3.85 4.21 %0.067 0.933 A-W L 2 5.33 5.58 6.02 %0.133 0.867 A-W L 3 7.40 7.77 8.28 %0.200 0.800 A-W L 4 9.95 10.46 11.05 %0.267 0.733 A-W L 5 13.03 13.71 14.38 %0.333 0.667 A-W L 6 16.68 17.57 18.31 %0.400 0.600 A-W L 7 20.96 22.10 22.90 %0.467 0.533 A-W L 8 25.92 27.34 28.21 %0.533 0.467 A-W L 9 31.60 33.36 34.27 %0.600 0.400 A-W L 10 38.05 40.20 41.14 %0.667 0.333 A-W L 11 45.33 47.91 48.88 %0.733 0.267 A-W L 12 53.49 56.56 57.53 %0.800 0.200 A-W L 13 62.57 66.18 67.15 %0.867 0.133 A-W L 14 72.62 76.84 77.78 %0.933 0.067 A-W L 15 83.69 88.59 89.48 %1.000 0.000 A-W L %no. CIEXYZ D65 rc 0.00% w* n* col L L10011FA.DAT CMYOLV.FOR 0 18.74 26.62 68.54 %0.000 1.000 C-W L olv* setrgbcolor 128 1 21.27 29.33 69.82 %0.067 0.933 C-W L 2 24.02 32.22 71.12 %0.133 0.867 C-W L 3 26.99 35.30 72.43 %0.200 0.800 C-W L 4 30.21 38.56 73.76 %0.267 0.733 C-W L 5 33.66 42.02 75.11 %0.333 0.667 C-W L 6 37.37 45.68 76.47 %0.400 0.600 C-W L 7 41.35 49.54 77.85 %0.467 0.533 C-W L 8 45.59 53.62 79.24 %0.533 0.467 C-W L 9 50.12 57.92 80.66 %0.600 0.400 C-W L 10 54.94 62.44 82.09 %0.667 0.333 C-W L 11 60.05 67.19 83.53 %0.733 0.267 C-W L 12 65.48 72.17 84.99 %0.800 0.200 C-W L 13 71.22 77.40 86.47 %0.867 0.133 C-W L 14 77.28 82.87 87.97 %0.933 0.067 C-W L 15 83.69 88.59 89.48 %1.000 0.000 C-W L 0 33.06 16.90 22.00 %0.000 1.000 M-W L olv* setrgbcolor 144 1 35.52 19.51 24.73 %0.067 0.933 M-W L 2 38.09 22.39 27.68 %0.133 0.867 M-W L 3 40.79 25.53 30.85 %0.200 0.800 M-W L 4 43.61 28.95 34.25 %0.267 0.733 M-W L 5 46.56 32.67 37.90 %0.333 0.667 M-W L 6 49.64 36.69 41.80 %0.400 0.600 M-W L 7 52.86 41.03 45.95 %0.467 0.533 M-W L 8 56.21 45.69 50.37 %0.533 0.467 M-W L 9 59.69 50.70 55.07 %0.600 0.400 M-W L 10 63.32 56.06 60.05 %0.667 0.333 M-W L 11 67.10 61.79 65.32 %0.733 0.267 M-W L 12 71.02 67.90 70.89 %0.800 0.200 M-W L 13 75.09 74.39 76.77 %0.867 0.133 M-W L 14 79.31 81.28 82.96 %0.933 0.067 M-W L 15 83.69 88.59 89.48 %1.000 0.000 M-W L 0 68.07 77.11 9.03 %0.000 1.000 Y-W L olv* setrgbcolor 160 1 69.05 77.84 11.27 %0.067 0.933 Y-W L 2 70.03 78.58 13.85 %0.133 0.867 Y-W L 3 71.02 79.32 16.79 %0.200 0.800 Y-W L 4 72.03 80.06 20.12 %0.267 0.733 Y-W L 5 73.04 80.82 23.87 %0.333 0.667 Y-W L 6 74.06 81.57 28.06 %0.400 0.600 Y-W L 7 75.09 82.33 32.71 %0.467 0.533 Y-W L 8 76.13 83.10 37.85 %0.533 0.467 Y-W L 9 77.18 83.87 43.49 %0.600 0.400 Y-W L 10 78.24 84.65 49.68 %0.667 0.333 Y-W L 11 79.31 85.43 56.42 %0.733 0.267 Y-W L 12 80.39 86.21 63.75 %0.800 0.200 Y-W L 13 81.48 87.00 71.69 %0.867 0.133 Y-W L 14 82.58 87.79 80.26 %0.933 0.067 Y-W L 15 83.69 88.59 89.48 %1.000 0.000 Y-W L 0 2.42 2.52 2.81 %0.000 1.000 N-W L w* setgray 176 1 3.69 3.85 4.21 %0.067 0.933 N-W L 2 5.33 5.58 6.02 %0.133 0.867 N-W L 3 7.40 7.77 8.28 %0.200 0.800 N-W L 4 9.95 10.46 11.05 %0.267 0.733 N-W L 5 13.03 13.71 14.38 %0.333 0.667 N-W L 6 16.68 17.57 18.31 %0.400 0.600 N-W L 7 20.96 22.10 22.90 %0.467 0.533 N-W L 8 25.92 27.34 28.21 %0.533 0.467 N-W L 9 31.60 33.36 34.27 %0.600 0.400 N-W L 10 38.05 40.20 41.14 %0.667 0.333 N-W L 11 45.33 47.91 48.88 %0.733 0.267 N-W L 12 53.49 56.56 57.53 %0.800 0.200 N-W L 13 62.57 66.18 67.15 %0.867 0.133 N-W L 14 72.62 76.84 77.78 %0.933 0.067 N-W L 15 83.69 88.59 89.48 %1.000 0.000 N-W L 0 30.13 16.75 2.68 %0.000 1.000 O-W L olv* setrgbcolor 194 1 32.64 19.36 4.05 %0.067 0.933 O-W L 2 35.29 22.23 5.83 %0.133 0.867 O-W L 3 38.07 25.37 8.07 %0.200 0.800 O-W L 4 41.00 28.79 10.81 %0.267 0.733 O-W L 5 44.08 32.51 14.12 %0.333 0.667 O-W L 6 47.31 36.54 18.04 %0.400 0.600 O-W L 7 50.69 40.88 22.62 %0.467 0.533 O-W L 8 54.22 45.56 27.92 %0.533 0.467 O-W L 9 57.92 50.58 33.99 %0.600 0.400 O-W L 10 61.78 55.95 40.88 %0.667 0.333 O-W L 11 65.81 61.70 48.64 %0.733 0.267 O-W L 12 70.02 67.82 57.33 %0.800 0.200 O-W L 13 74.39 74.34 67.00 %0.867 0.133 O-W L 14 78.95 81.26 77.70 %0.933 0.067 O-W L 15 83.69 88.59 89.48 %1.000 0.000 O-W L 0 8.71 19.18 6.62 %0.000 1.000 L-W L olv* setrgbcolor 210 1 10.82 21.85 8.62 %0.067 0.933 L-W L 2 13.25 24.75 10.99 %0.133 0.867 L-W L 3 16.02 27.90 13.77 %0.200 0.800 L-W L 4 19.14 31.31 16.97 %0.267 0.733 L-W L 5 22.66 34.98 20.63 %0.333 0.667 L-W L 6 26.57 38.93 24.79 %0.400 0.600 L-W L 7 30.91 43.17 29.47 %0.467 0.533 L-W L 8 35.71 47.71 34.70 %0.533 0.467 L-W L 9 40.97 52.55 40.52 %0.600 0.400 L-W L 10 46.73 57.70 46.96 %0.667 0.333 L-W L 11 53.00 63.19 54.04 %0.733 0.267 L-W L 12 59.81 69.01 61.81 %0.800 0.200 L-W L 13 67.18 75.18 70.28 %0.867 0.133 L-W L 14 75.13 81.70 79.49 %0.933 0.067 L-W L 15 83.69 88.59 89.48 %1.000 0.000 L-W L 0 7.17 4.65 21.40 %0.000 1.000 V-W L olv* setrgbcolor 226 1 9.15 6.39 24.13 %0.067 0.933 V-W L 2 11.46 8.50 27.07 %0.133 0.867 V-W L 3 14.13 11.05 30.25 %0.200 0.800 V-W L 4 17.19 14.05 33.66 %0.267 0.733 V-W L 5 20.65 17.55 37.32 %0.333 0.667 V-W L 6 24.56 21.60 41.24 %0.400 0.600 V-W L 7 28.93 26.22 45.43 %0.467 0.533 V-W L 8 33.79 31.45 49.88 %0.533 0.467 V-W L 9 39.16 37.34 54.62 %0.600 0.400 V-W L 10 45.07 43.93 59.65 %0.667 0.333 V-W L 11 51.56 51.24 64.99 %0.733 0.267 V-W L 12 58.64 59.33 70.62 %0.800 0.200 V-W L 13 66.33 68.22 76.58 %0.867 0.133 V-W L 14 74.67 77.97 82.86 %0.933 0.067 V-W L 15 83.69 88.59 89.48 %1.000 0.000 V-W L 0 2.42 2.52 2.81 %0.000 1.000 A-W L nnn* setrgbcolor 242 1 3.69 3.85 4.21 %0.067 0.933 A-W L 2 5.33 5.58 6.02 %0.133 0.867 A-W L 3 7.40 7.77 8.28 %0.200 0.800 A-W L 4 9.95 10.46 11.05 %0.267 0.733 A-W L 5 13.03 13.71 14.38 %0.333 0.667 A-W L 6 16.68 17.57 18.31 %0.400 0.600 A-W L 7 20.96 22.10 22.90 %0.467 0.533 A-W L 8 25.92 27.34 28.21 %0.533 0.467 A-W L 9 31.60 33.36 34.27 %0.600 0.400 A-W L 10 38.05 40.20 41.14 %0.667 0.333 A-W L 11 45.33 47.91 48.88 %0.733 0.267 A-W L 12 53.49 56.56 57.53 %0.800 0.200 A-W L 13 62.57 66.18 67.15 %0.867 0.133 A-W L 14 72.62 76.84 77.78 %0.933 0.067 A-W L 15 83.69 88.59 89.48 %1.000 0.000 A-W L ] def %END DM00/CMISO_S1gXYZ.DAT Output Linearization (OL), GLOBAL (G), 20011201 %BEG DM00/CM_S1GCMYOS.DAT Output Linearization (OL), GLOBAL (G), 20010901 %CMYOLVNW4DL.PS 4dimensional series %INCLUDES STANDARD (S) relative series a: cmyn-w and b: olv(cmy)-w /tzaccmyo1g 64 array def /tzamcmyo1g 64 array def /tzaycmyo1g 64 array def /tzancmyo1g 64 array def /tzbocmyo1g 64 array def /tzblcmyo1g 64 array def /tzbvcmyo1g 64 array def /tzbncmyo1g 64 array def /tzaccmyo1g [ %Ccmyo1g01.dat 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 ] def /tzamcmyo1g [ %Mcmyo1g01.dat 1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 ] def /tzaycmyo1g [ %Ycmyo1g01.dat 1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 ] def /tzancmyo1g [ %Ncmyo1g01.dat 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 ] def /tzbocmyo1g [ %Ocmyo1g01.dat 1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 ] def /tzblcmyo1g [ %Lcmyo1g01.dat 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 ] def /tzbvcmyo1g [ %Vcmyo1g01.dat 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 ] def /tzbncmyo1g [ %CMYcmyo1g01.dat 1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 ] def %END DM00/CM_S1GCMYOS.DAT Output Linearization (OL), GLOBAL (G), 20010901 %BEG SE90/10L/OUTLIN1YFA.PS Output Linearization, coordinate transfer 20060101 %BEG SE90/10L/L90E00FA.PS Linearization data in the File (F) for the device (Y) %File: www.ps.bam.de/SE90/10L/L90E00FP.PS %Output Linearization (OL) BY Linearization Method (LM) %CIELAB MEASUREMENT OF FIRST OUTPUT IS NECESSARY, e. g. File MISO_S1G.DAT % % 1. It is asumed that all Output Linearization (OL) data are % stored in this file SE90/10L/L90E00FP.PS for the device (Y). % 2. It is assumed that no Output Linearization (OL) data are % stored in the Distiller Startup (S) directory % for the device (Y) % 3. It is assumed that no Output Linearization (OL) data are % stored in the PostScript Device (D) memory of the device (Y) %possible Action: Delete the part %BEG SE90/OUTLIN11.PS ... until ...%END SE90:OUTLIN11.PS %of this file SE90/10L/L90E00FP.PS for the device (Y) %Result of this action: %Then in the file SE90/10L/L90E00FP.PS there are no Output Linearization (OL) data. %The PS output will be the same compared to the file %which includes no (N) Output Linearization (OL) data %Remark: % It is assumed that no Output Linearization (OL) data are % stored in the Distiller Startup (S) directory % or the PostScript Device (D) memory % for the device (Y) /inputarrayS1 16 array def /inputarrayS1 %8-bit equidistant units (default data) [0 17 34 51 68 85 102 119 136 153 170 187 204 221 238 255] bind def /outputarrayS1 256 array def /outputarrayS1 [%relative equidistamt CIELAB units (default data) 0.0000 0.6667 0.1333 0.2000 0.2667 0.3333 0.4000 0.4667 %C-W cmy0* setcmykcolor 0.5333 0.6000 0.6667 0.7333 0.8000 0.8667 0.9333 1.0000 %C-W cmy0* setcmykcolor 0.0000 0.6667 0.1333 0.2000 0.2667 0.3333 0.4000 0.4667 %M-W cmy0* setcmykcolor 0.5333 0.6000 0.6667 0.7333 0.8000 0.8667 0.9333 1.0000 %M-W cmy0* setcmykcolor 0.0000 0.6667 0.1333 0.2000 0.2667 0.3333 0.4000 0.4667 %Y-W cmy0* setcmykcolor 0.5333 0.6000 0.6667 0.7333 0.8000 0.8667 0.9333 1.0000 %Y-W cmy0* setcmykcolor 0.0000 0.6667 0.1333 0.2000 0.2667 0.3333 0.4000 0.4667 %N-W 000n* setcmykcolor 0.5333 0.6000 0.6667 0.7333 0.8000 0.8667 0.9333 1.0000 %N-W 000n* setcmykcolor 0.0000 0.6667 0.1333 0.2000 0.2667 0.3333 0.4000 0.4667 %O-W cmy0* setcmykcolor 0.5333 0.6000 0.6667 0.7333 0.8000 0.8667 0.9333 1.0000 %O-W cmy0* setcmykcolor 0.0000 0.6667 0.1333 0.2000 0.2667 0.3333 0.4000 0.4667 %L-W cmy0* setcmykcolor 0.5333 0.6000 0.6667 0.7333 0.8000 0.8667 0.9333 1.0000 %L-W cmy0* setcmykcolor 0.0000 0.6667 0.1333 0.2000 0.2667 0.3333 0.4000 0.4667 %V-W cmy0* setcmykcolor 0.5333 0.6000 0.6667 0.7333 0.8000 0.8667 0.9333 1.0000 %V-W cmy0* setcmykcolor 0.0000 0.6667 0.1333 0.2000 0.2667 0.3333 0.4000 0.4667 %A-W nnn* setcmykcolor 0.5333 0.6000 0.6667 0.7333 0.8000 0.8667 0.9333 1.0000 %A-W nnn* setcmykcolor 0.0000 0.6667 0.1333 0.2000 0.2667 0.3333 0.4000 0.4667 %C-W olv* setrgbcolor 0.5333 0.6000 0.6667 0.7333 0.8000 0.8667 0.9333 1.0000 %C-W olv* setrgbcolor 0.0000 0.6667 0.1333 0.2000 0.2667 0.3333 0.4000 0.4667 %M-W olv* setrgbcolor 0.5333 0.6000 0.6667 0.7333 0.8000 0.8667 0.9333 1.0000 %M-W olv* setrgbcolor 0.0000 0.6667 0.1333 0.2000 0.2667 0.3333 0.4000 0.4667 %Y-W olv* setrgbcolor 0.5333 0.6000 0.6667 0.7333 0.8000 0.8667 0.9333 1.0000 %Y-W olv* setrgbcolor 0.0000 0.6667 0.1333 0.2000 0.2667 0.3333 0.4000 0.4667 %N-W w* setgray 0.5333 0.6000 0.6667 0.7333 0.8000 0.8667 0.9333 1.0000 %N-W w* setgray 0.0000 0.6667 0.1333 0.2000 0.2667 0.3333 0.4000 0.4667 %O-W olv* setrgbcolor 0.5333 0.6000 0.6667 0.7333 0.8000 0.8667 0.9333 1.0000 %O-W olv* setrgbcolor 0.0000 0.6667 0.1333 0.2000 0.2667 0.3333 0.4000 0.4667 %L-W olv* setrgbcolor 0.5333 0.6000 0.6667 0.7333 0.8000 0.8667 0.9333 1.0000 %L-W olv* setrgbcolor 0.0000 0.6667 0.1333 0.2000 0.2667 0.3333 0.4000 0.4667 %V-W olv* setrgbcolor 0.5333 0.6000 0.6667 0.7333 0.8000 0.8667 0.9333 1.0000 %V-W olv* setrgbcolor 0.0000 0.6667 0.1333 0.2000 0.2667 0.3333 0.4000 0.4667 %A-W www* setrgbcolor 0.5333 0.6000 0.6667 0.7333 0.8000 0.8667 0.9333 1.0000 %A-W www* setrgbcolor ] bind def % If the ith element of the inputarray is used the measured colour at % the ouput will be that given by the corresponding element in the % output array. % The ioFunction uses the input and output arrays to determine % which value is needed inorder to achieve the desired 'color' at the output. % If the ith element of the inputarray is used the measured colour at % the ouput will be that given by the corresponding element in the % output array. % The ioFunction uses the input and output arrays to determine % which value is needed inorder to achieve the desired 'color' at the output. /cmyw1g 1 def /ioA 0 def /ioFunction0 {%BEG search the outputarrayS1 using a for loop ioA 0 eq {%BEG ioA = 0 %*******************************BEG special transfer XYZ -> LAB* IMES 1 eq {MXYZ_to_LAB*} if %*******************************END special transfer XYZ -> LAB* /ioA 1 def %new value 0 16 240 {/jMISO exch def %j=0,112,16 /i10 jMISO 4 mul def /i20 i10 15 4 mul add def /DifAW {MISO_S1g i20 1 add get MISO_S1g i10 1 add get sub dup mul MISO_S1g i20 2 add get MISO_S1g i10 2 add get sub dup mul add MISO_S1g i20 3 add get MISO_S1g i10 3 add get sub dup mul add sqrt} bind def 0 1 15 {/iMISO exch def %outputarrayS1A Definition outputarrayS1 jMISO iMISO add /i2i i10 iMISO 4 mul add def MISO_S1g i2i 1 add get MISO_S1g i10 1 add get sub dup mul MISO_S1g i2i 2 add get MISO_S1g i10 2 add get sub dup mul add MISO_S1g i2i 3 add get MISO_S1g i10 3 add get sub dup mul add sqrt DifAW div put } for %outputarrayS1 Definition } for %j=0,240,16 } if %BEG ioA = 0 } bind def %END search the outputarrayS1 using a for loop /ioFunctiont {%BEG search the transferf using a for loop /L*Ng outputarrayS1 jx 0 add get 0.0005 add def /L*Wg outputarrayS1 jx 15 add get 0.0005 sub def %/L*Ng 18.01 def /L*Wg 95.41 def /L*NG L*Ng def /L*WG L*Wg def %transferf converts a value between 0 and 1 %to one between 18.01 and 95.41 /transferf {L*WG L*NG sub mul L*NG add} bind def } bind def %END search the transferf using a for loop /ioFunction { %BEG search the modcolor using a for loop 1 1 15 {/iMISO exch def %i=1,15 color outputarrayS1 jx iMISO add get lt color outputarrayS1 jx iMISO 1 sub add get ge and {/outmax outputarrayS1 jx iMISO add get def /inpmax inputarrayS1 iMISO get def /outmin outputarrayS1 jx iMISO 1 sub add get def /inpmin inputarrayS1 iMISO 1 sub get def exit } if } for %i=1,15 % Use a linear interpolation /modcolor color outmin sub outmax outmin sub div inpmax inpmin sub mul inpmin add def } bind def %END search the modcolor using a for loop /transn {/jx exch def i*ptrsca 1 eq {/jx jx 128 add def} if %olv* setrgbcolor output(128-255) i*ptrsca 3 eq {/jx jx 128 add def} if %w* setgray output (128-255) i*ptrsca 7 eq {/jx jx 128 add def} if %w* setgray output (128-255) ioFunction0 ioFunctiont /color exch 1 exch sub transferf def ioFunction modcolor 255 div 1 exch sub} def /transp {/jx exch def i*ptrsca 1 eq {/jx jx 128 add def} if %olv* setrgbcolor output(128-255) i*ptrsca 3 eq {/jx jx 128 add def} if %w* setgray output (128-255) i*ptrsca 7 eq {/jx jx 128 add def} if %w* setgray output (128-255) ioFunction0 ioFunctiont /color exch transferf def ioFunction modcolor 255 div} def /cmy*io_to_cmy'*ioG { %BEG Procedure cmy*io_to_cmy'*ioG /ncolor exch def /ycolor exch def /mcolor exch def /ccolor exch def /e*n 1 e*w sub def i*p 0 eq i*p 1 eq or {%sector C-V of C-M, C>=M, i*p=0; o:O-Y %sector V-M of C-M, M>=C, i*p=1, o:Y-L /c1color ccolor 0 transn def %C /c2color ccolor 96 transn def %V /c3color ccolor 112 transn def %N /m1color mcolor 16 transn def %M /m2color mcolor 96 transn def %V /m3color mcolor 112 transn def %N /y1color ycolor 32 transn def %Y /y2color ycolor i*p 0 eq {64} {80} ifelse transn def %O,L /y3color ycolor 112 transn def %N /c'*w c1color t*n mul c2color t*p mul add e*w mul c3color e*n mul add def /m'*w m1color t*n mul m2color t*p mul add e*w mul m3color e*n mul add def /y'*w y1color t*n mul y2color t*p mul add e*w mul y3color e*n mul add def /n'*w 0 def } if %sector C-M i*p 2 eq i*p 3 eq or {%sector M-O of M-Y, M>=Y, i*p=2; o:L-C %sector O-Y of M-Y, Y>=M, i*p=3: o:C-V /m1color mcolor 16 transn def %M /m2color mcolor 64 transn def %O /m3color mcolor 112 transn def %N /y1color ycolor 32 transn def %Y /y2color ycolor 64 transn def %O /y3color ycolor 112 transn def %N /c1color ccolor 0 transn def %C /c2color ccolor i*p 2 eq {80} {96} ifelse transn def %L,V /c3color ccolor 112 transn def %N /m'*w m1color t*n mul m2color t*p mul add e*w mul m3color e*n mul add def /y'*w y1color t*n mul y2color t*p mul add e*w mul y3color e*n mul add def /c'*w c1color t*n mul c2color t*p mul add e*w mul c3color e*n mul add def /n'*w 0 def } if %sector M-Y i*p 4 eq i*p 5 eq or {%sector Y-L of Y-C, Y>=C, i*p=4; o:V-M %sector L-C of Y-C, C>=Y, i*p=5; o:M-O /y1color ycolor 32 transn def %Y /y2color ycolor 80 transn def %L /y3color ycolor 112 transn def %N /c1color ccolor 0 transn def %C /c2color ccolor 80 transn def %L /c3color ccolor 112 transn def %N /m1color mcolor 16 transn def %M /m2color mcolor i*p 4 eq {96} {64} ifelse transn def %V,O /m3color mcolor 112 transn def %N /y'*w y1color t*n mul y2color t*p mul add e*w mul y3color e*n mul add def /c'*w c1color t*n mul c2color t*p mul add e*w mul c3color e*n mul add def /m'*w m1color t*n mul m2color t*p mul add e*w mul m3color e*n mul add def /n'*w 0 def } if %sector Y-C %special All achromatic colors N=CMY i*p 6 eq {%i*p=6 /c1color ccolor 112 transn def /m1color mcolor 112 transn def /y1color ycolor 112 transn def /e*w 0 def /t*p 0 def /t*n 1 def /t*n 0 def /c'*w c1color def /m'*w m1color def /y'*w y1color def /n'*w 0 def } if %All achromatic colors %special All achromatic colors only N i*p 7 eq {%i*p=7 /c1color 0 def /m1color 0 def /y1color 0 def /n1color ncolor 48 transn def /e*w 0 def /t*p 0 def /t*n 1 def /t*n 0 def /c'*w 0 def /m'*w 0 def /y'*w 0 def /n'*w n1color def } if %All achromatic colors c'*w m'*w y'*w n'*w } def %END Procedure cmy*io_to_cmy'*ioG /OLoutcmyn1G {%BEG Procedure OLoutcmyn1G: OL and output by setxy %BEG Change by Output Linearisation (OL) % only if device data different from linear /iLAB 0 def LAB*ioG /IMODE 1 def %cmy* /c* c*w def /m* m*w def /y* y*w def cmyolv*io_to_LAB*ioG /o*n 1 c*w sub def /l*n 1 m*w sub def /v*n 1 y*w sub def /white7 l*CIE def %NEW relative CIE lightness /black7 1 white7 sub def i*ptrsca 0 eq {c*w m*w sub abs 0.01 le c*w y*w sub abs 0.01 le and {/i*p 7 def 0 0 0 black7} {c*w m*w y*w 0} ifelse} if i*ptrsca 1 eq {c*w m*w sub abs 0.01 le c*w y*w sub abs 0.01 le and {/i*p 7 def 0 0 0 black7} {c*w m*w y*w 0} ifelse} if i*ptrsca 2 eq {c*w m*w y*w 0} if i*ptrsca 3 eq {c*w m*w y*w 0} if i*ptrsca 4 eq {c*w m*w y*w 0} if i*ptrsca 5 eq {c*w m*w y*w 0} if i*ptrsca 6 eq {/i*p 7 def 0 0 0 black7} if i*ptrsca 7 eq {/i*p 7 def 0 0 0 black7} if } def %END Procedure OLoutcmyn1G: OL and output by setxy /OLoutcmyn2G {%BEG Procedure OLoutcmyn2G: OL and output by setxy cmy*io_to_cmy'*ioG %END Change by Output Linearisation (OL) /n'*w exch def /y'*w exch def /m'*w exch def /c'*w exch def i*ptrsca 0 eq {i*p 7 eq {0 0 0 n'*w sgcmykcolor} {c'*w m'*w y'*w 0 sgcmykcolor} ifelse } if i*ptrsca 1 eq {i*p 7 eq {1 n'*w sub sggray} {1 c'*w sub 1 m'*w sub 1 y'*w sub sgrgbcolor} ifelse } if i*ptrsca 2 eq {c'*w m'*w y'*w 0 sgcmykcolor} if i*ptrsca 3 eq {1 c'*w sub 1 m'*w sub 1 y'*w sub sgrgbcolor} if i*ptrsca 4 eq i*ptrsca 5 eq or { %lab* relative or LAB* absolute [/CIEBasedABC << %Farbraum und Grenzen fuer D65 /RangeABC [0 100 -128 127 -128 127] /DecodeABC [{16 add 116 div} bind {500 div} bind {200 div} bind] /MatrixABC [1 1 1 1 0 0 0 0 -1] /DecodeLMN [{dup 6 29 div ge {dup dup mul mul} {4 29 div sub 108 841 div mul} ifelse 0.9505 mul} bind {dup 6 29 div ge {dup dup mul mul} {4 29 div sub 108 841 div mul} ifelse} bind {dup 6 29 div ge {dup dup mul mul} {4 29 div sub 108 841 div mul} ifelse 1.0890 mul} bind] /WhitePoint [0.9505 1 1.089] %CIEXYZ fuer D65 >>] setcolorspace } if %lab* relative or LAB* absolute i*ptrsca 4 eq { %lab L*F L*Ninp sub L*Winp L*Ninp sub div 100 mul A*F B*F sgcolor } if %lab i*ptrsca 5 eq { %LAB L*F A*F B*F sgcolor } if %LAB i*ptrsca 6 eq {0 0 0 n'*w sgcmykcolor} if i*ptrsca 7 eq {1 n'*w sub sggray} if } def %END Procedure OLoutcmyn2: OL and output by setxy /setcmykcolor {%BEG Procedure setcymkcolor /black exch def /y*w exch def /m*w exch def /c*w exch def black 0 gt c*w abs 0.01 le and m*w abs 0.01 le and y*w abs 0.01 le and {/black7 black def /c*w black7 def /m*w black7 def /y*w black7 def /n*w 0 def} if /i*ptrsca i*ptrsc def OLoutcmyn1G %Procedure OLoutcmyn1G: OL and output by setxy OLoutcmyn2G %Procedure OLoutcmyn2G: OL and output by setxy /i*ptrsca i*ptrsc def } def %END Procedure setcymkcolor /setgray {%BEG Procedure exchange of setgray by setxy /black7 exch 1 exch sub def /c*w black7 def /m*w black7 def /y*w black7 def /n*w 0 def /i*ptrsca i*ptrsc def OLoutcmyn1G %Procedure OLoutcmyn1G: OL and output by setxy OLoutcmyn2G %Procedure OLoutcmyn2G: OL and output by setxy /i*ptrsca i*ptrsc def } def %END Procedure exchange of setgray by setxy /setrgbcolor {%BEG Procedure exchange setrgbcolor by setxy /v*n exch def /l*n exch def /o*n exch def /c*w 1 o*n sub def /m*w 1 l*n sub def /y*w 1 v*n sub def /n*w 0 def /i*ptrsca i*ptrsc def OLoutcmyn1G %Procedure OLoutcmyn1G: OL and output by setxy OLoutcmyn2G %Procedure OLoutcmyn2G: OL and output by setxy /i*ptrsca i*ptrsc def } def %END Procedure exchange setrgbcolor by setxy /setcolor {%BEG Procedure exchange of setcolor by setxy %input data definition /iLAB 0 def LAB*ioG %default: ISIN*ioG=0 input data: the Offset Reflective System (ORS) %default: ISOU*ioG=0 output data: the Offset Reflective System (ORS) LAB*io_to_cmyolv*ioG %produces allways n*w=0 /n*w exch def /y*w exch def /m*w exch def /c*w exch def c*w m*w y*w 0 /black exch def /y*w exch def /m*w exch def /c*w exch def /i*ptrsca i*ptrsc def OLoutcmyn1G %Procedure OLoutcmyn1G: OL and output by setxy OLoutcmyn2G %Procedure OLoutcmyn2G: OL and output by setxy /i*ptrsca i*ptrsc def } def %END exchange of setcolor by setxy %END SE90/10L/L90E00FA.PS Linearization data in the File (F) for the device (Y) %END SE90/10L/OUTLIN1YFA.PS Output Linearization, coordinate transfer 20060101 %BEG SE90/10L/OUTLIN1IFA.PS olv* image input and output Linearization 20060101 %adg_olv* image input linearisation; ad = analog-digital %three separate coordinates olv* %assumption: 128 data /adg_olv*' within image % = 20 .. 240 for o*, = 30.. 230 for l*, = 15 ... 220 for v*: unequal spacing %assumption: 128 data /adg_olv* of standard original % equal to inpadg_arrayS1 (0, 17, ..., 255): equal spacing %in the following there are example data for %16 achromatic and 16 CIE-test colours of Fig. B4 of ISO/IEC-test chart no. 2 %which are replaced by the image data of Fig. B1 of ISO/IEC-test chart no. 2 %adg_olv* , adg_cmy* input image data (normaly equal spacing in olv*, cmy*) %adg_olv*', adg_cmy*' output image data (unequal spacing in olv*, cmy*) %line 19, data: line 20-157 /adg_olv*' [ %Begin adg_olv*'; L=Linear model data 16 grey and 16 CIE-TC 00 0.0 0.0 0.0 %L 0.0000 olv*PR18/TV18 01 17.0 17.0 17.0 %L 0.0667 olv*PR18/TV18 02 34.0 34.0 34.0 %L 0.1333 olv*PR18/TV18 03 51.0 51.0 51.0 %L 0.2000 olv*PR18/TV18 04 68.0 68.0 68.0 %L 0.2667 olv*PR18/TV18 05 85.0 85.0 85.0 %L 0.3333 olv*PR18/TV18 06 102.0 102.0 102.0 %L 0.4000 olv*PR18/TV18 07 117.0 119.0 119.0 %L 0.4667 olv*PR18/TV18 08 136.0 136.0 136.0 %L 0.5333 olv*PR18/TV18 09 153.0 153.0 153.0 %L 0.6000 olv*PR18/TV18 10 170.0 170.0 170.0 %L 0.6667 olv*PR18/TV18 11 187.0 187.0 187.0 %L 0.7333 olv*PR18/TV18 12 204.0 204.0 204.0 %L 0.8000 olv*PR18/TV18 13 221.0 221.0 221.0 %L 0.8667 olv*PR18/TV18 14 238.0 238.0 238.0 %L 0.9333 olv*PR18/TV18 15 255.0 255.0 255.0 %L 1.0000 olv*PR18/TV18 16 184.2 117.1 134.5 %L no. 01 olv*PR18/CIETC 17 152.4 140.3 73.3 %L no. 02 olv*PR18/CIETC 18 122.3 189.6 31.5 %L no. 03 olv*PR18/CIETC 19 80.9 221.9 95.9 %L no. 04 olv*PR18/CIETC 20 89.6 203.0 174.5 %L no. 05 olv*PR18/CIETC 21 87.9 177.0 263.9 %L no. 06 olv*PR18/CIETC 22 130.2 124.4 284.1 %L no. 07 olv*PR18/CIETC 23 176.2 115.8 257.8 %L no. 08 olv*PR18/CIETC 24 205.8 -12.2 58.0 %L no. 09 olv*PR18/CIETC 25 231.9 212.4 34.8 %L no. 10 olv*PR18/CIETC 26 24.4 220.9 72.8 %L no. 11 olv*PR18/CIETC 27 -40.6 89.8 226.5 %L no. 12 olv*PR18/CIETC 28 237.1 186.9 166.5 %L no. 13 olv*PR18/CIETC 29 57.2 105.9 11.4 %L no. 14 olv*PR18/CIETC 30 0.0 0.0 0.0 %L 0.0000 olv*PR18/N 31 255.0 255.0 255.0 %L 1.0000 olv*PR18/W ] def %End adg_olv*' /adg_cmy*' [ %Begin adg_cmy*'; L=Linear model data 16 grey and 16 CIE-TC 00 255.0 255.0 255.0 %L 0.0000 cmy*PR18/TV18 01 238.0 238.0 238.0 %L 0.0667 cmy*PR18/TV18 02 221.0 221.0 221.0 %L 0.1333 cmy*PR18/TV18 03 204.0 204.0 204.0 %L 0.2000 cmy*PR18/TV18 04 187.0 187.0 187.0 %L 0.2667 cmy*PR18/TV18 05 170.0 170.0 170.0 %L 0.3333 cmy*PR18/TV18 06 153.0 153.0 153.0 %L 0.4000 cmy*PR18/TV18 07 136.0 136.0 136.0 %L 0.4667 cmy*PR18/TV18 08 117.0 119.0 119.0 %L 0.5333 cmy*PR18/TV18 09 102.0 102.0 102.0 %L 0.6000 cmy*PR18/TV18 10 85.0 85.0 85.0 %L 0.6667 cmy*PR18/TV18 11 68.0 68.0 68.0 %L 0.7333 cmy*PR18/TV18 12 51.0 51.0 51.0 %L 0.8000 cmy*PR18/TV18 13 34.0 34.0 34.0 %L 0.8667 cmy*PR18/TV18 14 17.0 17.0 17.0 %L 0.9333 cmy*PR18/TV18 15 0.0 0.0 0.0 %L 1.0000 cmy*PR18/TV18 16 70.8 137.9 120.5 %L no. 01 cmy*PR18/CIETC 17 102.6 114.7 181.7 %L no. 02 cmy*PR18/CIETC 18 132.7 65.4 223.5 %L no. 03 cmy*PR18/CIETC 19 174.1 33.1 159.1 %L no. 04 cmy*PR18/CIETC 20 165.4 52.0 80.5 %L no. 05 cmy*PR18/CIETC 21 167.1 78.0 -8.8 %L no. 06 cmy*PR18/CIETC 22 124.8 130.6 -29.0 %L no. 07 cmy*PR18/CIETC 23 78.8 139.2 -2.7 %L no. 08 cmy*PR18/CIETC 24 49.2 267.3 197.0 %L no. 09 cmy*PR18/CIETC 25 23.1 42.6 220.2 %L no. 10 cmy*PR18/CIETC 26 230.6 34.1 182.2 %L no. 11 cmy*PR18/CIETC 27 295.7 165.2 28.5 %L no. 12 cmy*PR18/CIETC 28 17.9 68.1 88.5 %L no. 13 cmy*PR18/CIETC 29 197.8 149.1 243.6 %L no. 14 cmy*PR18/CIETC 30 255.0 255.0 255.0 %L 1.0000 cmy*PR18/N 31 0.0 0.0 0.0 %L 0.0000 cmy*PR18/W ] def %End adg_cmy*' /adg_olv* [ %Begin adg_olv*; L=Linear model data 16 grey and 16 CIE-TC 00 0.0 0.0 0.0 %L 0.0000 olv*PR18/TV18 01 17.0 17.0 17.0 %L 0.0667 olv*PR18/TV18 02 34.0 34.0 34.0 %L 0.1333 olv*PR18/TV18 03 51.0 51.0 51.0 %L 0.2000 olv*PR18/TV18 04 68.0 68.0 68.0 %L 0.2667 olv*PR18/TV18 05 85.0 85.0 85.0 %L 0.3333 olv*PR18/TV18 06 102.0 102.0 102.0 %L 0.4000 olv*PR18/TV18 07 117.0 119.0 119.0 %L 0.4667 olv*PR18/TV18 08 136.0 136.0 136.0 %L 0.5333 olv*PR18/TV18 09 153.0 153.0 153.0 %L 0.6000 olv*PR18/TV18 10 170.0 170.0 170.0 %L 0.6667 olv*PR18/TV18 11 187.0 187.0 187.0 %L 0.7333 olv*PR18/TV18 12 204.0 204.0 204.0 %L 0.8000 olv*PR18/TV18 13 221.0 221.0 221.0 %L 0.8667 olv*PR18/TV18 14 238.0 238.0 238.0 %L 0.9333 olv*PR18/TV18 15 255.0 255.0 255.0 %L 1.0000 olv*PR18/TV18 16 184.2 117.1 134.5 %L no. 01 olv*PR18/CIETC 17 152.4 140.3 73.3 %L no. 02 olv*PR18/CIETC 18 122.3 189.6 31.5 %L no. 03 olv*PR18/CIETC 19 80.9 221.9 95.9 %L no. 04 olv*PR18/CIETC 20 89.6 203.0 174.5 %L no. 05 olv*PR18/CIETC 21 87.9 177.0 263.9 %L no. 06 olv*PR18/CIETC 22 130.2 124.4 284.1 %L no. 07 olv*PR18/CIETC 23 176.2 115.8 257.8 %L no. 08 olv*PR18/CIETC 24 205.8 -12.2 58.0 %L no. 09 olv*PR18/CIETC 25 231.9 212.4 34.8 %L no. 10 olv*PR18/CIETC 26 24.4 220.9 72.8 %L no. 11 olv*PR18/CIETC 27 -40.6 89.8 226.5 %L no. 12 olv*PR18/CIETC 28 237.1 186.9 166.5 %L no. 13 olv*PR18/CIETC 29 57.2 105.9 11.4 %L no. 14 olv*PR18/CIETC 30 0.0 0.0 0.0 %L 0.0000 olv*PR18/N 31 255.0 255.0 255.0 %L 1.0000 olv*PR18/W ] def %End adg_olv* /adg_cmy* [ %Begin adg_cmy*; L=Linear model data 16 grey and 16 CIE-TC 00 255.0 255.0 255.0 %L 0.0000 cmy*PR18/TV18 01 238.0 238.0 238.0 %L 0.0667 cmy*PR18/TV18 02 221.0 221.0 221.0 %L 0.1333 cmy*PR18/TV18 03 204.0 204.0 204.0 %L 0.2000 cmy*PR18/TV18 04 187.0 187.0 187.0 %L 0.2667 cmy*PR18/TV18 05 170.0 170.0 170.0 %L 0.3333 cmy*PR18/TV18 06 153.0 153.0 153.0 %L 0.4000 cmy*PR18/TV18 07 136.0 136.0 136.0 %L 0.4667 cmy*PR18/TV18 08 117.0 119.0 119.0 %L 0.5333 cmy*PR18/TV18 09 102.0 102.0 102.0 %L 0.6000 cmy*PR18/TV18 10 85.0 85.0 85.0 %L 0.6667 cmy*PR18/TV18 11 68.0 68.0 68.0 %L 0.7333 cmy*PR18/TV18 12 51.0 51.0 51.0 %L 0.8000 cmy*PR18/TV18 13 34.0 34.0 34.0 %L 0.8667 cmy*PR18/TV18 14 17.0 17.0 17.0 %L 0.9333 cmy*PR18/TV18 15 0.0 0.0 0.0 %L 1.0000 cmy*PR18/TV18 16 70.8 137.9 120.5 %L no. 01 cmy*PR18/CIETC 17 102.6 114.7 181.7 %L no. 02 cmy*PR18/CIETC 18 132.7 65.4 223.5 %L no. 03 cmy*PR18/CIETC 19 174.1 33.1 159.1 %L no. 04 cmy*PR18/CIETC 20 165.4 52.0 80.5 %L no. 05 cmy*PR18/CIETC 21 167.1 78.0 -8.8 %L no. 06 cmy*PR18/CIETC 22 124.8 130.6 -29.0 %L no. 07 cmy*PR18/CIETC 23 78.8 139.2 -2.7 %L no. 08 cmy*PR18/CIETC 24 49.2 267.3 197.0 %L no. 09 cmy*PR18/CIETC 25 23.1 42.6 220.2 %L no. 10 cmy*PR18/CIETC 26 230.6 34.1 182.2 %L no. 11 cmy*PR18/CIETC 27 295.7 165.2 28.5 %L no. 12 cmy*PR18/CIETC 28 17.9 68.1 88.5 %L no. 13 cmy*PR18/CIETC 29 197.8 149.1 243.6 %L no. 14 cmy*PR18/CIETC 30 255.0 255.0 255.0 %L 1.0000 cmy*PR18/N 31 0.0 0.0 0.0 %L 0.0000 cmy*PR18/W ] def %End adg_cmy* /inpadg_arrayS1 [0 17 34 51 68 85 102 119 136 153 170 187 204 221 238 255] bind def %adg_o* /L*NgS1o adg_olv*' 1 get 0.01 add def /L*WgS1o adg_olv*' 61 get 0.01 sub def /L*NS1o L*NgS1o def /L*WS1o L*WgS1o def /L*difo L*WS1o L*NS1o sub def % transferfo converts a decimal value between 0 and 1 to one between 8 and 120. /transferfo {L*NS1o sub L*difo div} bind def % The ioFunctiono uses the input and output arrays to determine % which value is needed inorder to achieve the desired 'color' at the output. /outadg_arrayS1o 16 array def /ioendo 0 def /ioFunctiono {%beg ioFunctiono ioendo 0 eq {%ioend=0 0 1 15 {/i exch def %i=0,15 outadg_arrayS1o i adg_olv*' i 4 mul 1 add get L*NS1o sub L*difo div put } for %i=0,15 /ioendo 1 def } if %ioend=0 % search the outadg_arrayS1 using a for loop 1 1 15 {/i exch def /previndex i 1 sub def outcolo outadg_arrayS1o i get lt outcolo outadg_arrayS1o previndex get ge and { /outmax outadg_arrayS1o i get def /inpmax inpadg_arrayS1 i get def /outmin outadg_arrayS1o previndex get def /inpmin inpadg_arrayS1 previndex get def exit } if } for % Use a linear interpolation /inpcolo outcolo outmin sub outmax outmin sub div inpmax inpmin sub mul inpmin add def } bind def %end ioFunctiono %adg_l* /L*NgS1l adg_olv*' 2 get 0.01 add def /L*WgS1l adg_olv*' 62 get 0.01 sub def /L*NS1l L*NgS1l def /L*WS1l L*WgS1l def /L*difl L*WS1l L*NS1l sub def % transferfl converts a decimal value between 0 and 1 to one between 8 and 120. /transferfl {L*NS1l sub L*difl div} bind def % The ioFunctionl uses the input and output arrays to determine % which value is needed inorder to achieve the desired 'color' at the output. /outadg_arrayS1l 16 array def /ioendl 0 def /ioFunctionl {%beg ioFunctionl ioendl 0 eq {%ioend=0 0 1 15 {/i exch def %i=0,15 outadg_arrayS1l i adg_olv*' i 4 mul 2 add get L*NS1l sub L*difl div put } for %i=0,15 /ioendl 1 def } if %ioend=0 % search the outadg_arrayS1 using a for loop 1 1 15 {/i exch def /previndex i 1 sub def outcoll outadg_arrayS1l i get lt outcoll outadg_arrayS1l previndex get ge and { /outmax outadg_arrayS1l i get def /inpmax inpadg_arrayS1 i get def /outmin outadg_arrayS1l previndex get def /inpmin inpadg_arrayS1 previndex get def exit } if } for % Use a linear interpolation /inpcoll outcoll outmin sub outmax outmin sub div inpmax inpmin sub mul inpmin add def } bind def %end ioFunctionl %adg_v* /L*NgS1v adg_olv*' 3 get 0.01 add def /L*WgS1v adg_olv*' 63 get 0.01 sub def /L*NS1v L*NgS1v def /L*WS1v L*WgS1v def /L*difv L*WS1v L*NS1v sub def % transferfv converts a decimal value between 0 and 1 to one between 8 and 120. /transferfv {L*NS1v sub L*difv div} bind def % The ioFunctionv uses the input and output arrays to determine % which value is needed inorder to achieve the desired 'color' at the output. /outadg_arrayS1v 16 array def /ioendv 0 def /ioFunctionv {%beg ioFunctionv ioendv 0 eq {%ioend=0 0 1 15 {/i exch def %i=0,15 outadg_arrayS1v i adg_olv*' i 4 mul 3 add get L*NS1v sub L*difv div put } for %i=0,15 /ioendv 1 def } if %ioend=0 % search the outadg_arrayS1 using a for loop 1 1 15 {/i exch def /previndex i 1 sub def outcolv outadg_arrayS1v i get lt outcolv outadg_arrayS1v previndex get ge and { /outmax outadg_arrayS1v i get def /inpmax inpadg_arrayS1 i get def /outmin outadg_arrayS1v previndex get def /inpmin inpadg_arrayS1 previndex get def exit } if } for % Use a linear interpolation /inpcolv outcolv outmin sub outmax outmin sub div inpmax inpmin sub mul inpmin add def } bind def %end ioFunctionv /prozo*g {/adg_ocolor exch 255 mul def adg_ocolor L*NS1o le {/adg_ocolor L*NS1o 0.01 add def} if adg_ocolor L*WS1o ge {/adg_ocolor L*WS1o 0.01 sub def} if /outcolo adg_ocolor transferfo def ioFunctiono inpcolo 255 div } bind def /prozl*g {/adg_lcolor exch 255 mul def adg_lcolor L*NS1l le {/adg_lcolor L*NS1l 0.01 add def} if adg_lcolor L*WS1l ge {/adg_lcolor L*WS1l 0.01 sub def} if /outcoll adg_lcolor transferfl def ioFunctionl inpcoll 255 div } bind def /prozv*g {/adg_vcolor exch 255 mul def adg_vcolor L*NS1v le {/adg_vcolor L*NS1v 0.01 add def} if adg_vcolor L*WS1v ge {/adg_vcolor L*WS1v 0.01 sub def} if /outcolv adg_vcolor transferfv def ioFunctionv inpcolv 255 div } bind def %allways olv* image; grey output like olv* / www* setrgbcolor /settransfer {/i*ptrsca 3 def /ntransfer exch def {ntransfer 112 transp} sgtransfer /i*ptrsca i*ptrsc def} def %assumption: in olv* image file l=local or g=global setcolortransfer %/adl_olv*' where {pop 0 1 127 {/iadg exch def % adg_olv*' iadg adl_olv*' iadg get put} for % } if %{ } { } { } { } setcolortransfer /setcolortransfer {/i*ptrsca 3 def /n*transfer exch def /v*transfer exch def /l*transfer exch def /o*transfer exch def {o*transfer 064 transp} {v*transfer 080 transp} {l*transfer 096 transp} {n*transfer 112 transp} sgtransfer /i*ptrsca i*ptrsc def} def %END SE90/10L/OUTLIN1IFA.PS olv* image input and output Linearization 20060101 /CFilenameS1g %START output of step S1g (www.ps.bam.de/SE90/10L/L90E00N) def %Link file name for data /CDateS1g (2006-01-01, Name) def %Date of calculation, Tester /CDeviceS1g (unknown ) def %Device name /CMeasS1g (SE90/10L/L90E00N) def %File name measured in step S1g %change scount2g from 2 to 10 for 10 series %change pcount2g from 8 to 240 for 240 pages of each series /scount1g 1 def /scount2g 1 def /scountg 1 def /pcount1g 1 def /pcount2g 1 def /pcountg 1 def %start=1, one more 9+1! /xchart1g 0 def /xchart2g 9 def /xchartg 0 def /BeginEPSF { % def % Prepare for EPS file /b4_Inc_state save def % Save state for cleanup /dict_count countdictstack def /op_count count 1 sub def % Count objects on op stack userdict begin % Make userdict current dict /showpage {} def 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit [] 0 setdash newpath /languagelevel where % If level not equal to 1 then {pop languagelevel where % If level not equal to 1 then 1 ne {false setstrokeadjust false setoverprint } if } if } bind def /EndEPSF { % def count op_count sub {pop} repeat countdictstack dict_count sub {end} repeat % Clean up dict stack b4_Inc_state restore } bind def /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def /str {8 string } bind def /languagelevel where {pop languagelevel} {1} ifelse /PSL12 exch def /dictende {counttomark 2 idiv dup dict begin {def} repeat pop currentdict end} bind def % !AUSTAUSCH Times-Roman -> Times-Roman-ISOLatin1=Times-I /Times-Roman findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /Times-ISOL1 exch definefont pop /Times-Italic findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /TimesI-ISOL1 exch definefont pop /Times-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /TimesB-ISOL1 exch definefont pop /Times-BoldItalic findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /TimesBI-ISOL1 exch definefont pop /TK {250 /Times-ISOL1 FS} bind def /TM {300 /Times-ISOL1 FS} bind def /TG {350 /Times-ISOL1 FS} bind def /TIK {250 /TimesI-ISOL1 FS} bind def /TIM {300 /TimesI-ISOL1 FS} bind def /TIG {350 /TimesI-ISOL1 FS} bind def /TBK {250 /TimesB-ISOL1 FS} bind def /TBM {300 /TimesB-ISOL1 FS} bind def /TBG {350 /TimesB-ISOL1 FS} bind def /TBIK {250 /TimesBI-ISOL1 FS} bind def /TBIM {300 /TimesBI-ISOL1 FS} bind def /TBIG {350 /TimesBI-ISOL1 FS} bind def %ANFA CMYKDEF %CMYKDEA0 (A0=Standard-Drucker-CMYKDEF) 15.3.97 /tzac [1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 1.000 0.750 0.500 0.250 0.000] def /tzam [1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 1.000 0.750 0.500 0.250 0.000] def /tzay [1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 1.000 0.750 0.500 0.250 0.000] def /tzan [1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 1.000 0.750 0.500 0.250 0.000] def /tza0 [0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000] def /tza1 [1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000] def %ENDE CMYKD /rec %x, y width heigth {/heigth exch def /width exch def moveto width 0 rlineto 0 heigth rlineto width neg 0 rlineto closepath } bind def /colrecfiLAB* %x y width heigth LAB* { setcolor rec fill} bind def /colrecstLAB* %x y width heigth LAB* { setcolor rec stroke} bind def /colrecficmyn* %x y width heigth cmy0* or 000n* { setcmykcolor rec fill} bind def /colrecstcmyn* %x y width heigth cmy0* or 000n* { setcmykcolor rec stroke} bind def /colrecfiw* %x y width heigth w* { setgray rec fill} bind def /colrecstw* %x y width heigth w* { setgray rec stroke} bind def /colrecfiolv* %x y width heigth olv* { setrgbcolor rec fill} bind def /colrecstolv* %x y width heigth olv* { setrgbcolor rec stroke} bind def /tzocmy0* {0.0 1.0 1.0 0.0} bind def %Reproduction colours /tzlcmy0* {1.0 0.0 1.0 0.0} bind def %cmyn* setcmykcolor /tzvcmy0* {1.0 1.0 0.0 0.0} bind def /tzccmy0* {1.0 0.0 0.0 0.0} bind def /tzmcmy0* {0.0 1.0 0.0 0.0} bind def /tzycmy0* {0.0 0.0 1.0 0.0} bind def /tzoolv* {1.0 0.0 0.0} bind def %Reproduction colours /tzlolv* {0.0 1.0 0.0} bind def %olv* setrgbcolor /tzvolv* {0.0 0.0 1.0} bind def /tzcolv* {0.0 1.0 1.0} bind def /tzmolv* {1.0 0.0 1.0} bind def /tzyolv* {1.0 1.0 0.0} bind def /tzoLAB* [53.34 72.46 50.66] def %Reproduction colours /tzlLAB* [84.93 -79.83 74.80] def %LAB* setcolor /tzvLAB* [32.20 24.88 -37.89] def /tzcLAB* [88.10 -44.88 -13.36] def /tzmLAB* [59.66 90.32 -19.65] def /tzyLAB* [93.76 -20.24 85.93] def /tzncmy0* {1.00 1.00 1.00 0.00} bind def %grey series /tzdcmy0* {0.75 0.75 0.75 0.00} bind def %cmy0* setcmykcolor /tzzcmy0* {0.50 0.50 0.50 0.00} bind def /tzhcmy0* {0.25 0.25 0.25 0.00} bind def /tzwcmy0* {0.00 0.00 0.00 0.00} bind def /tzn000n* {0.00 0.00 0.00 1.00} bind def %grey series 000n* /tzd000n* {0.00 0.00 0.00 0.75} bind def %000n* setcmykcolor /tzz000n* {0.00 0.00 0.00 0.50} bind def /tzh000n* {0.00 0.00 0.00 0.25} bind def /tzw000n* {0.00 0.00 0.00 0.00} bind def /tznw* {0.00} bind def %grey series /tzdw* {0.25} bind def %w* setgray /tzzw* {0.50} bind def /tzhw* {0.75} bind def /tzww* {1.00} bind def /tznolv* {0.00 0.00 0.00} bind def %grey series /tzdolv* {0.25 0.25 0.25} bind def %olv* setrgbcolor /tzzolv* {0.50 0.50 0.50} bind def /tzholv* {0.75 0.75 0.75} bind def /tzwolv* {1.00 1.00 1.00} bind def /tznLAB* [18.01 0.00 0.00] def %grey series /tzdLAB* [37.36 0.00 0.00] def %LAB* setcolor /tzzLAB* [56.71 0.00 0.00] def /tzhLAB* [76.06 0.00 0.00] def /tzwLAB* [95.41 0.00 0.00] def /tfn {0 setgray} bind def /tfw {1 setgray} bind def /A4quer {598 0 translate 90 rotate} def %0 %1 /cvishow {cvi 6 string cvs show} def /cvsshow1 {10 mul cvi 0.1 mul 7 string cvs show} def /cvsshow2 {100 mul cvi 0.01 mul 7 string cvs show} def /cvsshow3 {1000 mul cvi 0.001 mul 7 string cvs show} def /tzank [1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 1.000 0.750 0.500 0.250 0.000] def %picturetransfer from standard locations (8 pictures, 5 test charts) /xpic5458 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %x for chartg=0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %x for chartg=1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %x for chartg=2 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %x for chartg=3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def %x for chartg=4 /ypic5458 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %y for chartg=0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %y for chartg=1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %y for chartg=2 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %y for chartg=3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def %y for chartg=4 %BEG 61 lines comment or new PS operators possible %02 %03 %04 %05 %06 %07 %08 %09 %11 %END 38 lines comment or new PS operators possible %%EndProlog %%BeginPageSetup /#copies 1 def %A4quer 0.5 0.5 scale /pgsave save def %%EndPageSetup 0.0 MM 0.0 MM translate %Verschiebung nach oben und links fuer Belichter gsave /SS$ [(G) (E) (S) (F) (I) (J) (M)] def /SC$ [(N) (F) (S) (D) (T) (E) (C)] def /SX$ [(0) (1) (2) (3) (4) (5) (6) (7) (8) (9) (A) (B) (C) (D) (E) (F)] def /SY$ [(0) (1) (2) (3) (4) (5) (6) (7) (8) (9) (A) (B) (C) (D) (E) (F)] def % 0 1 2 3 4 5 % 6 7 8 /EX$ [(1.PS/.TXT) (B.PS/.BMP) (G.PS/.GIF) (H.PS/.HTM) (I.PS/.HTM) (J.PS/.JPE) (P.PS/.PDF) (T.PS/.TIF)] def /EY$ [(1.DAT) (B.DAT) (G.DAT) (H.DAT) (I.DAT) (J.DAT) (P.DAT) (T.DAT)] def /lanindg1 1 def /lanindg2 1 def /colormg1 1 def /colormg2 1 def /xcolorg1 0 def /xcolorg2 0 def /xchartg1 0 def /xchartg2 0 def /lanindg lanindg1 def %no loops /colormg colormg1 def /xcolorg xcolorg1 def /xchartg xchartg1 def /pcount2x pcount2g xchart2g sub 2 add def scount1g 1 scount2g {/scountg exch def %s=serie, e. g. 1,1,10 1 1 1 {/pcountg exch def %p=page, e. g. 1,1,250 pcountg pcount1g eq {/xchart10 0 def /xchart20 0 def} {/xchart10 1 def /xchart20 1 def} ifelse %pcountg pcount2x eq {/xchart10 2 def /xchart20 9 def} if xchart10 1 xchart20 {/xchartg exch def 2 MM /Times-Roman FS 274 MM 82 MM moveto -90 rotate (/SE90/ ) show (Form: ) show xchartg 1 add cvi 6 string cvs show (/) show xchart2g 1 add cvi 6 string cvs show (,) show 90 rotate 274 MM 65 MM moveto -90 rotate (Serie: ) show scountg cvi 6 string cvs show (/) show scount2g cvi 6 string cvs show (,) show 90 rotate 274 MM 55 MM moveto -90 rotate lanindg 0 eq {(Seite: )}{(Page: )} ifelse show pcountg xchartg xchart10 sub add cvi 6 string cvs show 90 rotate 274 MM 45 MM moveto -90 rotate lanindg 0 eq {(Seitenz\344hlung )}{(Page: count: )} ifelse show scountg 1 sub pcount2g mul pcountg add pcountg pcount2x eq {xchartg add pcount1g pcount2x ne {2 sub } if} if cvi 6 string cvs show 90 rotate /GSS$ SS$ lanindg get def /GSC$ SC$ colormg get def /GSX$ SX$ xcolorg get def /GSY$ SY$ xchartg get def /GEX$ EX$ 0 get def /GEY$ EY$ 0 get def /xcha801 xchartg 8 mul 0 add def /xcha803 xchartg 8 mul 1 add def /xcha805 xchartg 8 mul 2 add def /xcha807 xchartg 8 mul 3 add def /xcha811 xchartg 8 mul 4 add def /xcha813 xchartg 8 mul 5 add def /xcha815 xchartg 8 mul 6 add def /xcha817 xchartg 8 mul 7 add def %gsave BeginEPSF 28 MM 197 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto 1 1 scale -77 -91 translate %%BeginDocument: Bild 10 %line 329 %%EndDocument EndEPSF grestore gsave BeginEPSF 28 MM 152 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto 1 1 scale -77 -91 translate %%BeginDocument: Bild 11 %line 339 %!PS-Adobe-3.0 EPSF-3.0 SE900-1, %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (SE900-1,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 86 MM 152 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 12 %line 349 %%EndDocument EndEPSF grestore gsave BeginEPSF 28 MM 108 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 13 %line 359 %!PS-Adobe-3.0 EPSF-3.0 SE900-3 %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (SE900-3,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 86 MM 108 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 14 %line 369 %%EndDocument EndEPSF grestore gsave BeginEPSF 28 MM 064 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 15 %line 379 %!PS-Adobe-3.0 EPSF-3.0 SE900-5, %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (SE900-5,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 86 MM 064 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 16 %line 389 %%EndDocument EndEPSF grestore gsave BeginEPSF 28 MM 3.5 MM sub 020 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 17 %line 399 %!PS-Adobe-3.0 EPSF-3.0 SE900-7N.EPS %%BoundingBox: 70 82 785 580 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def /str {8 string } bind def /languagelevel where {pop languagelevel} {1} ifelse /PSL12 exch def /dictende {counttomark 2 idiv dup dict begin {def} repeat pop currentdict end} bind def /Times-Roman findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse } forall /Encoding ISOLatin1Encoding def currentdict end /Times-ISOL1 exch definefont pop /Times-Italic findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse } forall /Encoding ISOLatin1Encoding def currentdict end /TimesI-ISOL1 exch definefont pop /Times-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse } forall /Encoding ISOLatin1Encoding def currentdict end /TimesB-ISOL1 exch definefont pop /Times-BoldItalic findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse } forall /Encoding ISOLatin1Encoding def currentdict end /TimesBI-ISOL1 exch definefont pop /TK {250 /Times-ISOL1 FS} bind def /TM {300 /Times-ISOL1 FS} bind def /TG {350 /Times-ISOL1 FS} bind def /TIK {250 /TimesI-ISOL1 FS} bind def /TIM {300 /TimesI-ISOL1 FS} bind def /TIG {350 /TimesI-ISOL1 FS} bind def /TBK {250 /TimesB-ISOL1 FS} bind def /TBM {300 /TimesB-ISOL1 FS} bind def /TBG {350 /TimesB-ISOL1 FS} bind def /TBIK {250 /TimesBI-ISOL1 FS} bind def /TBIM {300 /TimesBI-ISOL1 FS} bind def /TBIG {350 /TimesBI-ISOL1 FS} bind def /LAB*ioL {%BEG Procedure LAB*ioL (L=local) %requires ISRL*ioL=0,1,3 /RJGBLAB* 12 array def /RJGBLAB*[ %CALCULATED WITH 'pm00'KRXYZ89.FOR 20.3.2006 %NORMFARBWERTE DER LICHTART: 109.85 100.00 35.58 %L* a* b* CODE C*ab hab XYZxy 47.79 61.74 42.56 %A00R 74.99 34.6 33.54 16.63 1.36 0.6509 0.3227 83.82 7.06 70.78 %A00J 71.13 84.3 73.49 63.71 4.63 0.5181 0.4492 49.00 -35.96 4.34 %A00G 36.22 173.1 12.80 17.60 5.56 0.3560 0.4893 25.14 -17.25 -56.25 %A00B 58.83 253.0 3.60 4.46 9.15 0.2094 0.2591 ] def /LAB* 36 array def /LAB*a 36 array def /LAB*00 24 array def /LAB*01 24 array def /LAB*02 24 array def /LAB*03 24 array def /LAB*04 24 array def /LAB*05 24 array def /LAB*06 24 array def /LAB*07 24 array def ISRL*ioL 0 eq { %ISRL*ioL=0 /LAB*00 [%D=Device OYLCVMO+NW %for Offset Reflective System (ORS18) %CALCULATED 'pm00'KRXYZ89.FOR 20.3.2006 %NORMFARBWERTE DER LICHTART: 109.85 100.00 35.58 %L* a* b* CODE C*ab hab XYZxy 47.94 65.31 52.07 %D65O 0 92.62 2.87 90.82 %A00Y 90.87 88.2 91.85 82.09 3.99 0.5162 0.4614 50.90 -62.97 36.71 %D65L 2 51.25 -52.83 -55.99 %A00C 76.98 226.7 11.71 19.49 22.61 0.2176 0.3622 25.72 31.45 -44.36 %D65V 4 56.25 71.40 9.61 %A00M 72.04 7.7 49.30 24.16 6.76 0.6146 0.3012 18.11 1.18 -0.49 %A00N 1.28 337.6 2.86 2.54 0.93 0.4519 0.4016 95.60 0.43 4.66 %A00W 4.68 84.8 98.06 89.04 29.44 0.4529 0.4112 ] def %OYLCVMO+NW /LAB*01 [%D=Device OYLCVMO+NW %for Television Luminous System (TLS00) %CALCULATED 'pm00'TV00ALL.FOR 20.3.2006 %NORMALISATION FAKTOR= 0.8859 %L* a* b* CODE C*ab hab XYZxy 65.56 73.34 51.39 %A00O 89.56 35.0 67.42 34.76 3.16 0.6400 0.3300 94.78 -3.50 52.24 %A00J 52.36 93.8 93.59 87.10 11.88 0.4860 0.4523 77.48 -92.98 36.00 %A00L 99.71 158.8 26.17 52.34 8.72 0.3000 0.6000 78.36 -82.70 -22.75 %A00C 85.77 195.4 29.90 53.83 28.36 0.2667 0.4802 12.55 38.81 -114.82 %A00V 121.21 288.7 3.73 1.49 19.64 0.1500 0.0600 66.71 76.08 -29.81 %A00M 81.71 338.6 71.15 36.25 22.80 0.5465 0.2785 0.01 0.00 0.00 %A00N 0.00 0.0 0.01 0.01 0.01 0.4476 0.4074 95.41 0.00 0.00 %A00W 0.00 0.0 97.32 88.59 31.52 0.4476 0.4074 ] def %OYLCVMO+NW /LAB*02 [%D=Device OYLCVMO+NW %for Device Reflective System (DRSXX) 42.21 65.82 52.84 %A00O-W 0 cmy0* setcmykcolor 64 90.32 -16.74 106.88 %A00Y-W 1 cmy0* setcmykcolor 32 48.21 -76.54 32.93 %A00L-W 2 cmy0* setcmykcolor 80 53.44 -34.16 -45.19 %A00C-W 3 cmy0* setcmykcolor 0 actual printer 34.16 -2.06 -44.39 %A00V-W 4 cmy0* setcmykcolor 96 42.71 78.01 0.28 %A00M-W 5 cmy0* setcmykcolor 16 16.56 -1.42 2.07 %A00N-W 6 000n* setcmykcolor 48 96.31 -0.12 2.59 %A00A-W 7 ] def %OYLCVMO+NW /LAB*03 [%D=Device OYLCVMO+NW %for Television Luminous System (TLS18) %CALCULATED 'pm00'TV00ALL.FOR 20.3.2006 %NORMALISATION FAKTOR= 0.8859 %L* a* b* CODE C*ab hab XYZxy 65.56 73.34 51.39 %A00O 89.56 35.0 67.42 34.76 3.16 0.6400 0.3300 94.78 -3.50 52.24 %A00J 52.36 93.8 93.59 87.10 11.88 0.4860 0.4523 77.48 -92.98 36.00 %A00L 99.71 158.8 26.17 52.34 8.72 0.3000 0.6000 78.36 -82.70 -22.75 %A00C 85.77 195.4 29.90 53.83 28.36 0.2667 0.4802 12.55 38.81 -114.82 %A00V 121.21 288.7 3.73 1.49 19.64 0.1500 0.0600 66.71 76.08 -29.81 %A00M 81.71 338.6 71.15 36.25 22.80 0.5465 0.2785 18.01 0.00 0.00 %A00N 0.00 0.0 2.77 2.52 0.90 0.4476 0.4074 95.41 0.00 0.00 %A00W 0.00 0.0 97.32 88.59 31.52 0.4476 0.4074 ] def %OYLCVMO+NW /LAB*04 [%Natural symmetric Luminous System OYLCVMO+NW (NLS00) 31.81 82.62 47.70 %A00O 0 95.40/2 = 47.70 63.61 00.00 95.40 %A00Y 1 C*ab = 95.40 31.81 -82.62 47.70 %A00L 2 0.866 C*ab = 0.866 * 95.40 = 82.62 63.61 -82.62 -47.70 %A00C 3 delta L*=25.8 31.81 00.00 -95.40 %A00V 4 43.81=00.01+31.80 63.61 82.62 -47.70 %A00M 5 69.61=00.01+2*31.80 00.01 0.00 0.00 %A00N 6 95.40/3 = 31.80 95.41 0.00 0.00 %A00W 7 95.40*(2/3) = 63.60 ] def %CVMOYLC+NW /LAB*05 [%Natural symmetric Luminous System OYLCVMO+NW (NLS18) 43.81 67.03 38.70 %A00O 0 77.40/2 = 38.70 69.61 00.00 77.40 %A00Y 1 C*ab = 77.40 43.81 -67.03 38.70 %A00L 2 0.866 C*ab = 67.03 69.61 -67.03 -38.70 %A00C 3 delta L*=25.8 43.81 00.00 -77.40 %A00V 4 43.81=18.01+25.80 69.61 67.03 -38.70 %A00M 5 69.61=18.01+2*25.80 18.01 0.00 0.00 %A00N 6 18.01+77.40/3 = 18.01+25.80=43.81 95.41 0.00 0.00 %A00W 7 18.01+77.40*(2/3) = 18.01+51.60=69.61 ] def %CVMOYLC+NW /LAB*06 [%Symmetric Reflective System OYLCVMO+NW (SRS18) 56.71 67.03 38.70 %A00O 0 18.01 + 77.40*0.5 = 18.01 + 38.70 = 56.71 56.71 00.00 77.40 %A00Y 1 C*ab = 77.40 56.71 -67.03 38.70 %A00L 2 0.866 C*ab = 67.03 56.71 -67.03 -38.70 %A00C 3 delta L*=25.8 56.71 00.00 -77.40 %A00V 4 43.81=18.01+25.80 56.71 67.03 -38.70 %A00M 5 69.61=18.01+2*25.80 18.01 0.00 0.00 %A00N 6 95.41 0.00 0.00 %A00W 7 95.41=18.01+3*25.80 ] def %CVMOYLC+NW /LAB*07 [%D=Device OYLCVMO+NW %for Television Luminous System (TLS70) %CALCULATED BY LE49/10L/L49E00NP.PDF 20.3.2006, Page 6 80.96 32.94 15.18 %A00O 0 95.06 -1.94 25.04 %A00Y 1 86.14 -37.48 14.59 %A00L 2 86.55 -34.43 -11.59 %A00C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 69.29 3.27 -30.42 %A00V 4 81.42 34.83 -13.60 %A00M 5 68.68 0.00 0.00 %A00N 6 Yr=40.32 95.41 0.00 0.00 %A00W 7 ] def %OYLCVMO+NW } if %ISRL*ioL=0 ISRL*ioL 1 eq { %ISRL*ioL=1 /LAB*00 [%D=Device CVMOYLC+NW %for Television Luminous System (TLS00) 50.50 76.91 64.55 %O 0 92.66 -20.68 90.75 %Y 1 83.62 -82.74 79.90 %L 2 86.88 -46.15 -13.54 %C 3 %see TABle 1 of ISO/IEC 15775:1999-12 30.39 76.06 -103.6 %V 4 %see TABle X of ISO/IEC TR 24705:2005-10 57.31 94.35 -58.40 %M 5 %see Annex A, www.ps.bam.de/RLABE.PDF 00.01 0.00 0.00 %N 6 Yr=0.00 95.41 0.00 0.00 %W 7 ] def %CVMOYLC+NW /LAB*01 [%D=Device CVMOYLC+NW %for Television Luminous System (TLS06) 51.08 75.54 59.69 %O 0 92.68 -20.51 89.24 %Y 1 83.72 -81.79 78.32 %L 2 86.94 -45.72 -13.43 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 31.77 72.91 -101.3 %V 4 57.74 93.06 -57.71 %M 5 05.69 0.00 0.00 %N 6 Yr=0.63 95.41 0.00 0.00 %W 7 ] def %CVMOYLC+NW /LAB*02 [%D=Device CVMOYLC+NW %for Television Luminous System (TLS11) 51.65 74.20 55.83 %O 0 92.70 -20.35 87.77 %Y 1 83.81 -80.85 76.81 %L 2 87.01 -45.28 -13.33 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 33.06 70.03 -99.09 %V 4 58.17 91.80 -57.03 %M 5 10.99 0.00 0.00 %N 6 Yr=1.26 95.41 0.00 0.00 %W 7 ] def %CVMOYLC+NW /LAB*03 [%D=Device CVMOYLC+NW %for Television Luminous System (TLS18) 52.76 71.63 49.88 %O 0 92.74 -20.03 84.97 %Y 1 84.00 -78.99 73.94 %L 2 87.14 -44.42 -13.12 %C 3 %see TABle 1 of ISO/IEC 15775:1999-12 35.47 64.92 -95.07 %V 4 %see TABle X of ISO/IEC TR 24705:2005-10 59.01 89.33 -55.68 %M 5 %see Annex A, www.ps.bam.de/RLABE.PDF 18.01 0.00 0.00 %N 6 Yr=2.52 95.41 0.00 0.00 %W 7 ] def %CVMOYLC+NW /LAB*04 [%D=Device CVMOYLC+NW %for Television Luminous System (TLS27) 54.88 66.84 41.69 %O 0 92.82 -19.39 79.81 %Y 1 84.37 -75.39 68.76 %L 2 87.40 -42.72 -12.70 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 39.70 56.66 -88.02 %V 4 60.64 84.61 -53.08 %M 5 26.85 0.00 0.00 %N 6 Yr=5.04 95.41 0.00 0.00 %W 7 ] def %CVMOYLC+NW /LAB*05 [%D=Device CVMOYLC+NW %for Television Luminous System (TLS38) 58.77 58.45 31.73 %O 0 92.98 -18.11 70.81 %Y 1 85.11 -68.58 60.02 %L 2 87.92 -39.42 -11.87 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 46.64 44.93 -76.56 %V 4 63.71 75.92 -48.22 %M 5 37.99 0.00 0.00 %N 6 Yr=10.08 95.41 0.00 0.00 %W 7 ] def %CVMOYLC+NW /LAB*06 [%D=Device CVMOYLC+NW %for Television Luminous System (TLS52) 65.53 45.06 20.98 %O 0 93.30 -15.61 56.27 %Y 1 86.55 -56.31 46.52 %L 2 88.94 -33.19 -10.24 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 57.17 30.66 -59.40 %V 4 69.22 60.95 -39.57 %M 5 52.02 0.00 0.00 %N 6 Yr=20.16 95.41 0.00 0.00 %W 7 ] def %CVMOYLC+NW /LAB*07 [%D=Device CVMOYLC+NW %for Television Luminous System (TLS70) 76.43 26.27 10.57 %O 0 93.93 -10.77 34.63 %Y 1 89.32 -35.81 27.64 %L 2 90.93 -21.96 -7.08 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 72.10 15.76 -35.64 %V 4 78.50 37.52 -25.24 %M 5 69.70 0.00 0.00 %N 6 Yr=40.32 95.41 0.00 0.00 %W 7 ] def %CVMOYLC+NW } if %ISRL*ioL=1 ISRL*ioL 2 eq { %ISRL*ioL=2 /LAB*00 [%D=Device OYLCVMO+NW %for Offset Luminous System (OLS00) 45.14 71.37 75.54 %O 0 90.22 -10.60 99.51 %Y 1 48.45 -73.19 42.21 %L 2 56.88 -33.11 -47.41 %C 3 %see TABle 1 of ISO/IEC 15775:1999-12 16.48 45.84 -56.22 %V 4 %see TABle X of ISO/IEC TR 24705:2005-10 45.36 81.85 -9.29 %M 5 %see Annex A, www.ps.bam.de/RLABE.PDF 00.01 0.00 0.00 %N 6 Yr=0.00 95.41 0.00 0.00 %W 7 ] def %OYLCVMO+NW /LAB*01 [%D=Device OYLCVMO+NW %for Offset Luminous System (OLS06) 45.87 69.79 66.99 %O 0 90.25 -10.51 97.42 %Y 1 49.08 -70.28 40.08 %L 2 57.33 -32.38 -46.80 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 19.26 40.73 -52.47 %V 4 46.07 80.12 -9.04 %M 5 05.69 0.00 0.00 %N 6 Yr=0.63 95.41 0.00 0.00 %W 7 ] def %OYLCVMO+NW /LAB*02 [%D=Device OYLCVMO+NW %for Offset Luminous System (OLS11) 46.57 68.27 59.62 %O 0 90.29 -10.43 95.45 %Y 1 49.70 -67.60 38.19 %L 2 57.76 -31.68 -46.19 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 21.67 36.81 -49.37 %V 4 46.77 78.45 -8.80 %M 5 10.99 0.00 0.00 %N 6 Yr=1.26 95.41 0.00 0.00 %W 7 ] def %OYLCVMO+NW /LAB*03 [%D=Device OYLCVMO+NW %for Offset Luminous System (OLS18) 47.94 65.39 50.52 %O 0 90.37 -10.26 91.75 %Y 1 50.90 -62.83 34.96 %L 2 58.62 -30.34 -45.01 %C 3 %see TABle 1 of ISO/IEC 15775:1999-12 25.72 31.10 -44.40 %V 4 %see TABle X of ISO/IEC TR 24705:2005-10 48.13 75.28 -8.36 %M 5 %see Annex A, www.ps.bam.de/RLABE.PDF 18.01 0.00 0.00 %N 6 Yr=2.52 95.41 0.00 0.00 %W 7 ] def %OYLCVMO+NW /LAB*04 [%D=Device OYLCVMO+NW %for Offset Luminous System (OLS27) 50.51 60.17 40.13 %O 0 90.52 -9.92 85.20 %Y 1 53.18 -55.04 30.00 %L 2 60.28 -27.91 -42.75 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 32.06 24.02 -37.32 %V 4 50.68 69.50 -7.57 %M 5 26.85 0.00 0.00 %N 6 Yr=5.04 95.41 0.00 0.00 %W 7 ] def %OYLCVMO+NW /LAB*05 [%D=Device OYLCVMO+NW %for Offset Luminous System (OLS38) 55.13 51.42 29.16 %O 0 90.83 -9.25 74.37 %Y 1 57.35 -43.84 23.35 %L 2 63.39 -23.83 -38.56 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 41.26 16.67 -28.49 %V 4 55.27 59.74 -6.32 %M 5 37.99 0.00 0.00 %N 6 Yr=10.08 95.41 0.00 0.00 %W 7 ] def %OYLCVMO+NW /LAB*06 [%D=Device OYLCVMO+NW %for Offset Luminous System (OLS52) 62.90 38.38 18.55 %O 0 91.44 -7.95 57.91 %Y 1 64.49 -30.06 15.67 %L 2 68.98 -17.74 -31.24 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 53.87 10.09 -18.84 %V 4 63.00 44.96 -4.56 %M 5 52.02 0.00 0.00 %N 6 Yr=20.16 95.41 0.00 0.00 %W 7 ] def %OYLCVMO+NW /LAB*07 [%D=Device OYLCVMO+NW %for Offset Luminous System (OLS70) 75.01 21.53 9.07 %O 0 92.64 -5.45 34.85 %Y 1 75.86 -15.50 7.96 %L 2 78.37 -9.90 -19.51 %C 3 %see Annex A, www.ps.bam.de/RLABE.PDF 70.54 4.74 -9.47 %V 4 75.07 25.47 -2.46 %M 5 69.70 0.00 0.00 %N 6 Yr=40.32 95.41 0.00 0.00 %W 7 ] def %OYLCVMO+NW } if %ISRL*ioL=2 0 1 11 {/sISO exch def /i30 sISO 3 mul def /i31 i30 1 add def /i32 i30 2 add def sISO 7 le { %sISO=0,7 ISIO*ioL 0 eq { %ORS18/TLS00/OLS00 LAB* i30 LAB*00 i30 get put LAB* i31 LAB*00 i31 get put LAB* i32 LAB*00 i32 get put } if ISIO*ioL 1 eq { %TLS00/TLS06/OLS06 LAB* i30 LAB*01 i30 get put LAB* i31 LAB*01 i31 get put LAB* i32 LAB*01 i32 get put } if ISIO*ioL 2 eq { %DRSXX/TLS11/OLS11 LAB* i30 LAB*02 i30 get put LAB* i31 LAB*02 i31 get put LAB* i32 LAB*02 i32 get put } if ISIO*ioL 3 eq { %TLS18/TLS18/OLS18 LAB* i30 LAB*03 i30 get put LAB* i31 LAB*03 i31 get put LAB* i32 LAB*03 i32 get put } if ISIO*ioL 4 eq { %NLS00/TSL28/OLS28 LAB* i30 LAB*04 i30 get put LAB* i31 LAB*04 i31 get put LAB* i32 LAB*04 i32 get put } if ISIO*ioL 5 eq { %NRS18/TLS38/OLS38 LAB* i30 LAB*05 i30 get put LAB* i31 LAB*05 i31 get put LAB* i32 LAB*05 i32 get put } if ISIO*ioL 6 eq { %SRS18/TLS50/OLS50 LAB* i30 LAB*06 i30 get put LAB* i31 LAB*06 i31 get put LAB* i32 LAB*06 i32 get put } if ISIO*ioL 7 eq { %TLS70/TLS70/OLS70 LAB* i30 LAB*07 i30 get put LAB* i31 LAB*07 i31 get put LAB* i32 LAB*07 i32 get put } if } %sISO=0,7 { %sISO=8,11 /jISO sISO 8 sub def /j30 jISO 3 mul def /j31 j30 1 add def /j32 j30 2 add def LAB* i30 RJGBLAB* j30 get put LAB* i31 RJGBLAB* j31 get put LAB* i32 RJGBLAB* j32 get put } ifelse %sISO=0,7 and 8,11 } for /L*Nio LAB* 18 get def /A*Nio LAB* 19 get def /B*Nio LAB* 20 get def /L*Wio LAB* 21 get def /A*Wio LAB* 22 get def /B*Wio LAB* 23 get def /A*Dio A*Wio A*Nio sub def /B*Dio B*Wio B*Nio sub def 0 1 11 {/sISO exch def /i30 sISO 3 mul def /i31 i30 1 add def /i32 i30 2 add def LAB*a i30 LAB* i30 get put /l*CIE LAB* i30 get L*Nio sub L*Wio L*Nio sub div def %system rel. lightn. /a*s A*Wio A*Nio sub l*CIE mul def /b*s B*Wio B*Nio sub l*CIE mul def LAB*a i31 LAB* i31 get A*Nio sub a*s sub put LAB*a i32 LAB* i32 get B*Nio sub b*s sub put } for /cLAB*s0 3 array def %C cyan blue /vLAB*s0 3 array def %V violet blue /mLAB*s0 3 array def %M magenta red /oLAB*s0 3 array def %O orange red /yLAB*s0 3 array def %Y yellow /lLAB*s0 3 array def %L leaf green /nLAB*s0 3 array def %N black /wLAB*s0 3 array def %W white /rLAB*s0 3 array def %R elementary red /jLAB*s0 3 array def %J elementary yellow /gLAB*s0 3 array def %G elementary green /bLAB*s0 3 array def %B elementary blue %Determine Matrix data input or output data oLAB*s0 0 LAB*a 0 get L*Nio sub put oLAB*s0 1 LAB*a 1 get put oLAB*s0 2 LAB*a 2 get put yLAB*s0 0 LAB*a 3 get L*Nio sub put yLAB*s0 1 LAB*a 4 get put yLAB*s0 2 LAB*a 5 get put lLAB*s0 0 LAB*a 6 get L*Nio sub put lLAB*s0 1 LAB*a 7 get put lLAB*s0 2 LAB*a 8 get put cLAB*s0 0 LAB*a 9 get L*Nio sub put cLAB*s0 1 LAB*a 10 get put cLAB*s0 2 LAB*a 11 get put vLAB*s0 0 LAB*a 12 get L*Nio sub put vLAB*s0 1 LAB*a 13 get put vLAB*s0 2 LAB*a 14 get put mLAB*s0 0 LAB*a 15 get L*Nio sub put mLAB*s0 1 LAB*a 16 get put mLAB*s0 2 LAB*a 17 get put nLAB*s0 0 LAB*a 18 get L*Nio sub put nLAB*s0 1 LAB*a 19 get put nLAB*s0 2 LAB*a 20 get put wLAB*s0 0 LAB*a 21 get L*Nio sub put wLAB*s0 1 LAB*a 22 get put wLAB*s0 2 LAB*a 23 get put rLAB*s0 0 LAB*a 24 get L*Nio sub put rLAB*s0 1 LAB*a 25 get put rLAB*s0 2 LAB*a 26 get put jLAB*s0 0 LAB*a 27 get L*Nio sub put jLAB*s0 1 LAB*a 28 get put jLAB*s0 2 LAB*a 29 get put gLAB*s0 0 LAB*a 30 get L*Nio sub put gLAB*s0 1 LAB*a 31 get put gLAB*s0 2 LAB*a 32 get put bLAB*s0 0 LAB*a 33 get L*Nio sub put bLAB*s0 1 LAB*a 34 get put bLAB*s0 2 LAB*a 35 get put % Determine the input or output angle in the A* B* plane % of each of the colours defined above /C*Ang cLAB*s0 2 get cLAB*s0 1 get 0.0001 add atan def /V*Ang vLAB*s0 2 get vLAB*s0 1 get 0.0001 add atan def /M*Ang mLAB*s0 2 get mLAB*s0 1 get 0.0001 add atan def /O*Ang oLAB*s0 2 get oLAB*s0 1 get 0.0001 add atan def /Y*Ang yLAB*s0 2 get yLAB*s0 1 get 0.0001 add atan def /L*Ang lLAB*s0 2 get mLAB*s0 1 get 0.0001 add atan def /N*Ang 0 def /W*Ang 0 def /R*Ang rLAB*s0 2 get rLAB*s0 1 get 0.0001 add atan def /J*Ang jLAB*s0 2 get jLAB*s0 1 get 0.0001 add atan def /G*Ang gLAB*s0 2 get gLAB*s0 1 get 0.0001 add atan def /B*Ang bLAB*s0 2 get bLAB*s0 1 get 0.0001 add atan def % The detprocL below finds the determinant of the Matrix: % | A1 B1 C1 D1 | % | A2 B2 C2 D2 | % | A3 B3 C3 D3 | % | A4 B4 C4 D4 | % /detprocL { %BEG procedure detprocL /term1 B2 C3 mul D4 mul C2 D3 mul B4 mul add D2 B3 mul C4 mul add B4 C3 mul D2 mul sub C4 D3 mul B2 mul sub D4 B3 mul C2 mul sub def /term2 A2 C3 mul D4 mul C2 D3 mul A4 mul add D2 A3 mul C4 mul add A4 C3 mul D2 mul sub C4 D3 mul A2 mul sub D4 A3 mul C2 mul sub def /term3 A2 B3 mul D4 mul B2 D3 mul A4 mul add D2 A3 mul B4 mul add A4 B3 mul D2 mul sub B4 D3 mul A2 mul sub D4 A3 mul B2 mul sub def /term4 A2 B3 mul C4 mul B2 C3 mul A4 mul add C2 A3 mul B4 mul add A4 B3 mul C2 mul sub B4 C3 mul A2 mul sub C4 A3 mul B2 mul sub def /det A1 term1 mul B1 term2 mul sub C1 term3 mul add D1 term4 mul sub def } bind def %END procedure detprocL % The CoeffprocL procedure solves for WhiteCoeff, black Coeff, Col1Coeff and % Col2Coeff in the matrix equation below. It takes as inputs A1->A4 B1->B4 % C1->C4 D1->D4 and s,y,z,t. It solves for these using Cramer's rule. % Note: Cramer's rule is valid only for non-singular matrices, ie |A| not % equal to 0. % % | A1 B1 C1 D1 | |WhiteCoeff| |x| % | A2 B2 C2 D2 | |BlackCoeff| = |y| % | A3 B3 C3 D3 | |Col1Coeff | |z| % | A4 B4 C4 D4 | |Col2Coeff | |t| % A B = C % /CoeffprocL { %BEG procedure CoeffprocL /t exch def /z exch def /y exch def /x exch def /D4 exch def /D3 exch def /D2 exch def /D1 exch def /C4 exch def /C3 exch def /C2 exch def /C1 exch def /B4 exch def /B3 exch def /B2 exch def /B1 exch def /A4 exch def /A3 exch def /A2 exch def /A1 exch def detprocL /den det def % determine white coefficient /temp1 A1 def /temp2 A2 def /temp3 A3 def /temp4 A4 def /A1 x def /A2 y def /A3 z def /A4 t def detprocL /numW det def /A1 temp1 def /A2 temp2 def /A3 temp3 def /A4 temp4 def % determine black coefficient /temp1 B1 def /temp2 B2 def /temp3 B3 def /temp4 B4 def /B1 x def /B2 y def /B3 z def /B4 t def detprocL /numB det def /B1 temp1 def /B2 temp2 def /B3 temp3 def /B4 temp4 def % determine colour1 coefficient /temp1 C1 def /temp2 C2 def /temp3 C3 def /temp4 C4 def /C1 x def /C2 y def /C3 z def /C4 t def detprocL /numCol1 det def /C1 temp1 def /C2 temp2 def /C3 temp3 def /C4 temp4 def % determine colour2 coefficient /temp1 D1 def /temp2 D2 def /temp3 D3 def /temp4 D4 def /D1 x def /D2 y def /D3 z def /D4 t def detprocL /numCol2 det def /D1 temp1 def /D2 temp2 def /D3 temp3 def /D4 temp4 def /WhiteCoeff numW den div def /BlackCoeff numB den div def /Col1Coeff numCol1 den div def /Col2Coeff numCol2 den div def WhiteCoeff BlackCoeff Col1Coeff Col2Coeff % returns these *color data } bind def %BEG procedure CoeffprocL } def %END Procedure LAB*ioL %*********************************************************** /cmyolv*io_to_LAB*ioL { %BEG Procedure transfer cmyolv*io_to_LAB*ioL %input olv* for IMODE=0 and cmy* for IMODE=1 %the following calculations based on olv* %Procedure LAB*inoutL is required in advance IMODE 1 eq {%IMODE=1, input cmy* /o* 1 c* sub def /l* 1 m* sub def /v* 1 y* sub def } if %skip of olv* data <0 and >1 o* 0 le {/o* 0.0001 def} if l* 0 le {/l* 0.0001 def} if v* 0 le {/v* 0.0001 def} if o* 1 ge {/o* 0.9999 def} if l* 1 ge {/l* 0.9999 def} if v* 1 ge {/v* 0.9999 def} if %output olv* and cmy* for both olv* and cmy* input %n*n: relative blackness %r*n: relative chromaticness %w*n: relative whiteness %L*F: CIE lightness L* %A*F: CIE chromaticness a* %B*F: CIE chromaticness b* %C*F: CIE radial chroma Cab* %x*F: x-position of colour F %y*F: y-position of colour F %e*w: eigencolour value of F o* 0 le {/o* 0.0001 def} if l* 0 le {/l* 0.0001 def} if v* 0 le {/v* 0.0001 def} if o* 1 ge {/o* 0.9999 def} if l* 1 ge {/l* 0.9999 def} if v* 1 ge {/v* 0.9999 def} if /tdel 0 def v* l* ge l* o* ge and tdel 0 eq and % v* >= l* >= o* equal y* <= m* <= c* %sector C-V of C-M, C>=M: i*p=0 {/w*n o* def /n*n 1 v* sub def /t*a v* l* sub def /array1 vLAB*s0 def % colour 1 is violet blue /t*b l* o* sub def /array2 cLAB*s0 def % colour 2 is cyan blue /i*p 0 def o* l* sub abs 0.001 le {/i*p 1 def} if /t*p l* l* v* add 0.0001 add div def /tdel 1 def } if % v* >= l* >= o* v* o* ge o* l* ge and tdel 0 eq and % v* >= o* >= l* equal y* <= c* <= m* %sector V-M of C-M, M>=C: i*p=1 {/w*n l* def /n*n 1 v* sub def /t*a v* o* sub def /array1 vLAB*s0 def % colour 1 is violet blue /t*b o* l* sub def /array2 mLAB*s0 def % colour 2 is magenta red /i*p 1 def v* o* sub abs 0.001 le {/i*p 2 def} if /t*p o* o* v* add 0.0001 add div def /tdel 1 def } if % v* >= o* >= l* o* v* ge v* l* ge and tdel 0 eq and % o* >= v* >= l* equal c* <= y* <= m* %sector M-O of M-Y, M>=Y: i*p=2 {/w*n l* def /n*n 1 o* sub def /t*a o* v* sub def /array1 oLAB*s0 def % colour 1 is orange /t*b v* l* sub def /array2 mLAB*s0 def % colour 2 is magenta red /i*p 2 def l* v* sub abs 0.001 le {/i*p 3 def} if /t*p v* v* o* add 0.0001 add div def /tdel 1 def } if % o* >= v* >= l* o* l* ge l* v* ge and tdel 0 eq and % o* >= l* >= v* equal c* <= m* <= y* %sector O-Y of M-Y, Y>=M: i*p=3 {/w*n v* def /n*n 1 o* sub def /t*a o* l* sub def /array1 oLAB*s0 def % colour 1 is orange red /t*b l* v* sub def /array2 yLAB*s0 def % colour 2 is yellow /i*p 3 def o* l* sub abs 0.001 le {/i*p 4 def} if /t*p l* l* o* add 0.0001 add div def /tdel 1 def } if % o* >= l* >= v* l* o* ge o* v* ge and tdel 0 eq and % l* >= o* >= v* equal m* <= c* <= y* %sector Y-L of Y-C, Y>=C: i*p=4 {/w*n v* def /n*n 1 l* sub def /t*a l* o* sub def /array1 lLAB*s0 def % colour 1 is leaf green /t*b o* v* sub def /array2 yLAB*s0 def % colour 2 is yellow /i*p 4 def o* v* sub abs 0.001 le {/i*p 5 def} if /t*p o* o* l* add 0.0001 add div def /tdel 1 def } if % l* >= o* >= v* l* v* ge v* o* ge and tdel 0 eq and % l* >= v* >= o* equal m* <= y* <= c* %sector L-C of Y-C, C>=Y: i*p=5 {/w*n o* def /n*n 1 l* sub def /t*a l* v* sub def /array1 lLAB*s0 def % colour 1 is leaf green /t*b v* o* sub def /array2 cLAB*s0 def % colour 2 is cyan blue /i*p 5 def l* v* sub abs 0.001 le {/i*p 0 def} if /t*p v* v* l* add 0.0001 add div def /tdel 1 def } if % l* >= v* >= o* %achromatic %W: o*, l*, v* = 1.00 1.0 o* sub abs 0.001 le 1.0 l* sub abs 0.001 le and 1.0 v* sub abs 0.001 le and %W special case {/i*p 6 def %W /e*w 0 def /n*n 0 def /w*n 1 def /t*a 0.0001 def /t*b 0.0001 def /t*p 0.0001 def } if %N: o*, l*, v* <= 0.001 o* abs 0.001 le l* abs 0.001 le and v* abs 0.001 le and %N special case {/i*p 6 def %N /e*w 0 def /n*n 1 def /w*n 0 def /t*a 0.0001 def /t*b 0.0001 def /t*p 0.0001 def } if %Achromatic o* l* sub abs 0.001 le l* v* sub abs 0.001 le and %Achromatic special case {/i*p 6 def %N /e*w 0 def /n*n 1 o* sub def /w*n o* def /t*a 0.0001 def /t*b 0.0001 def /t*p 0.0001 def } if /r*n 1 w*n sub n*n sub def /t*n 1 t*p sub def %w0-line of equal relative whiteness in colour triangle: y = 0.5 / h x + yw0 %n0-line of equal relative blackness in colour triangle: y = -0.5 / h x + yn0 %x*F = (yn0 - yw0) h %y*F = 0.5 (yn0 - yw0) + yw0 = 0.5 (yn0 + yw0) /h 0.75 sqrt def /yn0 1 n*n sub def /yw0 w*n def /x*F yn0 yw0 sub h mul def /y*F yn0 yw0 add 0.5 mul def /t*F y*F def /lab*tFa t*F def /lab*cFa r*n def /lab*wFa w*n def /lab*nFa n*n def %x*F / (1-y*F) = e*x / 1 %e*w = e*x /(2h) = [x*F / (1-y*F)]/(2h) %/e*w x*F 1 y*F sub div 2 h mul div def /e*w r*n n*n r*n add 0.0001 add div def %Eigencolor ratio r*n abs 0.001 le r*n abs 0.001 le and {/e*w 0.0001 def} if % with 0 for achromatic (c*n=0) and 1 for whitish colors (n*n=0) %cmyolv*_to_cmy* /c* 1 o* sub def /m* 1 l* sub def /y* 1 v* sub def %cmyolv*_to_LAB*LFs0 %L*Fs0 = w*n wLAB*s0 (0) + n*n nLAB*s0 (0) + t*a array1(0) + t*b array2(0) %A*Fs0 = w*n wLAB*s0 (1) + n*n nLAB*s0 (1) + t*a array1(1) + t*b array2(1) %B*Fs0 = w*n wLAB*s0 (2) + n*n nLAB*s0 (2) + t*a array1(2) + t*b array2(2) /L*Fs0 w*n wLAB*s0 0 get mul n*n nLAB*s0 0 get mul add t*a array1 0 get mul add t*b array2 0 get mul add def /A*Fs0 w*n wLAB*s0 1 get mul n*n nLAB*s0 1 get mul add t*a array1 1 get mul add t*b array2 1 get mul add def /B*Fs0 w*n wLAB*s0 2 get mul n*n nLAB*s0 2 get mul add t*a array1 2 get mul add t*b array2 2 get mul add def /L*Fsm t*a array1 0 get mul t*b array2 0 get mul add L*Nio add def %LAB*Fs0_to_LAB*F /L*F L*Fs0 L*Nio add def /l*CIE L*F L*Nio sub L*Wio L*Nio sub 0.0001 add div def /A*F A*Fs0 A*Nio add A*Dio l*CIE mul add def /B*F B*Fs0 B*Nio add B*Dio l*CIE mul add def /lab*lFa l*CIE def /LAB*LF L*F def /LAB*AF A*F def /LAB*BF B*F def /LAB*LFa L*F def /LAB*AFa A*Fs0 def /LAB*BFa B*Fs0 def %FOR CIELAB LCH /C*Fs0 A*Fs0 dup mul B*Fs0 dup mul add 0.000001 add sqrt def /H*Fs0 B*Fs0 A*Fs0 0.0001 add atan def /LAB*CFa C*Fs0 def /LAB*HFa H*Fs0 def /lab*hFa LAB*HFa 360 div def } bind def %END Procedure transfer cmyolv*io_to_LAB*ioL (L=local) /LAB*io_to_cmyolv*ioL {%BEG Procedure LAB*io_to_cmyolv*ioL (L=local) /B*F exch def /A*F exch def /L*F exch def %ISIO*ioL 0 eq ISOUP*ioL 3 eq and % {%achromatic transfer L*F,A*F,B*F (PR18) % % -> L*Fsa, A*Fsa, B*Fsa (PR18) % % -> L*F, A*F, B*F (TV18) % %LAB*F_to_LAB*Fsa % /l*CIE L*F L*Nio sub L*Wio L*Nio sub 0.0001 add div def % /A*Fs0 A*F A*Nio sub A*Dio l*CIE mul sub def % /B*Fs0 B*F B*Nio sub B*Dio l*CIE mul sub def % /A*F A*Fs0 def % /B*F B*Fs0 def % } if %achromatic transfer L*F,A*F,B*F (PR18) /l*CIE L*F L*Nio sub L*Wio L*Nio sub 0.0001 add div def /L*Fs0 L*F L*Nio sub def /A*Fs0 A*F A*Nio sub A*Dio l*CIE mul sub def /B*Fs0 B*F B*Nio sub B*Dio l*CIE mul sub def /C*Fs0 A*Fs0 dup mul B*Fs0 dup mul add 0.000001 add sqrt def /H*Fs0 B*Fs0 A*Fs0 0.0001 add atan def /LAB*LF L*F def /LAB*AF A*F def /LAB*BF B*F def /LAB*LFa L*F def /LAB*AFa A*Fs0 def /LAB*BFa B*Fs0 def % the angle formed by the input LAB* *color data in the A*B* plane /col_ang B*Fs0 A*Fs0 0.0001 add atan def %determine which two colours the LAB* *color data corresponds to %by testing the angles and solve the related four simultaneous equations %to find the olv *color data. % angle between magenta red and orange red, sector M-O of M-Y, M>=Y col_ang M*Ang ge col_ang O*Ang lt or {1 wLAB*s0 0 get wLAB*s0 1 get wLAB*s0 2 get 1 nLAB*s0 0 get nLAB*s0 1 get nLAB*s0 2 get 1 mLAB*s0 0 get mLAB*s0 1 get mLAB*s0 2 get 1 oLAB*s0 0 get oLAB*s0 1 get oLAB*s0 2 get 1 L*Fs0 A*Fs0 B*Fs0 CoeffprocL /c1*w exch def %O /c2*w exch def %M /n*w exch def /w*w exch def %magenta is a mixture of orange red and voilet blue, therefore leaf green(l) = white, %orange(o) = 1-black(n), voilet blue(v) = white + magenta red (c2*w) /v*n w*w c2*w add def % /l*n w*w def /o*n 1 n*w sub def /i*p 2 def /t*p v*n v*n o*n add 0.0001 add div def } if % angle between orange red and yellow, sector O-Y of M-Y, Y>=M col_ang O*Ang ge col_ang Y*Ang lt and {1 wLAB*s0 0 get wLAB*s0 1 get wLAB*s0 2 get 1 nLAB*s0 0 get nLAB*s0 1 get nLAB*s0 2 get 1 oLAB*s0 0 get oLAB*s0 1 get oLAB*s0 2 get 1 yLAB*s0 0 get yLAB*s0 1 get yLAB*s0 2 get 1 L*Fs0 A*Fs0 B*Fs0 CoeffprocL /c1*w exch def %Y /c2*w exch def %O /n*w exch def /w*w exch def %yellow is a mixture of orange red and leaf green, therefore voilet blue(v) = white, %orange(o) = 1-black(n), leaf green(l) = white + yellow (c1*w) /l*n w*w c1*w add def /v*n w*w def /o*n 1 n*w sub def /i*p 3 def /t*p l*n l*n o*n add 0.0001 add div def } if % angle between yellow and leaf green, sector Y-L of Y-C, Y>=C col_ang Y*Ang ge col_ang L*Ang lt and {1 wLAB*s0 0 get wLAB*s0 1 get wLAB*s0 2 get 1 nLAB*s0 0 get nLAB*s0 1 get nLAB*s0 2 get 1 yLAB*s0 0 get yLAB*s0 1 get yLAB*s0 2 get 1 lLAB*s0 0 get lLAB*s0 1 get lLAB*s0 2 get 1 L*Fs0 A*Fs0 B*Fs0 CoeffprocL /c1*w exch def %L /c2*w exch def %Y /n*w exch def /w*w exch def %yellow is a mixture of orange red and leaf green, therefore voilet blue(v) = white , %leaf green(l) = 1-black(n), orange red(o) = white + yellow (c2*w) /v*n w*w def /l*n 1 n*w sub def /o*n w*w c2*w add def /i*p 4 def /t*p o*n o*n l*n add 0.0001 add div def } if % angle between leaf green and cyan blue, sector L-C of Y-C, C>=Y col_ang L*Ang ge col_ang C*Ang lt and {1 wLAB*s0 0 get wLAB*s0 1 get wLAB*s0 2 get 1 nLAB*s0 0 get nLAB*s0 1 get nLAB*s0 2 get 1 lLAB*s0 0 get lLAB*s0 1 get lLAB*s0 2 get 1 cLAB*s0 0 get cLAB*s0 1 get cLAB*s0 2 get 1 L*Fs0 A*Fs0 B*Fs0 CoeffprocL /c1*w exch def %C /c2*w exch def %L /n*w exch def /w*w exch def %cyan is a mixture of leaf green and voilet blue, therefore orange red(o) = white, %leaf green(l) = 1-black(n), voilet blue(v) = white + cyan blue (c1*w) /v*n w*w c1*w add def /l*n 1 n*w sub def /o*n w*w def /i*p 5 def /t*p v*n v*n l*n add 0.0001 add div def } if % angle between cyan blue and voilet blue, sector C-V of C-M, C>=M col_ang C*Ang ge col_ang V*Ang lt and {1 wLAB*s0 0 get wLAB*s0 1 get wLAB*s0 2 get 1 nLAB*s0 0 get nLAB*s0 1 get nLAB*s0 2 get 1 cLAB*s0 0 get cLAB*s0 1 get cLAB*s0 2 get 1 vLAB*s0 0 get vLAB*s0 1 get vLAB*s0 2 get 1 L*Fs0 A*Fs0 B*Fs0 CoeffprocL /c1*w exch def %V /c2*w exch def %C /n*w exch def /w*w exch def %cyan is a mixture of leaf green and voilet blue, therefore orange red(o) = white, %violet blue(v) = 1-black(n), leaf green(l) = white + cyan blue (c2*w) /v*n 1 n*w sub def /l*n w*w c2*w add def /o*n w*w def /i*p 0 def /t*p l*n l*n v*n add 0.0001 add div def } if % angle between voilet blue and magenta red, sector V-M of C-M, M>=C col_ang V*Ang ge col_ang M*Ang lt and {1 wLAB*s0 0 get wLAB*s0 1 get wLAB*s0 2 get 1 nLAB*s0 0 get nLAB*s0 1 get nLAB*s0 2 get 1 vLAB*s0 0 get vLAB*s0 1 get vLAB*s0 2 get 1 mLAB*s0 0 get mLAB*s0 1 get mLAB*s0 2 get 1 L*Fs0 A*Fs0 B*Fs0 CoeffprocL /c1*w exch def %M /c2*w exch def %V /n*w exch def /w*w exch def %magenta is a mixture of orange red and voilet blue, therefore leaf green(l) = white, %violet(o) = 1-black(n), orange red(o) = white + magenta red (c1*w) /v*n 1 n*w sub def /l*n w*w def /o*n w*w c1*w add def /i*p 1 def /t*p o*n o*n v*n add 0.0001 add div def } if %achromatic %W: o*n, l*n, v*n = 1.00 1.0 o*n sub abs 0.001 le 1.0 l*n sub abs 0.001 le and 1.0 v*n sub abs 0.001 le and %W special case {/i*p 6 def %W /e*w 0 def /n*n 0 def /w*n 1 def /t*p 0.0001 def } if %N: o*n, l*n, v*n <= 0.01 o*n abs 0.001 le l*n abs 0.001 le and v*n abs 0.001 le and %N special case {/i*p 6 def %N /e*w 0 def /n*n 1 def /w*n 0 def /t*p 0.0001 def } if %Achromatic o*n l*n sub abs 0.001 le l*n v*n sub abs 0.001 le and %Achromatic special case {/i*p 6 def %N /e*w 0 def /n*n o*n def /w*n 1 o*n sub def /t*p 0.0001 def } if /c*w 1 o*n sub def /m*w 1 l*n sub def /y*w 1 v*n sub def /t*n 1 t*p sub def /r*w 1 n*w sub w*w sub def %Ostwald equation for radial chromaticness: %with r*w=radial chromaticness, n*w=blackness, w*w=whiteness /t*w 1 n*w sub r*w 0.5 mul add def %triangle lightness /e*w r*w n*w r*w add 0.0001 add div def %Eigencolor ratio r*w abs 0.001 le r*w abs 0.001 le and {/e*w 0.0001 def} if % with 0 for achromatic (c*w=0) and 1 for whitish colors (n*w=0) /lab*rFa r*w def %/lab*tFa t*w def /h1* (-) def /h2* (-) def /H 0 def /H1* (-) def /H2* (-) def /H 0 def /IEND 0 def col_ang R*Ang gt col_ang J*Ang le and {/H* col_ang R*Ang sub J*Ang R*Ang sub div def /p*F 0.00 H* 0.25 mul add def /h1* (r) def /h2* (j) def /H1* (R) def /H2* (J) def /HM* R*Ang def /HP* J*Ang def /IEND 1 def} if col_ang J*Ang gt col_ang G*Ang le and {/H* col_ang J*Ang sub G*Ang J*Ang sub div def /p*F 0.25 H* 0.25 mul add def /h1* (j) def /h2* (g) def /H1* (J) def /H2* (G) def /HM* J*Ang def /HP* G*Ang def /IEND 1 def} if col_ang G*Ang gt col_ang B*Ang le and {/H* col_ang G*Ang sub B*Ang G*Ang sub div def /p*F 0.50 H* 0.25 mul add def /h1* (g) def /h2* (b) def /H1* (G) def /H2* (B) def /HM* G*Ang def /HP* B*Ang def /IEND 1 def} if col_ang R*Ang le IEND 0 eq and {/Pcol_ang col_ang 360 add def} {/Pcol_ang col_ang def} ifelse Pcol_ang B*Ang gt Pcol_ang R*Ang 360 add le and {/H* Pcol_ang B*Ang sub R*Ang 360 add B*Ang sub div def /p*F 0.75 H* 0.25 mul add def /h1* (b) def /h2* (r) def /H1* (B) def /H2* (R) def /HM* B*Ang def /HP* R*Ang 360 add def} if /lab*e1Fa h1* def /lab*EFa H* def /lab*e2Fa h2* def /lab*eFa p*F def /CIEF 100 88.60 div def /X* {L*F 16 add 116 div A*Fs0 500 div add } bind def /Y* {L*F 16 add 116 div } bind def /Z* {L*F 16 add 116 div B*Fs0 200 div sub} bind def /DecodeXYZ* { dup 6 29 div ge { dup dup mul mul } { 4 29 div sub 108 841 div mul } ifelse } bind def /XCIE {X* DecodeXYZ* 0.9505 mul} bind def /YCIE {Y* DecodeXYZ* } bind def /ZCIE {Z* DecodeXYZ* 1.0890 mul} bind def /XCIE1 {X* DecodeXYZ* 0.9505 mul CIEF mul} bind def /YCIE1 {Y* DecodeXYZ* CIEF mul} bind def /ZCIE1 {Z* DecodeXYZ* 1.0890 mul CIEF mul} bind def %Transformation X Y Z to RsRGB, GsRGB, BsRGB /RsRGB XCIE1 3.2406 mul YCIE1 -1.5372 mul add ZCIE1 -0.4986 mul add def /GsRGB XCIE1 -0.9686 mul YCIE1 1.8758 mul add ZCIE1 0.0415 mul add def /BsRGB XCIE1 0.0557 mul YCIE1 -0.2040 mul add ZCIE1 1.0570 mul add def /Slope 1.0 2.4 div def RsRGB 0.00313008 le {/R'sRGB RsRGB 12.92 mul def} {/R'sRGB RsRGB Slope exp 1.055 mul 0.055 sub def} ifelse GsRGB 0.00313008 le {/G'sRGB GsRGB 12.92 mul def} {/G'sRGB GsRGB Slope exp 1.055 mul 0.055 sub def} ifelse BsRGB 0.00313008 le {/B'sRGB BsRGB 12.92 mul def} {/B'sRGB BsRGB Slope exp 1.055 mul 0.055 sub def} ifelse c*w m*w y*w 0 %default output data definition } bind def %END Procedure LAB*io_to_cmyolv*ioL (L=local) /ouTab*ioL {%BEG Procedure ouTab*ioL (L=local) /Fontsize 152 Tabfakt mul def /TN {Fontsize /Times-ISOL1 FS} def /TI {Fontsize /TimesI-ISOL1 FS} def /TB {Fontsize /TimesB-ISOL1 FS} def /TBI {Fontsize /TimesBI-ISOL1 FS} def 1 1 1 0 setcmykcolor /o* r def /l* g def /v* b def %olv*, cmy* /yTABm ya ys 0.81 mul add def /yTABd 132 Tabfakt mul def /yTABx yTABm yTABd 1 mul sub def /yTAB0 yTABm yTABd 2 mul sub def /yTAB1 yTABm yTABd 3 mul sub def /yTAB2 yTABm yTABd 4 mul sub def /yTAB3 yTABm yTABd 5.1 mul sub def /yTAB4 yTABm yTABd 6.1 mul sub def /yTABn yTABm yTABd 7.1 mul sub def /yTAB5 yTABm yTABd 8.1 mul sub def /yTAB6 yTABm yTABd 9.2 mul sub def /yTAB7 yTABm yTABd 10.2 mul sub def /yTAB8 yTABm yTABd 11.2 mul sub def /yTAB9 yTABm yTABd 12.2 mul sub def /yTAB10 yTABm yTABd 13.3 mul sub def /yTAB11 yTABm yTABd 14.3 mul sub def /yTAB12 yTABm yTABd 15.2 mul sub def /yTAB13 yTABm yTABd 16.1 mul sub def /xTABm xa xs 0.84 mul sub def /xTABd 500 Tabfakt mul def /xTAB10 xTABm xTABd 1.15 mul add def /xTAB20 xTABm xTABd 2.00 mul add def /xTAB30 xTABm xTABd 2.85 mul add def /xTAB40 xTABm xTABd 3.70 mul add def /xTAB1 xTABm xTABd 1.60 mul add def /xTAB2 xTABm xTABd 2.55 mul add def /xTAB3 xTABm xTABd 3.50 mul add def /o3*Fa o* def /l3*Fa l* def /v3*Fa v* def xTABm yTABm moveto TBI (relative ) show TB (Inform. Technology (IT)) show xTABm yTABx moveto TI (olvi3*) show TN xTAB10 yTABx moveto o3*Fa cvsshow3 xTAB20 yTABx moveto l3*Fa cvsshow3 xTAB30 yTABx moveto v3*Fa cvsshow3 xTAB40 yTABx moveto ((1.0)) show /c3*Fa 1 o3*Fa sub def /m3*Fa 1 l3*Fa sub def /y3*Fa 1 v3*Fa sub def xTABm yTAB0 moveto TI (cmyn3*) show TN xTAB10 yTAB0 moveto c3*Fa cvsshow3 xTAB20 yTAB0 moveto m3*Fa cvsshow3 xTAB30 yTAB0 moveto y3*Fa cvsshow3 xTAB40 yTAB0 moveto ((0.0)) show LAB*ioL /c* c3*Fa def /m* m3*Fa def /y* y3*Fa def /n* 0.0 def /o* 1 c* sub def /l* 1 m* sub def /v* 1 y* sub def cmyolv*io_to_LAB*ioL xTABm yTAB3 moveto TBI (standard ) show TB (and ) show TBI (adapted ) show TB (CIELAB) show xTABm yTAB4 moveto TI (LAB*LAB) show TN xTAB1 yTAB4 moveto LAB*LF cvsshow2 xTAB2 yTAB4 moveto LAB*AF cvsshow2 xTAB3 yTAB4 moveto LAB*BF cvsshow2 xTABm yTABn moveto TI (LAB*LABa) show TN xTAB1 yTABn moveto LAB*LFa cvsshow2 xTAB2 yTABn moveto LAB*AFa cvsshow2 xTAB3 yTABn moveto LAB*BFa cvsshow2 xTABm yTAB5 moveto TI (LAB*TCHa) show TN xTAB1 yTAB5 moveto lab*tFa 100 mul cvsshow2 xTAB2 yTAB5 moveto LAB*CFa cvsshow2 xTAB3 yTAB5 moveto LAB*CFa 1.0 ge {LAB*HFa cvsshow2} {( -) show} ifelse L*F A*F B*F LAB*io_to_cmyolv*ioL %lab relative CIELAB /c4*Fa c3*Fa lab*nFa sub def %at least one of cmy will be cero /m4*Fa m3*Fa lab*nFa sub def /y4*Fa y3*Fa lab*nFa sub def /n4*Fa lab*nFa def /o4*Fa 1 c4*Fa sub def /l4*Fa 1 m4*Fa sub def /v4*Fa 1 y4*Fa sub def /i4*Fa 1 n4*Fa sub def xTABm yTAB1 moveto TI (olvi4*) show TN xTAB10 yTAB1 moveto o4*Fa cvsshow3 xTAB20 yTAB1 moveto l4*Fa cvsshow3 xTAB30 yTAB1 moveto v4*Fa cvsshow3 xTAB40 yTAB1 moveto i4*Fa cvsshow3 xTABm yTAB2 moveto TI (cmyn4*) show TN xTAB10 yTAB2 moveto c4*Fa cvsshow3 xTAB20 yTAB2 moveto m4*Fa cvsshow3 xTAB30 yTAB2 moveto y4*Fa cvsshow3 xTAB40 yTAB2 moveto n4*Fa cvsshow3 xTABm yTAB6 moveto TBI (relative ) show TB (CIELAB ) show TBI (lab*) show xTABm yTAB7 moveto TI (lab*lab) show TN xTAB1 yTAB7 moveto lab*lFa cvsshow3 /lab*aFa lab*cFa LAB*HFa cos mul def /lab*bFa lab*cFa LAB*HFa sin mul def xTAB2 yTAB7 moveto lab*aFa cvsshow3 xTAB3 yTAB7 moveto lab*bFa cvsshow3 xTABm yTAB8 moveto TI (lab*tch) show TN xTAB1 yTAB8 moveto lab*tFa cvsshow3 xTAB2 yTAB8 moveto lab*cFa cvsshow3 xTAB3 yTAB8 moveto lab*cFa 0.01 ge {lab*hFa cvsshow3} {( -) show} ifelse xTABm yTAB9 moveto TI (lab*nch) show TN xTAB1 yTAB9 moveto lab*nFa cvsshow3 xTAB2 yTAB9 moveto lab*cFa cvsshow3 xTAB3 yTAB9 moveto lab*cFa 0.01 ge {lab*hFa cvsshow3} {( -) show} ifelse %lab*lrj,tce,ncE: similar to NCS xTABm yTAB10 moveto TBI (relative ) show TB (Natural Colour (NC)) show xTABm yTAB11 moveto TI (lab*lrj) show TN xTAB1 yTAB11 moveto lab*lFa cvsshow3 /lab*rFa lab*cFa lab*eFa 360 mul cos mul def /lab*jFa lab*cFa lab*eFa 360 mul sin mul def xTAB2 yTAB11 moveto lab*rFa cvsshow3 xTAB3 yTAB11 moveto lab*jFa cvsshow3 xTABm yTAB12 moveto TI (lab*tce) show TN xTAB1 yTAB12 moveto lab*tFa cvsshow3 xTAB2 yTAB12 moveto lab*cFa cvsshow3 xTAB3 yTAB12 moveto lab*cFa 0.01 ge {lab*eFa cvsshow3}{( -) show} ifelse xTABm yTAB13 moveto TI (lab*ncE) show TN xTAB1 yTAB13 moveto lab*nFa cvsshow3 xTAB2 yTAB13 moveto lab*cFa cvsshow3 xTAB3 yTAB13 moveto lab*cFa 0.01 ge {lab*e1Fa show lab*EFa 100 mul truncate cvi dup 10 lt {(0) show } if 6 string cvs show lab*e2Fa show} {( -) show} ifelse } bind def %END Procedure ouTab*ioL /ouCal*ioL {%BEG Procedure ouCal*ioL 1 1 1 0 setcmykcolor /o* r def /l* g def /v* b def /o3*Fa o* def /l3*Fa l* def /v3*Fa v* def /c3*Fa 1 o3*Fa sub def /m3*Fa 1 l3*Fa sub def /y3*Fa 1 v3*Fa sub def LAB*ioL /c* c3*Fa def /m* m3*Fa def /y* y3*Fa def /n* 0.0 def /o* 1 c* sub def /l* 1 m* sub def /v* 1 y* sub def cmyolv*io_to_LAB*ioL L*F A*F B*F LAB*io_to_cmyolv*ioL %lab relative CIELAB /c4*Fa c3*Fa lab*nFa sub def %at least one of cmy will be cero /m4*Fa m3*Fa lab*nFa sub def /y4*Fa y3*Fa lab*nFa sub def /n4*Fa lab*nFa def /o4*Fa 1 c4*Fa sub def /l4*Fa 1 m4*Fa sub def /v4*Fa 1 y4*Fa sub def /i4*Fa 1 n4*Fa sub def } bind def %END Procedure ouCal*ioL /proc_LAB*Fa_LAB*MaNTABl_olvi3*cmyn3*Ma*ioL { %BEG proc_LAB*Fa_LAB*MaNTABl_olvi3*cmyn3*Ma*ioL %only for calculation without hue tables %input LAB*Fa %input LAB*a (6 adapted colours OYLCVM) %input nLAB*s0 (colour white N for calculation of lab*l) %input wLAB*s0 (colour white W for achromatic axis) %output LAB*Ma %output olvi3*Ma %output cmyn3*Ma /UXF1a wLAB*s0 1 get B*Fa mul wLAB*s0 2 get A*Fa mul sub def /UXF2a wLAB*s0 2 get L*Fa mul wLAB*s0 0 get B*Fa mul sub def /UXF3a wLAB*s0 0 get A*Fa mul wLAB*s0 1 get L*Fa mul sub def /T1 0 def /T2 0 def 0 1 5 {/ia exch def /ia30 ia 3 mul def ia 5 eq {/ia31 0 def} {/ia31 ia30 3 add def} ifelse /T1 LAB*a ia30 get UXF1a mul LAB*a ia30 1 add get UXF2a mul add LAB*a ia30 2 add get UXF3a mul add def /T2 LAB*a ia31 get UXF1a mul LAB*a ia31 1 add get UXF2a mul add LAB*a ia31 2 add get UXF3a mul add def T1 0 le {/T1X (N) def} {/T1X (P) def} ifelse T2 0 gt {/T2X (P) def} {/T2X (N) def} ifelse T1 0 le T2 0 gt and {/ia3END ia30 def exit} if } for /L*11a LAB*a ia3END get def /A*11a LAB*a ia3END 1 add get def /B*11a LAB*a ia3END 2 add get def ia3END 15 ge {/ia3END -3 def} if /L*21a LAB*a ia3END 3 add get def /A*21a LAB*a ia3END 4 add get def /B*21a LAB*a ia3END 5 add get def /NENNER L*21a L*11a sub UXF1a mul A*21a A*11a sub UXF2a mul add B*21a B*11a sub UXF3a mul add def /ZAEHLE L*21a UXF1a mul A*21a UXF2a mul add B*21a UXF3a mul add def NENNER 0 ne {/ALPH ZAEHLE NENNER div def} {/ALPH 99999} ifelse /L*Ma ALPH L*11a mul 1 ALPH sub L*21a mul add def /A*Ma ALPH A*11a mul 1 ALPH sub A*21a mul add def /B*Ma ALPH B*11a mul 1 ALPH sub B*21a mul add def /C*Ma A*Ma dup mul B*Ma dup mul add 0.000001 add sqrt def /H*Ma B*Ma A*Ma 0.0001 add atan def /ia30 ia 3 mul def /iap 1 ALPH sub def /iam ALPH def ia 0 eq {/c3*Ma 0 def %L, c*=0, sector O->Y /m3*Ma iam def %L, m*=1->0 /y3*Ma 1 def %L, y*=1 } if ia 1 eq {/c3*Ma iap def %L, c*=0->1, sector Y->L /m3*Ma 0 def %L, m*=0 /y3*Ma 1 def %L, y*=1 } if ia 2 eq {/c3*Ma 1 def %L, c*=1, sector L->C /m3*Ma 0 def %L, m*=0 /y3*Ma iam def %L, y*=1->0 } if ia 3 eq {/c3*Ma 1 def %L, c*=1, sector C->V /m3*Ma iap def %L, m*=1->0 /y3*Ma 0 def %L, y*=0 } if ia 4 eq {/c3*Ma iam def %L, c*=1->0, sector V->M /m3*Ma 1 def %L, m*=1 /y3*Ma 0 def %L, y*=0 } if ia 5 eq {/c3*Ma 0 def %L, c*=0, sector M->O /m3*Ma 1 def %L, m*=1 /y3*Ma iap def %L, y*=0->1 } if /o3*Ma 1 c3*Ma sub def /l3*Ma 1 m3*Ma sub def /v3*Ma 1 y3*Ma sub def /i3*Ma 1 def /lab*nMa 0.00 def /lab*cMa 1.00 def /lab*wMa 0.00 def /lab*tMa 0.50 def /lab*hMa H*Ma 360 div def /lab*lMa L*Ma nLAB*s0 0 get sub wLAB*s0 0 get nLAB*s0 0 get sub 0.000001 add div def } bind def %END /proc_LAB*Fa_LAB*MaNTABl_olvi3*cmyn3*Ma*ioL /rec %x0, y0 width heigth {/heigth exch def /width exch def /y0 exch def /x0 exch def x0 width 0.5 mul sub y0 heigth 0.5 mul sub moveto width 0 rlineto 0 heigth rlineto width neg 0 rlineto closepath } bind def /rgbrecfi %x0 y0 width heigth r g b {setrgbcolor rec fill} bind def /rgbrecst %x0 y0 width heigth r g b {setrgbcolor rec stroke} bind def /cmykrecfi %x0 y0 width heigth c m y k {setcmykcolor rec fill} bind def /cmykrecst %x0 y0 width heigth c m y k {setcmykcolor rec stroke} bind def /grerecfi %x0 y0 width heigth w {setgray rec fill} bind def /grerecst %x0 y0 width heigth w {setgray rec stroke} bind def /A4quer {598 0 tl 90 rotate} def %%ENDProlog gsave /lanind 0 def /lantex [(G) (E) (S) (N) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showm {6 lanind eq {show} {pop} ifelse} bind def /lanindg where {pop /lanind1 lanindg def /lanind2 lanindg def} {/lanind1 1 def /lanind2 1 def} ifelse /colormg where {pop /colorm1 colormg def /colorm2 colormg def} {/colorm1 1 def /colorm2 1 def} ifelse /xcolorg where {pop /xcolor1 xcolorg def /xcolor2 xcolorg def} {/xcolor1 0 def /xcolor2 0 def} ifelse /xchartg where {pop /xchart1 xchartg def /xchart2 xchartg def} {/xchart1 0 def /xchart2 0 def} ifelse /lanind lanind1 def %lanind1 1 lanind2 {/lanind exch def %output showpage /colorm colorm1 def %colorm1 1 colorm2 {/colorm exch def %output showpage /xcolor xcolor1 def %xcolor1 1 xcolor2 {/xcolor exch def %output showpage /xchart xchart1 def %xchart1 1 xchart2 {/xchart exch def %output showpage /GSS$ where {pop /LSS$ GSS$ def} {/LSS$ (1) def} ifelse /GSC$ where {pop /LSC$ GSC$ def} {/LSC$ (N) def} ifelse /GSX$ where {pop /LSX$ GSX$ def} {/LSX$ (0) def} ifelse /GSY$ where {pop /LSY$ GSY$ def} {/LSY$ (0) def} ifelse /GEX$ where {pop /LEX$ GEX$ def} {/LEX$ (P.PS./PDF) def} ifelse /GEY$ where {pop /LEY$ GEY$ def} {/LEY$ (P.DAT) def} ifelse /IMES where {pop %/IMES IMES def } {/IMES 0 def} ifelse /xchartg where {pop /xchart xchartg def} {/xchart 0 def} ifelse /IMODE 0 def /xs 1000 def /ys xs def /d2 xs 2 div def /d8 xs 8 div def /xs5x xs 5.4 mul def /ys5x ys 5.4 mul def /x xs 0.1 mul def /y ys 12.0 mul def /cvishow {0.5 add cvi 6 string cvs show} def /cvsshow1 {0.05 add 10 mul cvi 0.1 mul 7 string cvs show} def /cvsshow2 {0.005 add 100 mul cvi 0.01 mul 7 string cvs show} def /cvsshow3 {0.0005 add 1000 mul cvi 0.001 mul 7 string cvs show} def /xd 800 def /yd 800 def /xd5x xs5x 200 sub def /yd5x ys5x 200 sub def /j 0 def /i 0 def /xmin 0000 def /xmax 10000 def /ymin 0000 def /ymax 10000 def /ISIN*ioG where {pop /ISIN*ioL ISIN*ioG def} {/ISIN*ioL 0 def} ifelse /ISOU*ioG where {pop /ISOU*ioL ISOU*ioG def} {/ISOU*ioL 0 def} ifelse /ISRL*ioL 0 def % 0 1 9 {/xchart exch def %BEG xchart=0,9 /ISIN*ioL 0 def % 0 1 7 {/ISIN*ioL exch def %BEG ISIN*ioL=0,7 /ISOU*ioL 1 def % 0 1 7 {/ISOU*ioL exch def %BEG ISOU*ioL=0,7 gsave 72 90 translate 0.01 MM dup scale /xyf 1 def 0.5 setgray 0 0 moveto 25000 0 rlineto 0 17000 rlineto -25000 0 rlineto closepath fill 0.0 setgray 0 0 moveto 25000 0 rlineto 0 17000 rlineto -25000 0 rlineto closepath stroke 0 1 1 {/ibild exch def %ibild=0,1 ibild 0 eq {/ISIO*ioL ISIN*ioL def} {/ISIO*ioL ISOU*ioL def} ifelse /ISIO*ioG where {pop /ISIO*ioG ISIO*ioL def} if /ISRL*ioG where {pop /ISRL*ioG ISRL*ioL def} if /LAB*ioG where {pop LAB*ioG}{LAB*ioL} ifelse %new for hue data 0.0 setgray ibild 0 eq { 1500 1700 translate} if ibild 1 eq {13800 1700 translate} if 300 /Times-ISOL1 FS ibild 0 eq {-1250 xyf mul -1950 xyf mul moveto (SE900-7, 9) show} { -600 xyf mul -1950 xyf mul moveto (16) show} ifelse ( step scales for constant CIELAB hue ) showen (stufige Reihen f\374r konstanten CIELAB Buntton ) showde xchart 5 le {/x31 xchart 3 mul 1 add def} {/x31 xchart 2 add 3 mul 1 add def} ifelse /x32 x31 1 add def LAB*a x32 get LAB*a x31 get 0.0001 add atan cvishow (/360 = ) show LAB*a x32 get LAB*a x31 get 0.0001 add atan 360 div cvsshow3 ibild 0 eq {( (links) ) showde ( (left) ) showen} {( (rechts) ) showde ( (right) ) showen} ifelse 1.0 setgray 25 setlinewidth -200 000 moveto 11200 0 rlineto stroke 000 -200 moveto 0 11200 rlineto stroke ibild 0 eq {2500 -200 moveto 0 400 rlineto stroke 5000 -200 moveto 0 400 rlineto stroke 7500 -200 moveto 0 400 rlineto stroke} {2000 -200 moveto 0 400 rlineto stroke 4000 -200 moveto 0 400 rlineto stroke 6000 -200 moveto 0 400 rlineto stroke 8000 -200 moveto 0 400 rlineto stroke }ifelse 10000 -200 moveto 0 400 rlineto stroke -200 5000 moveto 400 0 rlineto stroke -200 10000 moveto 400 0 rlineto stroke 000 000 moveto 10000 5000 rlineto -10000 5000 rlineto stroke 10100 -450 sub 000 150 add moveto 450 -150 rlineto -450 -150 rlineto closepath fill 000 150 sub 10300 -450 sub moveto 150 450 rlineto 150 -450 rlineto closepath fill TM %c*, C* ibild 0 eq { %ibild=0 /iy0 -600 def 0 200 sub iy0 moveto (0,00) show 2500 200 sub iy0 moveto (0,25) show 5000 200 sub iy0 moveto (0,50) show 7500 200 sub iy0 moveto (0,75) show 10000 200 sub iy0 moveto (1,00) show } { /iy0 -600 def 0 200 sub iy0 moveto (0,00) show 2000 200 sub iy0 moveto (0,20) show 4000 200 sub iy0 moveto (0,40) show 6000 200 sub iy0 moveto (0,60) show 8000 200 sub iy0 moveto (0,80) show 10000 200 sub iy0 moveto (1,00) show } ifelse %ibild=1 TM %t*, L* ibild 0 eq { %ibild=0,1 /ix0 -1300 def /iy0 200 def ix0 0 iy0 sub moveto (0,00) show ix0 2500 iy0 sub moveto (0,25) show ix0 5000 iy0 sub moveto (0,50) show ix0 7500 iy0 sub moveto (0,75) show ix0 10000 iy0 sub moveto (1,00) show } { /ix0 -1000 def /iy0 200 def ix0 0 iy0 sub moveto (0,00) show ix0 2500 iy0 sub moveto (0,25) show ix0 5000 iy0 sub moveto (0,50) show ix0 7500 iy0 sub moveto (0,75) show ix0 10000 iy0 sub moveto (1,00) show } ifelse %ibild=0,1 TM %n* ibild 0 eq { %ibild=0,1 /iy0 1000 def 10000 500 sub 5000 iy0 sub moveto TIM (n*) show TM ( = 0,00) show 7500 500 sub 3750 iy0 sub moveto TIM (n*) show TM ( = 0,25) show 5000 500 sub 2500 iy0 sub moveto TIM (n*) show TM ( = 0,50) show 2500 500 sub 1250 iy0 sub moveto TIM (n*) show TM ( = 0,75) show 000 500 sub 00 iy0 sub moveto TIM (n*) show TM ( = 1,00) show } { /iy0 700 def 10000 200 sub 5000 iy0 sub moveto TIM (n*) show TM (=0,00) show 8000 200 sub 4000 iy0 sub moveto TIM (n*) show TM (=0,20) show 6000 200 sub 3000 iy0 sub moveto TIM (n*) show TM (=0,40) show 4000 200 sub 2000 iy0 sub moveto TIM (n*) show TM (=0,60) show 2000 200 sub 1000 iy0 sub moveto TIM (n*) show TM (=0,80) show 000 200 sub -400 iy0 sub moveto TIM (n*) show TM (=1,00) show } ifelse %ibild=0,1 /iy0 1200 def /im1 1.8 def /im2 2.3 def 10000 500 sub 5000 iy0 im1 mul sub moveto -1000 -500 rlineto stroke 10000 1500 sub 4700 iy0 im2 mul sub moveto TBG (blackness) showen (Schwarzheit) showde TBIG ( n*) show 10000 500 sub 1000 sub 5000 iy0 im1 mul sub 500 sub moveto 450 75 rlineto -100 300 rlineto closepath fill 8000 -1200 moveto TBG (chromaticness) showen (relative Buntheit) showde TBIG ( c*) show -1200 15000 moveto TBG ibild 0 eq { %ibild=0,1 (Input: Colorimetric ) showen (Eingabe: Farbmetrisches ) showde} {(Output: Colorimetric ) showen (Ausgabe: Farbmetrisches ) showde } ifelse ISRL*ioL 0 eq {%ISRL*ioL=0 ISIO*ioL 0 eq {/TSYSIO (ORS18) def (Offset Reflective System ) showen (Offset\255Reflektiv\255System ) showde} if ISIO*ioL 1 eq {/TSYSIO (TLS00) def (Television Luminous System ) showen (Fernseh\255Licht\255System ) showde} if ISIO*ioL 2 eq {/TSYSIO (DRSXX) def (Printer Reflective System ) showen (Drucker\255Reflektiv\255System ) showde} if ISIO*ioL 3 eq {/TSYSIO (TLS18) def (Television Luminous System ) showen (Fernseh\255Licht\255System ) showde} if ISIO*ioL 4 eq {/TSYSIO (NLS00) def (Natural Luminous System ) showen (Nat\374rliches\255Licht\255System ) showde} if ISIO*ioL 5 eq {/TSYSIO (NRS18) def (Natural Reflective System ) showen (Nat\374rliches\255Reflektiv\255System ) showde} if ISIO*ioL 6 eq {/TSYSIO (SRS18) def (Standard Reflective System ) showen (Standard\255Reflektiv\255System ) showde} if ISIO*ioL 7 eq {/TSYSIO (TLS70) def (Television Luminous System ) showen (Fernseh\255Licht\255System ) showde} if } if %ISRL*ioL=0 ISRL*ioL 1 eq {%ISRL*ioL=1 ISIO*ioL 0 eq {/TSYSIO (TLS00) def} if ISIO*ioL 1 eq {/TSYSIO (TLS06) def} if ISIO*ioL 2 eq {/TSYSIO (TLS11) def} if ISIO*ioL 3 eq {/TSYSIO (TLS18) def} if ISIO*ioL 4 eq {/TSYSIO (TLS27) def} if ISIO*ioL 5 eq {/TSYSIO (TLS38) def} if ISIO*ioL 6 eq {/TSYSIO (TLS52) def} if ISIO*ioL 7 eq {/TSYSIO (TLS70) def} if (Television Luminous System ) showen (Fernseh\255Licht\255System ) showde } if %ISRL*ioL=1 ISRL*ioL 2 eq {%ISRL*ioL=2 ISIO*ioL 0 eq {/TSYSIO (OLS00) def} if ISIO*ioL 1 eq {/TSYSIO (OLS06) def} if ISIO*ioL 2 eq {/TSYSIO (OLS11) def} if ISIO*ioL 3 eq {/TSYSIO (OLS18) def} if ISIO*ioL 4 eq {/TSYSIO (OLS27) def} if ISIO*ioL 5 eq {/TSYSIO (OLS38) def} if ISIO*ioL 6 eq {/TSYSIO (OLS52) def} if ISIO*ioL 7 eq {/TSYSIO (OLS70) def} if (Offset Luminous System ) showen (Offset\255Licht\255System ) showde } if %ISRL*ioL=2 TSYSIO show -1200 14500 moveto TBG (for hue) showen (f\374r Buntton) showde TBIG ( h* = lab*h = ) show xchart 5 le {/x31 xchart 3 mul 1 add def} {/x31 xchart 2 add 3 mul 1 add def} ifelse /x32 x31 1 add def LAB*a x32 get LAB*a x31 get 0.0001 add atan cvishow (/360 = ) show LAB*a x32 get LAB*a x31 get 0.0001 add atan 360 div cvsshow3 -1200 14000 moveto TBIG (lab*tch) show TBG ( and ) showen ( und ) showde TBIG (lab*nch) show -1200 11500 moveto TBG (triangle lightness) showen (Dreiecks\255Helligkeit) showde TBIG ( t*) show /ColNames [(O) (Y) (L) (C) (V) (M) (N) (W) (R) (J) (G) (B)] def -1200 13500 moveto TBG (A: hue ) showen (A: Buntton ) showde xchart 5 le {/i xchart def}{/i xchart 2 add def} ifelse ColNames i get show /L*Fa LAB*a i 3 mul get def /A*Fa LAB*a i 3 mul 1 add get def /B*Fa LAB*a i 3 mul 2 add get def /C*Fa A*Fa dup mul B*Fa dup mul add sqrt def /H*Fa B*Fa A*Fa 0.0001 add atan def proc_LAB*Fa_LAB*MaNTABl_olvi3*cmyn3*Ma*ioL -1200 13000 moveto (LCH*Ma: ) show L*Ma cvishow ( ) show C*Ma cvishow ( ) show H*Ma cvishow -1200 12500 moveto (olv*Ma: ) show o3*Ma cvsshow2 ( ) show l3*Ma cvsshow2 ( ) show v3*Ma cvsshow2 0.0 setgray ibild 0 eq { %ibild=0 /Tabfakt 2.00 def /anz 9 def /xs 10000 anz 7 add div def /ys xs def /x9 xs 1.8 mul def /xd xs 2 mul def /yd xs def 0 0 0 0 setcmykcolor %n* 1 1 7 {/j exch def /x1 xmin def /y1 ymax yd j 2 mul mul sub def /x2 xmin xd 8 j sub mul add def /y2 ymin yd 8 j sub mul add def x1 y1 moveto x2 y2 lineto stroke } for %c* 1 1 7 {/j exch def /x1 xmin xd j mul add def /y1 ymax yd j mul sub def /x2 xmin xd j mul add def /y2 ymin yd j mul add def x1 y1 moveto x2 y2 lineto stroke } for xchart 6 ge {/i 8 xchart 6 sub add def %RJGB /L*Fa LAB*a i 3 mul get def /A*Fa LAB*a i 3 mul 1 add get def /B*Fa LAB*a i 3 mul 2 add get def proc_LAB*Fa_LAB*MaNTABl_olvi3*cmyn3*Ma*ioL %calculates olv3*Ma used in later loop } if /id 1 8 div def 0 1 07 {/j exch def %j=0,7 /im 8 j sub def 0 1 im {/i exch def %i=0,8 /ia 1 id j mul sub def /argb ia def /brgb ia i id mul sub def xchart 0 eq {/r argb def /g brgb def /b brgb def} if xchart 1 eq {/r argb def /g argb def /b brgb def} if xchart 2 eq {/r brgb def /g argb def /b brgb def} if xchart 3 eq {/r brgb def /g argb def /b argb def} if xchart 4 eq {/r brgb def /g brgb def /b argb def} if xchart 5 eq {/r argb def /g brgb def /b argb def} if xchart 6 ge {%xchart>=6 /ib 1 im div def %im#0 /ic 1 ib i mul sub def /ie 1 ic sub def /r 1 ia mul ic mul o3*Ma ia mul ie mul add def /g 1 ia mul ic mul l3*Ma ia mul ie mul add def /b 1 ia mul ic mul v3*Ma ia mul ie mul add def } if %xchart>=6 /xa xmin xd i mul add def /iad j 2 mul def /ya ymax yd i iad add mul sub def xa ya xd xd 1 r sub 1 g sub 1 b sub 0 cmykrecfi } for %i=0,8 } for %j=0,7 %n fill /xa xmin def /ya ymin def /r 0.0 def /g 0.00 def /b 0.00 def xa ya xd xd 1 r sub 1 g sub 1 b sub 0 cmykrecfi /i 4 def %mean grey stroke of 9 steps /xa xmin def /ya ymax yd i mul 2 mul sub def xa ya xd xd 0 0 0 0 cmykrecst } if %ibild=0 ibild 1 eq { %ibild=1 /Tabfakt 1 def /anz 16 def /xs 10000 anz 14 add div def /ys xs def /x9 xs 1.8 mul def /xd xs 2 mul def /yd xs def 0 0 0 0 setcmykcolor %n* 1 1 14 {/j exch def %j=1,14 /x1 xmin def /y1 ymax yd j 2 mul mul sub def /x2 xmin xd 15 j sub mul add def /y2 ymin yd 15 j sub mul add def x1 y1 moveto x2 y2 lineto stroke } for %j=1,14 %c* 1 1 14 {/j exch def %j=1,14 /x1 xmin xd j mul add def /y1 ymax yd j mul sub def /x2 xmin xd j mul add def /y2 ymin yd j mul add def x1 y1 moveto x2 y2 lineto stroke } for %j=1,14 xchart 6 ge {/i 8 xchart 6 sub add def %RJGB /L*Fa LAB*a i 3 mul get def /A*Fa LAB*a i 3 mul 1 add get def /B*Fa LAB*a i 3 mul 2 add get def proc_LAB*Fa_LAB*MaNTABl_olvi3*cmyn3*Ma*ioL %calculates olv3*Ma used in later loop } if /id 1 15 div def 0 1 14 {/j exch def %j=0,14 /im 15 j sub def 0 1 im {/i exch def %i=0,15 /ia 1 id j mul sub def /argb ia def /brgb ia i id mul sub def xchart 0 eq {/r argb def /g brgb def /b brgb def} if xchart 1 eq {/r argb def /g argb def /b brgb def} if xchart 2 eq {/r brgb def /g argb def /b brgb def} if xchart 3 eq {/r brgb def /g argb def /b argb def} if xchart 4 eq {/r brgb def /g brgb def /b argb def} if xchart 5 eq {/r argb def /g brgb def /b argb def} if xchart 6 ge {%xchart>=6 /ib 1 im div def %im#0 /ic 1 ib i mul sub def /ie 1 ic sub def /r 1 ia mul ic mul o3*Ma ia mul ie mul add def /g 1 ia mul ic mul l3*Ma ia mul ie mul add def /b 1 ia mul ic mul v3*Ma ia mul ie mul add def } if %xchart>=6 /xa xmin xd i mul add def /iad j 2 mul def /ya ymax yd i iad add mul sub def xa ya xd xd 1 r sub 1 g sub 1 b sub 0 cmykrecfi } for %i=0,15 } for %j=0,14 %n fill /xa xmin def /ya ymin def /r 0.0 def /g 0.00 def /b 0.00 def xa ya xd xd 1 r sub 1 g sub 1 b sub 0 cmykrecfi %mean grey stroke of steps 7 and 8 7 1 8 {/i exch def %i=7,8 /xa xmin def /ya ymax yd i mul 2 mul sub def xa ya xd xd 0 0 0 0 cmykrecst } for %i=7,8 } if %ibild=1 %CIELAB-Table 5700 10000 translate /yhoe 6300 xyf mul def 15 xyf mul setlinewidth 1.0 setgray 0 0 moveto 5300 xyf mul 0 rlineto 0 4800 xyf mul rlineto -5300 xyf mul 0 rlineto closepath fill 0.0 setgray 0 0 moveto 5300 xyf mul 0 rlineto 0 4800 xyf mul rlineto -5300 xyf mul 0 rlineto closepath stroke /nshow {300 xyf mul /Times-ISOL1 FS show} bind def /kshow {300 xyf mul /TimesI-ISOL1 FS show} bind def /bshow {300 xyf mul /TimesB-ISOL1 FS show} bind def /jshow {300 xyf mul /TimesBI-ISOL1 FS show} bind def /sshow {300 xyf mul /Symbol FS show} bind def /ishow {220 xyf mul /Times-ISOL1 FS -00 -50 rmoveto show 00 50 rmoveto} bind def /eshow {220 xyf mul /Times-ISOL1 FS 0 100 rmoveto show 0 -100 rmoveto} bind def /yd 340 xyf mul def %y-Zeilenabstand %Spalten /S1 20 xyf mul def /S2 450 xyf mul def /S3 1550 xyf mul def /S4 2650 xyf mul def /S5 3750 xyf mul def /S6 4800 xyf mul def /yu1 4650 xyf mul def /yu2 3800 xyf mul def 0 4100 xyf mul moveto 5200 xyf mul 0 rlineto stroke %Titeltext S1 4550 xyf mul moveto ibild 0 eq {TSYSIO bshow} {TSYSIO bshow} ifelse lanind 1 eq {(; adapted (a) CIELAB data) bshow} if lanind 0 eq {(; adaptierte CIELAB\255Daten) bshow} if S2 000 xyf mul add 4250 xyf mul moveto (L*=L*) kshow (a) ishow S3 100 xyf mul add 4250 xyf mul moveto (a*) kshow (a) ishow S4 000 xyf mul add 4250 xyf mul moveto (b*) kshow (a) ishow S5 100 xyf mul sub 4250 xyf mul moveto (C*) kshow (ab,a) ishow S6 200 xyf mul sub 4250 xyf mul moveto (h*) kshow (ab,a) ishow 0 1 11 {/ic exch def %ic=0,11 S1 20 xyf mul add yu2 yd ic mul sub moveto ColNames ic get nshow ic 8 ge {(CIE) ishow}{(Ma) ishow} ifelse } for %ic=0,11 0 1 11 {/i exch def %i=0,11 /ya yu2 yd i mul sub def /L*Ma LAB*a i 3 mul get def /A*Ma LAB*a i 3 mul 1 add get def /B*Ma LAB*a i 3 mul 2 add get def /C*Ma A*Ma dup mul B*Ma dup mul add sqrt def /H*Ma B*Ma A*Ma 0.0001 add atan def S2 200 add ya moveto L*Ma cvsshow2 S3 ya moveto A*Ma cvsshow2 S4 ya moveto B*Ma cvsshow2 S5 ya moveto C*Ma cvsshow2 S6 ya moveto H*Ma cvishow } for %i=0,11 -5700 -10000 translate %CIELAB-Diagram 2800 11600 translate 25 xyf mul setlinewidth 1.0 setgray 0 0 moveto 2800 xyf mul 0 rlineto 0 2800 xyf mul rlineto -2800 xyf mul 0 rlineto closepath fill 0.0 setgray 0 0 moveto 2800 xyf mul 0 rlineto 0 2800 xyf mul rlineto -2800 xyf mul 0 rlineto closepath stroke 1200 xyf mul 1300 xyf mul translate -1000 xyf mul 0 moveto 1000 xyf mul 0 lineto stroke 0 -1000 xyf mul moveto 0 1000 xyf mul lineto stroke 1100 xyf mul 0 moveto (a*) kshow (a) ishow 0 1100 xyf mul moveto (b*) kshow (a) ishow /rx 774 xyf mul def %standard hexagon gamut 0.0 setgray rx 030 cos mul rx 030 sin mul moveto 0 rx lineto rx 150 cos mul rx 150 sin mul lineto rx 210 cos mul rx 210 sin mul lineto 0 rx neg lineto rx 330 cos mul rx 330 sin mul lineto closepath stroke /r 1 def /g 0 def /b 0 def 1 r sub 1 g sub 1 b sub 0 setcmykcolor rx 030 cos mul rx 030 sin mul 100 0 360 arc fill /r 1 def /g 1 def /b 0 def 1 r sub 1 g sub 1 b sub 0 setcmykcolor 0 rx 100 0 360 arc fill /r 0 def /g 1 def /b 0 def 1 r sub 1 g sub 1 b sub 0 setcmykcolor rx 150 cos mul rx 150 sin mul 100 0 360 arc fill /r 0 def /g 1 def /b 1 def 1 r sub 1 g sub 1 b sub 0 setcmykcolor rx 210 cos mul rx 210 sin mul 100 0 360 arc fill /r 0 def /g 0 def /b 1 def 1 r sub 1 g sub 1 b sub 0 setcmykcolor 0 rx neg 100 0 360 arc fill /r 1 def /g 0 def /b 1 def 1 r sub 1 g sub 1 b sub 0 setcmykcolor rx 330 cos mul rx 330 sin mul 100 0 360 arc fill %calculation line of actual hue 45 xyf mul setlinewidth %actual gamut 1 1 1 0 setcmykcolor 0 1 5 {/i exch def %i=0,5 /A*Ma LAB*a i 3 mul 1 add get def /B*Ma LAB*a i 3 mul 2 add get def i 0 eq {A*Ma xyf mul 10 mul B*Ma xyf mul 10 mul moveto} {A*Ma xyf mul 10 mul B*Ma xyf mul 10 mul lineto} ifelse i 5 eq {closepath stroke} if } for %i=0,5 %plot line of actual hue 50 xyf mul setlinewidth xchart 0 eq {/r 1 def /g 0 def /b 0 def} if xchart 1 eq {/r 1 def /g 1 def /b 0 def} if xchart 2 eq {/r 0 def /g 1 def /b 0 def} if xchart 3 eq {/r 0 def /g 1 def /b 1 def} if xchart 4 eq {/r 0 def /g 0 def /b 1 def} if xchart 5 eq {/r 1 def /g 0 def /b 1 def} if xchart 5 le {%xchart<=5 1 r sub 1 g sub 1 b sub 0 setcmykcolor 0 0 moveto /A*Ma LAB*a xchart 3 mul 1 add get def /B*Ma LAB*a xchart 3 mul 2 add get def A*Ma xyf mul 10 mul B*Ma xyf mul 10 mul lineto stroke } if %xchart<=5 xchart 6 ge {%xchart>=6 /i xchart 2 add def /L*Fa LAB*a i 3 mul get def /A*Fa LAB*a i 3 mul 1 add get def /B*Fa LAB*a i 3 mul 2 add get def proc_LAB*Fa_LAB*MaNTABl_olvi3*cmyn3*Ma*ioL %calulates LAB*Ma /r o3*Ma def /g l3*Ma def /b v3*Ma def 1 r sub 1 g sub 1 b sub 0 setcmykcolor 0 0 moveto A*Ma xyf mul 10 mul B*Ma xyf mul 10 mul lineto stroke /A*Fa LAB*a xchart 2 add 3 mul 1 add get def /B*Fa LAB*a xchart 2 add 3 mul 2 add get def A*Fa xyf mul 10 mul B*Fa xyf mul 10 mul moveto -100 -100 rlineto 200 200 rlineto stroke A*Fa xyf mul 10 mul B*Fa xyf mul 10 mul moveto -100 100 rlineto 200 -200 rlineto stroke } if %xchart>=6 -1200 xyf mul -1300 xyf mul translate -2800 -11600 translate /u* 0 def /H*M 6 array def /C*M 6 array def 0 1 5 {/i exch def %i=0,5 /A*Ma LAB*a i 3 mul 1 add get def /B*Ma LAB*a i 3 mul 2 add get def /C*Ma A*Ma dup mul B*Ma dup mul add sqrt def H*M i B*Ma A*Ma 0.0001 add atan put C*M i C*Ma put /u* u* C*Ma L*Wio L*Nio sub mul add def } for %i=0,5 /u*r u* 77.4 77.4 mul 6 mul div 100 mul def 0 0 0 0 setcmykcolor 3200 11200 moveto TBM (%Gamut) showen (%Umfang) showde 3200 10700 moveto TBM (u*) show (rel) ishow TBM ( = ) show u*r cvishow 0 1 4 {/i exch def %i=0,4 /H*dif H*M i 1 add get H*M i get sub def i 0 eq {/H*min H*dif def /H*max H*dif def} if H*dif H*min lt {/H*min H*dif def} if H*dif H*max gt {/H*max H*dif def} if } for %i=0,4 /g*Hr H*min H*max div 100 mul def 3200 10200 moveto TBM (%Regularity) showen (%Regularit\344t) showde 3200 9700 moveto TBM (g*) show (H,rel) ishow TBM ( = ) show g*Hr cvishow 0 1 4 {/i exch def %i=0,4 /C*akt C*M i get def i 0 eq {/C*min C*akt def /C*max C*akt def} if C*akt C*min lt {/C*min C*akt def} if C*akt C*max gt {/C*max C*akt def} if } for %i=0,4 /g*Cr C*min C*max div 100 mul def 3200 9200 moveto TBM (g*) show (C,rel) ishow TBM ( = ) show g*Cr cvishow ibild 0 eq { -1500 -1700 translate} if ibild 1 eq {-13800 -1700 translate} if 0.0 setgray 0 0 moveto 25000 0 rlineto 0 17000 rlineto -25000 0 rlineto closepath stroke } for %ibild=0,1 grestore showpage %} for %END ISOU*ioL=0,7 %} for %END ISIN*ioL=0,7 %} for %END xchart=0,9 %%Trailor %%EndDocument EndEPSF grestore gsave BeginEPSF 86 MM 020 MM translate 12 /Times-ISOL1 FS -9 MM -7 MM moveto ( ) show 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 18 %line 409 %%EndDocument EndEPSF grestore gsave BeginEPSF 161 MM 197 MM translate 10 /Times-ISOL1 FS 1 1 scale -77 -91 translate %%BeginDocument: Bild 12 %line 419 %%EndDocument EndEPSF grestore gsave BeginEPSF 161 MM 152 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 21 %line 429 %!PS-Adobe-3.0 EPSF-3.0 SE901-1, %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (SE901-1,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 219 MM 152 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 22 %line 439 %%EndDocument EndEPSF grestore gsave BeginEPSF 161 MM 108 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 23 %line 449 %!PS-Adobe-3.0 EPSF-3.0 SE901-3, %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (SE901-3,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 219 MM 108 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 24 %line 459 %%EndDocument EndEPSF grestore gsave BeginEPSF 161 MM 064 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 25 %line 469 %!PS-Adobe-3.0 EPSF-3.0 SE901-5, %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (SE901-5,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 219 MM 064 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 26 %line 479 %%EndDocument EndEPSF grestore gsave BeginEPSF 251 MM 020 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 27 %line 489 %!PS-Adobe-3.0 EPSF-3.0 SE901-7, %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (SE901-7,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 219 MM 020 MM translate 12 /Times-ISOL1 FS -9 MM -7 MM moveto ( ) show 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 28 %line 499 %%EndDocument EndEPSF grestore gsave BeginEPSF 219 MM 080 MM add 008 MM translate %80 MM Breite von TestStreifen 10 /Times-ISOL1 FS 53 MM 1 MM moveto () show 1 1 scale -77 21 MM sub -91 translate %%BeginDocument: Bild 29 Teststreifen Ueberlaenge %line 509 %%EndDocument EndEPSF grestore gsave BeginEPSF -0.0 MM -0.0 MM translate %xy-Verschiebung Rechteckrahmen nach innen% %%BeginDocument: Bild 30 %Rechteckrahmen %line 519 %!PS-Adobe-3.0 EPSF-3.0 Frame arround with Internet text DG02 20060101 %%BoundingBox: 0 0 598 845 %%EndProlog gsave /lanind 1 def /lantex [(G) (E) (S) (N) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showm {6 lanind eq {show} {pop} ifelse} bind def /lanindg where {pop /lanind1 lanindg def /lanind2 lanindg def} {/lanind1 0 def /lanind2 0 def} ifelse /colormg where {pop /colorm1 colormg def /colorm2 colormg def} {/colorm1 1 def /colorm2 1 def} ifelse /xcolorg where {pop /xcolor1 xcolorg def /xcolor2 xcolorg def} {/xcolor1 0 def /xcolor2 0 def} ifelse /xchartg where {pop /xchart1 xchartg def /xchart2 xchartg def} {/xchart1 0 def /xchart2 0 def} ifelse /lanind lanind1 def %lanind1 1 lanind2 {/lanind exch def %output showpage /colorm colorm1 def %colorm1 1 colorm2 {/colorm exch def %output showpage /xcolor xcolor1 def %xcolor1 1 xcolor2 {/xcolor exch def %output showpage /xchart xchart1 def %xchart1 1 xchart2 {/xchart exch def %output showpage /GSS$ where {pop /LSS$ GSS$ def} {/LSS$ (1) def} ifelse /GSC$ where {pop /LSC$ GSC$ def} {/LSC$ (N) def} ifelse /GSX$ where {pop /LSX$ GSX$ def} {/LSX$ (0) def} ifelse /GSY$ where {pop /LSY$ GSY$ def} {/LSY$ (0) def} ifelse /GEX$ where {pop /LEX$ GEX$ def} {/LEX$ (P.PS./PDF) def} ifelse /GEY$ where {pop /LEY$ GEY$ def} {/LEY$ (P.DAT) def} ifelse /IMES where {pop %/IMES IMES def } {/IMES 0 def} ifelse /i*ptrsc where {pop %/i*ptrsc i*ptrsc def } {/i*ptrsc 0 def} ifelse gsave /xchartg where {pop /xchart xchartg def} {/xchart 0 def} ifelse /scountg where {pop /scount scountg def} {/scount 1 def} ifelse /ISRL*ioG where {pop}{/ISRL*ioG 0 def} ifelse /ISIN*ioG where {pop}{/ISIN*ioG 0 def} ifelse /ISOU*ioG where {pop}{/ISOU*ioG 0 def} ifelse %xchart 0 eq {%beg if xchart=0 0 setgray 1.0 1.0 scale 0.0 MM 0.0 MM translate 0.15 MM setlinewidth /x 20 array def /y 20 array def /d 20 array def /x [000 296 296 000 002 294 294 002 005 291 291 005 %speziell 006 290 290 006 008 288 288 008 ] def /y [000 000 210 210 002 002 208 208 005 005 205 205 %speziell 006 006 204 204 008 008 202 202 ] def /d [060 017 -60 -17 058 015 -58 -15 056 013 -56 -13 054 011 -54 -11 052 009 -52 -09 ] def /xlu 017 MM def /ylu 017 MM def /xro 279 MM def /yro 193 MM def /xlo 017 MM def /ylo 193 MM def /xru 279 MM def /yru 017 MM def xlu 8 MM sub ylu moveto 16 MM 0 rlineto stroke xlu ylu 8 MM sub moveto 0 58 MM rlineto stroke xro 8 MM add yro moveto -58 MM 0 rlineto stroke xro yro 8 MM add moveto 0 -16 MM rlineto stroke xru 8 MM sub yru moveto 16 MM 0 rlineto stroke xru yru 8 MM sub moveto 0 16 MM rlineto stroke xlo 8 MM add ylo moveto -16 MM 0 rlineto stroke xlo ylo 8 MM add moveto 0 -16 MM rlineto stroke 1 2 7 {/i exch def %Zentrierkreise xlu ylu i MM 0 360 arc stroke xro yro i MM 0 360 arc stroke xru yru i MM 0 360 arc stroke xlo ylo i MM 0 360 arc stroke } for %i 12 4 16 {/i exch def /i0 i def %i=0,16 %0 4 16 {/i exch def /i0 i def %i=0,16 /i1 i0 1 add def /i2 i0 2 add def /i3 i0 3 add def i 16 eq {0.30 MM setlinewidth} {0.15 MM setlinewidth} ifelse 0 setgray x i0 get MM y i0 get MM moveto x i1 get MM y i1 get MM lineto x i2 get MM y i2 get MM lineto x i3 get MM y i3 get MM lineto x i0 get MM y i0 get MM lineto stroke i 16 eq {6 /Times-ISOL1 FS /x00 67 def /xdif 32 def /y0o 202.3 def /y0u 6.3 def /x0l 6.1 def /x0r 288 def /y00 22 def /ydif 32 def x00 xdif 0 mul add MM y0o MM moveto (V) show x00 xdif 0 mul add MM y0u MM moveto (C) show x00 xdif 1 mul add MM y0o MM moveto (L) show x00 xdif 1 mul add MM y0u MM moveto (M) show x00 xdif 2 mul add MM y0o MM moveto (O) show x00 xdif 2 mul add MM y0u MM moveto (Y) show x00 xdif 3 mul add MM y0o MM moveto (Y) show x00 xdif 3 mul add MM y0u MM moveto (O) show x00 xdif 4 mul add MM y0o MM moveto (M) show x00 xdif 4 mul add MM y0u MM moveto (L) show x00 xdif 5 mul add MM y0o MM moveto (C) show x00 xdif 5 mul add MM y0u MM moveto (V) show x0l MM y00 ydif 0 mul add MM moveto (V) show x0r MM y00 ydif 0 mul add MM moveto (C) show x0l MM y00 ydif 1 mul add MM moveto (L) show x0r MM y00 ydif 1 mul add MM moveto (M) show x0l MM y00 ydif 2 mul add MM moveto (O) show x0r MM y00 ydif 2 mul add MM moveto (Y) show x0l MM y00 ydif 3 mul add MM moveto (Y) show x0r MM y00 ydif 3 mul add MM moveto (O) show x0l MM y00 ydif 4 mul add MM moveto (M) show x0r MM y00 ydif 4 mul add MM moveto (L) show x0l MM y00 ydif 5 mul add MM moveto (C) show x0r MM y00 ydif 5 mul add MM moveto (V) show } if } for %i=0,16 0 1 10 {/j0 exch def /j1 j0 1 add def %j0 j0 0 eq {tzccmy0* setcmykcolor} if j0 1 eq {0 setgray} if j0 2 eq {tzmcmy0* setcmykcolor} if j0 3 eq {0 setgray} if j0 4 eq {tzycmy0* setcmykcolor} if j0 5 eq {0 setgray} if j0 6 eq {tzocmy0* setcmykcolor} if j0 7 eq {0 setgray} if j0 8 eq {tzlcmy0* setcmykcolor} if j0 9 eq {0 setgray} if j0 10 eq {tzvcmy0* setcmykcolor} if 12 4 16 {/i exch def /i0 i def %i=0,16 %0 4 16 {/i exch def /i0 i def %i=0,16 /i1 i0 1 add def /i2 i0 2 add def /i3 i0 3 add def i 16 eq {0.30 MM setlinewidth} {0.15 MM setlinewidth} ifelse x i0 get d i0 get add 16 j0 mul add MM y i0 get MM moveto x i0 get d i0 get add 16 j1 mul add MM y i0 get MM lineto stroke x i1 get MM y i1 get d i1 get add 16 j0 mul add MM moveto x i1 get MM y i1 get d i1 get add 16 j1 mul add MM lineto stroke x i2 get d i2 get add 16 j0 mul sub MM y i2 get MM moveto x i2 get d i2 get add 16 j1 mul sub MM y i2 get MM lineto stroke x i3 get MM y i3 get d i3 get add 16 j0 mul sub MM moveto x i3 get MM y i3 get d i3 get add 16 j1 mul sub MM lineto stroke } for %i=0,16 } for %j0 0.15 MM setlinewidth /s 7 MM def /s1 8 MM def /s5 36 MM def 16 1 20 {/j exch def /j0 j 16 sub def %j=16,20 /ix0 xlu 8 MM add j0 7 MM mul add def /iy0 ylu 8 MM sub def 0 1 3 {/ij exch def %ij=0,3 ij 0 eq {/ix0 xlu 8 MM add j0 7 MM mul add def /iy0 ylu 8 MM sub def} if ij 1 eq {/ix0 xru 43 MM sub j0 7 MM mul add def /iy0 yru 8 MM sub def} if ij 2 eq {/ix0 xlo 8 MM add j0 7 MM mul add def /iy0 ylo 1 MM add def} if ij 3 eq {/ix0 xro 43 MM sub j0 7 MM mul add def /iy0 yro 1 MM add def} if i*ptrsc 0 eq i*ptrsc 2 eq or {%i*ptrsc=0,2 cmy0* setcmykcolor j 16 eq {tzan j get dup dup 0 setcmykcolor ix0 0.5 MM sub iy0 0.5 MM sub s5 s1 rec fill} if tzan j get dup dup 0 setcmykcolor ix0 iy0 s s rec fill } if %i*ptrsc=0,2 i*ptrsc 1 eq i*ptrsc 3 eq or {%i*ptrsc=1,3 www* setrgbcolor j 16 eq {1 tzan j get 1 sub dup dup setrgbcolor %N ix0 0.5 MM sub iy0 0.5 MM sub s5 s1 rec fill} if 1 tzan j get sub dup dup setrgbcolor %N ix0 iy0 s s rec fill } if %i*ptrsc=1,3 i*ptrsc 4 eq i*ptrsc 5 eq or {%i*ptrsc=4,5 [/CIEBasedABC << %Farbraum und Grenzen fuer D65 /RangeABC [0 100 -128 127 -128 127] /DecodeABC [{16 add 116 div} bind {500 div} bind {200 div} bind] /MatrixABC [1 1 1 1 0 0 0 0 -1] /DecodeLMN [{dup 6 29 div ge {dup dup mul mul} {4 29 div sub 108 841 div mul} ifelse 0.9505 mul} bind {dup 6 29 div ge {dup dup mul mul} {4 29 div sub 108 841 div mul} ifelse} bind {dup 6 29 div ge {dup dup mul mul} {4 29 div sub 108 841 div mul} ifelse 1.0890 mul} bind] /WhitePoint [0.9505 1 1.089] %CIEXYZ fuer D65 >>] setcolorspace j 16 eq {tznLAB* 0 get tzwLAB* 0 get tznLAB* 0 get sub 0.25 j0 mul mul add tznLAB* 1 get tzwLAB* 1 get tznLAB* 1 get sub 0.25 j0 mul mul add tznLAB* 2 get tzwLAB* 2 get tznLAB* 2 get sub 0.25 j0 mul mul add setcolor %N ix0 0.5 MM sub iy0 0.5 MM sub s5 s1 rec fill} if tznLAB* 0 get tzwLAB* 0 get tznLAB* 0 get sub 0.25 j0 mul mul add tznLAB* 1 get tzwLAB* 1 get tznLAB* 1 get sub 0.25 j0 mul mul add tznLAB* 2 get tzwLAB* 2 get tznLAB* 2 get sub 0.25 j0 mul mul add setcolor %N ix0 iy0 s s rec fill } if %i*ptrsc=4,5 i*ptrsc 6 eq {%i*ptrsc=6 000n* setcmykcolor j 16 eq {0 0 0 tzan j get setcmykcolor ix0 0.5 MM sub iy0 0.5 MM sub s5 s1 rec fill} if 0 0 0 tzan j get setcmykcolor ix0 iy0 s s rec fill } if %i*ptrsc=6 i*ptrsc 7 eq {%i*ptrsc=7 w* setgray j 16 eq {1 tzan j get sub setgray ix0 0.5 MM sub iy0 0.5 MM sub s5 s1 rec fill} if 1 tzan j get sub setgray ix0 iy0 s s rec fill } if %i*ptrsc=7 } for %ij=0,3 } for %j=16,20 0 setgray 018 MM 008.2 MM moveto 6 /Times-Roman FS (-8) show 018 MM 006.2 MM moveto 6 /Times-Roman FS (-6) show 276 MM 008.2 MM moveto 6 /Times-Roman FS (-8) show 276 MM 006.2 MM moveto 6 /Times-Roman FS (-6) show 018 MM 202.2 MM moveto 6 /Times-Roman FS (-8) show 018 MM 204.2 MM moveto 6 /Times-Roman FS (-6) show 276 MM 202.2 MM moveto 6 /Times-Roman FS (-8) show 276 MM 204.2 MM moveto 6 /Times-Roman FS (-6) show 0 setgray 12 /Times-ISOL1 FS 61 MM 09 MM moveto (A: ) show (9 und 16stufige Farbreihen f\374r 10 Buntt\366ne) showde (9 and 16 step colour scales for 10 hues) showen (9 and 16 step colour scales for 10 hues) showes (9 and 16 step colour scales for 10 hues) showfr (9 and 16 step colour scales for 10 hues) showit (9 and 16 step colour scales for 10 hues) showjp (9 and 16 step colour scales for 10 hues) showm 61 MM 13 MM moveto (BAM\255Pr\374fvorlage SE90; Farbmetrik\255Systeme) showde (BAM\255test chart SE90; Colorimetric systems) showen (BAM\255test chart SE90; Colorimetric systems) showes (BAM\255test chart SE90; Colorimetric systems) showfr (BAM\255test chart SE90; Colorimetric systems) showit (BAM\255test chart SE90; Colorimetric systems) showjp (BAM\255test chart nSE90; Colorimetric systems) showm ISRL*ioG 0 eq { %ISRL*ioG=0 ISIN*ioG 0 eq {( ORS18) show} if ISIN*ioG 1 eq {( TLS00) show} if ISIN*ioG 2 eq {( DRSXX) show} if ISIN*ioG 3 eq {( TLS18) show} if ISIN*ioG 4 eq {( NLS00) show} if ISIN*ioG 5 eq {( NRS18) show} if ISIN*ioG 6 eq {( SRS18) show} if ISIN*ioG 7 eq {( TLS70) show} if ISOU*ioG 0 eq {( & ORS18) show} if ISOU*ioG 1 eq {( & TLS00) show} if ISOU*ioG 2 eq {( & DRSXX) show} if ISOU*ioG 3 eq {( & TLS18) show} if ISOU*ioG 4 eq {( & NLS00) show} if ISOU*ioG 5 eq {( & NRS18) show} if ISOU*ioG 6 eq {( & SRS18) show} if ISOU*ioG 7 eq {( & TLS70) show} if } if %ISRL*ioG=0 ISRL*ioG 1 eq { %ISRL*ioG=1 ISIN*ioG 0 eq {( TLS00) show} if ISIN*ioG 1 eq {( TLS06) show} if ISIN*ioG 2 eq {( TLS11) show} if ISIN*ioG 3 eq {( TLS18) show} if ISIN*ioG 4 eq {( TLS27) show} if ISIN*ioG 5 eq {( TLS38) show} if ISIN*ioG 6 eq {( TLS52) show} if ISIN*ioG 7 eq {( TLS70) show} if ISOU*ioG 0 eq {( & TLS00) show} if ISOU*ioG 1 eq {( & TLS06) show} if ISOU*ioG 2 eq {( & TLS11) show} if ISOU*ioG 3 eq {( & TLS18) show} if ISOU*ioG 4 eq {( & TLS27) show} if ISOU*ioG 5 eq {( & TLS38) show} if ISOU*ioG 6 eq {( & TLS52) show} if ISOU*ioG 7 eq {( & TLS70) show} if } if %ISRL*ioG=1 ISRL*ioG 2 eq { %ISRL*ioG=2 ISIN*ioG 0 eq {( OLS00) show} if ISIN*ioG 1 eq {( OLS06) show} if ISIN*ioG 2 eq {( OLS11) show} if ISIN*ioG 3 eq {( OLS18) show} if ISIN*ioG 4 eq {( OLS27) show} if ISIN*ioG 5 eq {( OLS38) show} if ISIN*ioG 6 eq {( OLS52) show} if ISIN*ioG 7 eq {( OLS70) show} if ISOU*ioG 0 eq {( & OLS00) show} if ISOU*ioG 1 eq {( & OLS06) show} if ISOU*ioG 2 eq {( & OLS11) show} if ISOU*ioG 3 eq {( & OLS18) show} if ISOU*ioG 4 eq {( & OLS27) show} if ISOU*ioG 5 eq {( & OLS38) show} if ISOU*ioG 6 eq {( & OLS52) show} if ISOU*ioG 7 eq {( & OLS70) show} if } if %ISRL*ioG=2 %xchart cvishow %1 setgray %start white and unvisible %140 MM 13 MM moveto %lanindg 0 eq {(Stufe: ) show}{(Step: ) show} ifelse %LSC$ (N) eq {(S1) show} {(S2) show} ifelse %0 setgray %end white and unvisible 172 MM 13 MM moveto (input: ) show 12 /Times-Italic FS (cmy0* setcmykcolor) show 12 /Times-ISOL1 FS 172 MM 9 MM moveto (output: ) show 12 /Times-Italic FS LSC$ (N) eq { (no change compared to input) show } if %1 setgray %start white and unvisible LSC$ (S) eq { (Startup (S) data dependend) show } if LSC$ (F) eq { 12 /Times-Italic FS i*ptrsc 0 eq {(cmy0* / 000n* setcmykcolor) show} if i*ptrsc 1 eq {(olv* setrgbcolor / w* setgray) show} if i*ptrsc 2 eq {(cmy0* / nnn0* setcmykcolor) show} if i*ptrsc 3 eq {(olv* / www* setrgbcolor) show} if i*ptrsc 4 eq {(lab* setcolor) show} if i*ptrsc 5 eq {(LAB* setcolor) show} if i*ptrsc 6 eq {(000n* setcmykcolor) show} if i*ptrsc 7 eq {(w* setgray) show} if } if %0 setgray %end white and unvisible 12 /Times-ISOL1 FS 62 MM 198.5 MM moveto (www.ps.bam.de/SE90/L90) show LSS$ show (00) show LSC$ show LEX$ show %1 setgray %start white and unvisible (; ) show LSC$ (N) eq { (Start\255Ausgabe) showde (start output) showen (start output) showes (start output) showfr (start output) showit (start output) showjp (start output) showm } if LSC$ (C) eq { (Start\255Ausgabe) showde (start output) showen (start output) showes (start output) showfr (start output) showit (start output) showjp (start output) showm } if LSC$ (F) eq { (Linearisierte\255Ausgabe) showde (linearized output) showen (linearized output) showes (linearized output) showfr (linearized output) showit (linearized output) showjp (linearized output) showm } if 62 MM 194 MM moveto LSC$ (N) eq LSC$ (C) eq or { (N: Keine Ausgabe\255Linearisierung (OL) in Datei (F), Startup (S), Ger\344t (D)) showde (N: No Output Linearization (OL) data in File (F), Startup (S) or Device (D)) showen (N: No Output Linearization (OL) data in File (F), Startup (S) or Device (D)) showes (N: No Output Linearization (OL) data in File (F), Startup (S) or Device (D)) showfr (N: No Output Linearization (OL) data in File (F), Startup (S) or Device (D)) showit (N: No Output Linearization (OL) data in File (F), Startup (S) or Device (D)) showjp (N: No Output Linearization (OL) data in File (F), Startup (S) or Device (D)) showm } {LSC$ show (: ) show (Ausgabe\255Linearisierung (OL\255Daten) ) showde (Output Linearization (OL) data ) showen (Output Linearization (OL) data ) showes (Output Linearization (OL) data ) showfr (Output Linearization (OL) data ) showit (Output Linearization (OL) data ) showjp (Output Linearization (OL) data ) showm (SE90/L90) show LSS$ show (00) show LSC$ show LEY$ show } ifelse LSC$ (F) eq { ( in der Datei (F)) showde ( in File (F)) showen ( in File (F)) showes ( in File (F)) showfr ( in File (F)) showit ( in File (F)) showjp ( in File (F)) showm } if LSC$ (S) eq { ( im Distiller Startup (S) Directory) showde ( in Distiller Startup (S) Directory) showen ( in Distiller Startup (S) Directory) showes ( in Distiller Startup (S) Directory) showfr ( in Distiller Startup (S) Directory) showit ( in Distiller Startup (S) Directory) showjp ( in Distiller Startup (S) Directory) showm } if LSC$ (D) eq { ( in PostScript Device (D)) showde ( in PostScript Device (D)) showen ( in PostScript Device (D)) showes ( in PostScript Device (D)) showfr ( in PostScript Device (D)) showit ( in PostScript Device (D)) showjp ( in PostScript Device (D)) showm } if LSC$ (T) eq { ( von Distiller Startup (S) Directory) showde ( of Distiller Startup (S) Directory) showen ( of Distiller Startup (S) Directory) showes ( of Distiller Startup (S) Directory) showfr ( of Distiller Startup (S) Directory) showit ( of Distiller Startup (S) Directory) showjp ( of Distiller Startup (S) Directory) showm } if LSC$ (E) eq { ( von PostScript Device (D)) showde ( of PostScript Device (D)) showen ( of PostScript Device (D)) showes ( of PostScript Device (D)) showfr ( of PostScript Device (D)) showit ( of PostScript Device (D)) showjp ( of PostScript Device (D)) showm } if %0 setgray %end white and unvisible 16 MM 185 MM moveto -90 rotate (Siehe \344hnliche Dateien: ) showde (See for similar files: ) showen (See for similar files: ) showes (See for similar files: ) showfr (See for similar files: ) showit (See for similar files: ) showjp (See for similar files: ) showm (http://www.ps.bam.de/SE90/) show 90 rotate 12 MM 185 MM moveto -90 rotate (Technische Information: ) showde (Technical information: ) showen (Informaci\363n t\351cnica en: ) showes (Technical information: ) showfr (Technical information: ) showit (Technical information: ) showjp (Technical information: ) showm (http://www.ps.bam.de) show 90 rotate 12 MM 103 MM moveto -90 rotate (Version 2.1, io=0,) show LSC$ (N) eq {(0) show} if LSC$ (S) eq {(0?) show} if LSC$ (D) eq {(0?) show} if LSC$ (F) eq {i*ptrsc cvishow IMES 0 eq {(, CIELAB) show} {(, CIEXYZ) show} ifelse } if 90 rotate 281 MM 185 MM moveto -90 rotate (BAM\255Registrierung: 20060101\255SE90/L90) showde (BAM registration: 20060101\255SE90/L90) showen (BAM registration: 20060101\255SE90/L90) showes (BAM registration: 20060101\255SE90/L90) showfr (BAM registration: 20060101\255SE90/L90) showit (BAM registration: 20060101\255SE90/L90) showjp (BAM registration: 20060101\255SE90/L90) showm LSS$ show (00) show LSC$ show LEX$ show 90 rotate 281 MM 74 MM moveto -90 rotate (BAM\255Material: Code=rha4ta) showde (BAM material: code=rha4ta) showen (BAM material: code=rha4ta) showes (BAM material: code=rha4ta) showfr (BAM material: code=rha4ta) showit (BAM material: code=rha4ta) showjp (BAM material: code=rha4ta) showm 90 rotate 277 MM 185 MM moveto -90 rotate /cvishow {cvi 6 string cvs show} def /cvsshow1 {10 mul cvi 0.1 mul 7 string cvs show} def ( Anwendung f\374r Beurteilung und Messung von Drucker- oder Monitorsystemen) showde ( application for evaluation and measurement of printer or monitor systems) showen ( application for evaluation and measurement of printer or monitor systems) showes ( application for evaluation and measurement of printer or monitor systems) showfr ( application for evaluation and measurement of printer or monitor systems) showit ( application for evaluation and measurement of printer or monitor systems) showjp ( application for evaluation and measurement of printer or monitor systems) showm IMES 1 eq LSC$ (N) ne and { %IMES=1 (, Yr=) show Yre cvsshow1 (, XYZ) show } if %IMES=1 90 rotate /i0 8 def /i1 i0 1 add def /i2 i0 2 add def /i3 i0 3 add def 0.30 MM setlinewidth 0 setgray x i0 get MM y i0 get MM moveto x i1 get MM y i1 get MM lineto x i2 get MM y i2 get MM lineto x i3 get MM y i3 get MM lineto x i0 get MM y i0 get MM lineto stroke %} if %end if xchart=0 /xlu1 013 MM def /ylu1 010 MM def /xro1 283 MM def /yro1 200 MM def /xlo1 013 MM def /ylo1 200 MM def /xru1 283 MM def /yru1 010 MM def xlu1 4 MM sub ylu1 moveto 8 MM 0 rlineto stroke xlu1 ylu1 4 MM sub moveto 0 8 MM rlineto stroke xro1 4 MM add yro1 moveto -8 MM 0 rlineto stroke xro1 yro1 4 MM add moveto 0 -8 MM rlineto stroke xru1 4 MM sub yru1 moveto 8 MM 0 rlineto stroke xru1 yru1 4 MM sub moveto 0 8 MM rlineto stroke xlo1 4 MM add ylo1 moveto -8 MM 0 rlineto stroke xlo1 ylo1 4 MM add moveto 0 -8 MM rlineto stroke %} for %output with xchart end %} for %output with colorm end %} for %output with xcolor end %} for %output with lanind end %%Trailer %%EndDocument EndEPSF grestore gsave showpage grestore } for %end for xchartg=xchartg1,xchartg2 } for %end for pcountg=pcountg1,pcount2g } for %end for scountg=scountg1,scount2g %%Trailer