%!PS-Adobe-3.0 EPSF-3.0 AGH70-1N.EPS %%BoundingBox: 70 85 395 206 %START PDFDE011.EPS /pdfmark07 where {pop} {userdict /pdfmark07 /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: farbe.li.tu-berlin.de/AGH7/AGH7.HTM) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://farbe.li.tu-berlin.de http://130.149.60.45/~farbmetrik) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@mac.com) /CreationDate (D:2020090112000) /ModDate (D:2020090112000) /DOCINFO pdfmark07 [ /View [ /Fit ] /DOCVIEW pdfmark07 %END PDFDE011 % !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 /TY {100 /Times-ISOL1 FS} bind def /TX {130 /Times-ISOL1 FS} bind def /TV {170 /Times-ISOL1 FS} bind def /TS {200 /Times-ISOL1 FS} bind def /TK {250 /Times-ISOL1 FS} bind def /TM {300 /Times-ISOL1 FS} bind def /TG {350 /Times-ISOL1 FS} bind def /TIY {100 /TimesI-ISOL1 FS} bind def /TIX {130 /TimesI-ISOL1 FS} bind def /TIV {170 /TimesI-ISOL1 FS} bind def /TIS {200 /TimesI-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 /TBY {100 /TimesB-ISOL1 FS} bind def /TBX {130 /TimesB-ISOL1 FS} bind def /TBV {170 /TimesB-ISOL1 FS} bind def /TBS {200 /TimesB-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 /TBIY {100 /TimesBI-ISOL1 FS} bind def /TBIX {130 /TimesBI-ISOL1 FS} bind def /TBIV {170 /TimesBI-ISOL1 FS} bind def /TBIS {200 /TimesBI-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 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def /A4quer {598 0 translate 90 rotate} def /LABN [(R) (Y) (G) (C) (B) (M) (R) (N0) (W0) (N1) (W1) (Z1)] def /XD65 95.05 def /YD65 100.00 def /ZD65 108.90 def /xanD65 XD65 XD65 YD65 add ZD65 add div def /yanD65 YD65 XD65 YD65 add ZD65 add div def %60=12*5 for 12 colours and 5 values XYZxy or LCh*(ab) or (AB) /LCh*60rc 60 array def /XYZ*60rc 60 array def /LCh*60rcn 60 array def /XYZ*60rcn 60 array def /LCh*60ra 60 array def /XYZ*60ra 60 array def /LCh*60la 60 array def /XYZ*60la 60 array def /LCh*60na 60 array def /XYZ*60na 60 array def %******************************************************************* /proz_XYZ_LCh* {%BEG proz_XYZ_LCh* %input XYZaref, output LChab*ref, same name in any case %output LabC*h (xchart8=0) or LABC*h (xchart8=1) /XQ Xaref XD65 div def /YQ Yaref YD65 div def /ZQ Zaref 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 /L*ref YQ 0.008856 lt {903.3 YQ mul} {YQ 0.33333333 exp 116 mul 16 sub} ifelse def xchart8 0 eq {%xchart8=0 LabCh*-CIELAB /a*ref 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 def /b*ref 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 def } if %xchart8=0 LabCh*-CIELAB xchart8 1 eq {%xchart8=1 LabCh*=LABCh* /a*ref XQ YQ sub 250 mul def /b*ref YQ ZQ sub 100 mul def } if %xchart8=1 LabCh*=LABCh* /C*ref a*ref dup mul b*ref dup mul add sqrt def /h*ref b*ref a*ref 0.00001 add atan def C*ref 0.05 le {/h*ref 0 def} if } bind def %END proz_XYZ_LCh* %******************************************************************* /proz_LCh*_XYZ {%BEG proz_LCh*_XYZ %input LCh*ref of LabC*h (xchart8=0) or L*ABCh (xchart8=1) %output XYZref, xyanref xchart8 0 eq {%xchart8=0 /DecodeXYZ* {dup 6 29 div ge {dup dup mul mul} {4 29 div sub 108 841 div mul} ifelse} bind def /a*ref C*ref h*ref cos mul def /b*ref C*ref h*ref sin mul def /X* {L*ref 16 add 116 div a*ref 500 div add} bind def /Y* {L*ref 16 add 116 div} bind def /Z* {L*ref 16 add 116 div b*ref 200 div sub} bind def /Xref X* DecodeXYZ* XD65 mul def /Yref Y* DecodeXYZ* YD65 mul def /Zref Z* DecodeXYZ* ZD65 mul def } if %xchart8=0 xchart8 1 eq {%xchart8=1 /DecodeXYZ* {dup 6 29 div ge {dup dup mul mul} {4 29 div sub 108 841 div mul} ifelse} bind def /Y* {L*ref 16 add 116 div} bind def /Yref Y* DecodeXYZ* YD65 mul def /a*ref C*ref h*ref cos mul def /b*ref C*ref h*ref sin mul def /Xref a*ref 250 div XD65 mul Yref XD65 mul YD65 div add def /Zref Yref ZD65 mul YD65 div b*ref 100 div ZD65 mul sub def } if %xchart8=1 Xref 0.01 lt {/Xref 0.01 def} if Yref 0.01 lt {/Yref 0.01 def} if Zref 0.01 lt {/Zref 0.01 def} if /SUM Xref Yref add Zref add 0.0001 add def /xanref Xref SUM div def /yanref Yref SUM div def } bind def %END proz_LCh*_XYZ %************************************************************************* /proz_XYZnw_D65_xchart7_definition {%BEG proz_XYZnw_D65_xchart7_definition % achromatic colours /XLWD65100 95.04 def /YLWD65100 100.00 def /ZLWD65100 108.88 def /XLN001 XLWD65100 100 div def /YLN001 YLWD65100 100 div def /ZLN001 ZLWD65100 100 div def /YrN 0.01 def /Xnref YrN XLN001 mul def /Ynref YrN def /Znref YrN ZLN001 mul def /Xtref XYZnref_ISO9241-306 xchart7 3 mul 0 add get def /Ytref XYZnref_ISO9241-306 xchart7 3 mul 1 add get def /Ztref XYZnref_ISO9241-306 xchart7 3 mul 2 add get def /YNil Ytref def /YNil001 YNil 100 div def YNil001 6 29 div 3 exp ge {/FYYn YNil001 0.3333 exp def} {/FYYn 841 108 div YNil001 mul 4 29 div add def} ifelse /L*Nil 116 FYYn mul 16 sub def } bind def %END proz_XYZnw_D65_xchart7_definition %************************************************************** /proz_XYZ*5in_XYZ*5ou {%BEG proz_XYZ*5in_XYZ*5ou %for 12 colours x 5 components %input XYZ*5in, %output LCh*5ou %only for xchart5=1 and for 12 colours in 7 hue planes and 2 achromatic %normalization to Ynor=18 xchart9 1 eq {%xchart9=1 /Xnor XD65 0.18 mul def /Ynor YD65 0.18 mul def /Znor ZD65 0.18 mul def /Xfac1 Xnor Xnor Xtref add div def /Yfac1 Ynor Ynor Ytref add div def /Zfac1 Znor Znor Ztref add div def XYZ*5ou i120 XYZ*5in i120 get Xnor sub Xfac1 mul Xnor add put XYZ*5ou i121 XYZ*5in i121 get Ynor sub Yfac1 mul Ynor add put XYZ*5ou i122 XYZ*5in i122 get Znor sub Zfac1 mul Znor add put } if %xchart9=1 %normalization to Ynor=88.6 xchart9 0 eq {%xchart9=0 /Xnor XD65 0.886 mul def /Ynor YD65 0.886 mul def /Znor ZD65 0.886 mul def /Xfac2 Xnor Xtref sub Xnor div def /Yfac2 Ynor Ytref sub Ynor div def /Zfac2 Znor Ztref sub Znor div def XYZ*60rcn i120 XYZ*60rc i120 get Xfac2 mul Xtref add put XYZ*60rcn i121 XYZ*60rc i121 get Yfac2 mul Ytref add put XYZ*60rcn i122 XYZ*60rc i122 get Zfac2 mul Ztref add put } if %xchart9=0 } bind def %END proz_XYZ*60rc_XYZ*60rcn %*********************************************************** /proz_sRGB_rgb*36X_definitions {%BEG proz_sRGB_rgb*36X_definitions /XYZ*WCGa_d_0000_0886 36 array def %d, Yw=88,6, Yn=2,50 /XYZ*WCGa_d_0000_0886 [056.43 023.27 000.00 %0 Rd %ANH9_Y10-7N,201003, fehl? Zmin=2.72 069.24 083.34 002.48 %1 Yd 012.81 060.07 002.48 %2 Gd 027.77 066.32 096.48 %3 Cd 014.96 005.25 094.00 %4 Bd 071.39 028.52 094.00 %5 Md 056.43 023.27 000.00 %6 Rd %for hue circle 000.01 000.01 000.01 %7 N0 084.21 088.60 096.48 %8 W0 000.01 000.01 000.01 %9 N1 095.05 100.00 108.90 %10 W1 017.11 18.00 19.60 %11 Z1 ] def /XYZ*sRGB_d_0000_0886 36 array def %d, Yw=88,60, Yn=0,00 /XYZ*sRGB_d_0000_0886 [036.54 018.84 001.71 %0 Rd %ANH9_Y10-3N,201012 076.99 092.78 013.85 %1 Yd 035.76 071.52 011.91 %2 Gd 053.81 078.74 106.98 %3 Cd 018.05 007.22 095.06 %4 Bd 059.28 028.48 096.99 %5 Md 036.54 018.84 001.71 %6 Rd %for hue circle 000.01 000.01 000.01 %7 N0 084.21 088.60 096.48 %8 W0 000.01 000.01 000.01 %9 N1 095.05 100.00 108.90 %10 W1 017.11 18.00 19.60 %11 Z1 ] def /XYZ*Ostw_d_0000_1000 36 array def %m, Yw=100,00, Yn=0,00 /XYZ*Ostw_d_0000_1000 [062.40 041.75 000.76 %0 Rm 561_405 589 %ANI6_Y10-7N,201012 076.68 082.00 001.27 %1 Ym 520_520c 569 023.83 065.32 015.00 %2 Gm 475_473 528c 032.63 058.24 108.12 %3 Cm 405_561 483 018.36 017.99 107.61 %4 Bm 519c-519 471 071.20 034.67 093.88 %5 Mm 573_475 528c 062.40 041.75 000.76 %6 Rm 561_405 589 %for hue circle 000.01 000.01 000.01 %7 N0 095.05 100.00 108.90 %8 W0 000.01 000.01 000.01 %9 N1 107.29 112.88 122.24 %10 W1 19.31 20.31 22.00 %11 Z1 ] def /XYZ*Offs_d_0000_0886 36 array def %d, Yw=88,60, Yn=0,00 /XYZ*Offs_d_0000_0886 [029.01 016.24 004.26 %0 Rd %ANJ7_Y11-1N,201012 063.74 072.69 008.27 %1 Yd 008.53 020.05 009.58 %2 Gd 018.74 026.27 069.02 %3 Cd 006.22 004.51 022.65 %4 Bd 032.46 016.95 023.04 %5 Md 029.01 016.24 004.26 %6 Rd %for hue circle 000.01 000.01 000.01 %7 N0 084.21 088.60 096.48 %8 W0 000.01 000.01 000.01 %9 N1 095.05 100.00 108.90 %10 W1 017.11 18.00 19.60 %11 Z1 ] def /rgb*36X 36 array def /rgb*36X [1 0 0 %0 1 1 0 %1 0 1 0 %2 0 1 1 %3 0 0 1 %4 1 0 1 %5 1 0 0 %6 0.00 0.00 0.00 %7 N0 1.00 1.00 1.00 %8 W0 0.00 0.00 0.00 %9 N1 1.13 1.13 1.13 %10 W1 0.18 0.18 0.18 %11 Z1 ] def /tex*36X 36 array def /tex*36X [(Rot) (red) (R) %0 (Gelb) (yellow) (Y) %1 (Gr\374n) (green) (G) %2 (Cyan) (cyan) (C) %3 (Blau) (blue) (B) %4 (Magenta) (magenta) (M) %5 (Rot) (red) (R) %6 (Schwarz) (black) (N) %7 (Wei\337) (white) (W) %8 (Schwarz) (black) (N1) %9 (Wei\337) (white) (W1) %10 (Grau) (grey) (Z1) %11 ] def /XYZnref_ISO9241-306 24 array def /XYZnref_ISO9241-306 [ %XYZnref wit contrast step according to ISO 9241-306:2018 00.01 00.01 00.01 %0 0288:1 00.60 00.63 00.69 %1 0144:1 01.20 01.26 01.37 %2 0072:1 02.40 02.52 02.74 %3 0036:1 %standard 04.79 05.04 05.49 %4 0018:1 08.58 10.08 10.98 %5 0009:1 19.16 20.16 21.95 %6 04,5:1 38.32 40.32 43.90 %7 2,25:1 ] def /Ynref_ISO9241-306 8 array def 0 1 7 {/i exch def %i=0,7 /i31 i 3 mul 1 add def Ynref_ISO9241-306 i XYZnref_ISO9241-306 i31 get put } for %i=0,7 0 1 11 {/sISO exch def /i30 sISO 3 mul def /i31 i30 1 add def /i32 i30 2 add def /i50 sISO 5 mul def /i51 i50 1 add def /i52 i50 2 add def /i53 i50 3 add def /i54 i50 4 add def xchart4 0 eq {%xchart4=0 XYZ*60rc i50 XYZ*sRGB_d_0000_0886 i30 get put XYZ*60rc i51 XYZ*sRGB_d_0000_0886 i31 get put XYZ*60rc i52 XYZ*sRGB_d_0000_0886 i32 get put } if %xchart4=0 xchart4 1 eq {%xchart4=1 XYZ*60rc i50 XYZ*WCGa_d_0000_0886 i30 get put XYZ*60rc i51 XYZ*WCGa_d_0000_0886 i31 get put XYZ*60rc i52 XYZ*WCGa_d_0000_0886 i32 get put } if %xchart4=1 xchart4 2 eq {%xchart4=2 XYZ*60rc i50 XYZ*Offs_d_0000_0886 i30 get put XYZ*60rc i51 XYZ*Offs_d_0000_0886 i31 get put XYZ*60rc i52 XYZ*Offs_d_0000_0886 i32 get put } if %xchart4=2 xchart4 3 eq {%xchart4=3 XYZ*60rc i50 XYZ*Ostw_d_0000_1000 i30 get 0.8860 mul put XYZ*60rc i51 XYZ*Ostw_d_0000_1000 i31 get 0.8860 mul put XYZ*60rc i52 XYZ*Ostw_d_0000_1000 i32 get 0.8860 mul put } if %xchart4=3 /SUM XYZ*60rc i50 get XYZ*60rc i51 get add XYZ*60rc i52 get add 0.0001 add def XYZ*60rc i53 XYZ*60rc i50 get SUM div put XYZ*60rc i54 XYZ*60rc i51 get SUM div put %will be replaced, if xchart5=1 XYZ*60rcn i50 XYZ*60rc i50 get put XYZ*60rcn i51 XYZ*60rc i51 get put XYZ*60rcn i52 XYZ*60rc i52 get put XYZ*60rcn i53 XYZ*60rc i53 get put XYZ*60rcn i54 XYZ*60rc i54 get put } for %i=0,11 } bind def %END proz_sRGB_rgb*36X_definitions %*************************************************************** /proz_out_text_ANW_definition {%BEG proz_out_text_ANW_definition %loop for maximal 5 colours +N +W 0 1 2 {/j exch def %j=0,2 %three components /i3j xchartl 3 mul j add def rgb*3A j rgb*36X i3j get put tex*3A j tex*36X i3j get put } for %j=0,2 0 1 4 {/j exch def %j=0,4 %three components /i5j xchartl 5 mul j add def XYZ*5A j XYZ*60rc i5j get put LCh*5A j LCh*60 i5j get put XYZ*5An j XYZ*60rcn i5j get put LCh*5An j LCh*60n i5j get put } for %j=0,4 0 1 2 {/i exch def %i=0,2 rgb*3N i rgb*36X i 21 add get put %8x3 tex*3N i tex*36X i 21 add get put rgb*3W i rgb*36X i 24 add get put %9x3 tex*3W i tex*36X i 24 add get put } for %i=0,2 0 1 4 {/i exch def %i=0,4 XYZ*5N i XYZ*60rc i 35 add get put %8x5 LCh*5N i LCh*60 i 35 add get put XYZ*5W i XYZ*60rc i 40 add get put %9x5 LCh*5W i LCh*60 i 40 add get put XYZ*5Nn i XYZ*60rcn i 35 add get put %8x5 LCh*5Nn i LCh*60n i 35 add get put XYZ*5Wn i XYZ*60rcn i 40 add get put %9x5 LCh*5Wn i LCh*60n i 40 add get put } for %i=0,4 } bind def %END proz_out_text_ANW_definition %*********************************************************************** /cviht {dup 0 ge {0.49 add}{0.49 sub} ifelse cvi} def /cvishow {dup 0 ge {0.5 add} {0.5 sub} ifelse cvi 6 string cvs show} def /cvsshow1 {dup 0 ge {0.05 add} {0.05 sub} ifelse 10 mul cvi 0.1 mul 7 string cvs show} def /cvsshow2 {dup 0 ge {0.005 add} {0.005 sub} ifelse 100 mul cvi 0.01 mul 7 string cvs show} def /cvsshow3 {dup 0 ge {0.0005 add} {0.0005 sub} ifelse 1000 mul cvi 0.001 mul 7 string cvs show} def %/tspace {dup abs 1.0 le {( ) show} if % dup dup -1.0 le exch -10 gt and {( ) show} if % dup dup 1.0 gt exch 10 lt and {( ) show} if % dup dup 1.0 gt exch 10 ge and {( ) show} if % } bind def /tspace {} bind def /trushow {tspace 0.005 add 100 mul truncate 100 div 10 string cvs show} bind def /troshow {0.005 add 100 mul truncate 100 div 10 string cvs show} bind def /trushow4 {0.00005 add 10000 mul truncate 10000 div 10 string cvs show} bind def %%EndProlog gsave %LANINDL2.EPS START 20000505 /lanind 0 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {3 lanind eq {show} {pop} ifelse} bind def /showfr {2 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 /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def} {/lanind1 0 def /lanind2 0 def} ifelse /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def} {/xcolor1 0 def /xcolor2 0 def} ifelse /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def} {/xchart1 0 def /xchart2 0 def} ifelse /lanind lanind1 def %lanind1 1 lanind2 {/lanind 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 gsave %LANINDL2 END gsave /xchart4 0 def %0: sRGB, 1: WCGa 3: Offs, 4:Ostw /xchart6 0 def %0: LCh*-XYZ, 1: XYZ-components /xchart7 0 def %0 .. 7 for contrast steps /xchart8 1 def %0: LabC*h, 1: L*ABCh /xchart9 0 def %0: Yw=89, 1: Yz=18 %produces XYZ*60rc and XYZ*60rcn proz_sRGB_rgb*36X_definitions %uses XYZ*60rc proz_XYZnw_D65_xchart7_definition /ISYSTEM 1 def /xchartl xchart1 def /xchartl 1 def gsave /xchart xchartl xchartl 3 idiv 3 mul sub def /xcolor xchartl 3 idiv def %start with XYZ_TLS00 for L*N=0 0 1 11 {/sISO exch def /i30 sISO 3 mul def /i31 i30 1 add def /i32 i30 2 add def /i50 sISO 5 mul def /i51 i50 1 add def /i52 i50 2 add def /i53 i50 3 add def /i54 i50 4 add def /Xaref XYZ*60rc i50 get def /Yaref XYZ*60rc i51 get def /Zaref XYZ*60rc i52 get def %input XYZaref, output LChab*ref, same name in any case %output LabC*h (xchart8=0) or LABC*h (xchart8=1) proz_XYZ_LCh* LCh*60rc i50 L*ref put LCh*60rc i51 C*ref put LCh*60rc i52 h*ref put LCh*60rc i53 a*ref put LCh*60rc i54 b*ref put } for %i=0,11 /jN 07 5 mul def /L*N LCh*60rc jN get def /A*N LCh*60rc jN 1 add get def /B*N LCh*60rc jN 2 add get def /jW 08 5 mul def /L*W LCh*60rc jW get def /A*W LCh*60rc jW 1 add get def /B*W LCh*60rc jW 2 add get def /YN XYZ*60rc jN 1 add get def % achromatic colours /XLWD65100 95.04 def /YLWD65100 100.00 def /ZLWD65100 108.88 def /XLW089 XYZ*60rc 24 get def /YLW089 XYZ*60rc 25 get def /ZLW089 XYZ*60rc 26 get def /XLN001 XLWD65100 100 div def /YLN001 YLWD65100 100 div def /ZLN001 ZLWD65100 100 div def 4 /Times-ISOL1 FS 72 86 moveto ( AGH70-1N, ) show 72 90 translate 0.01 MM dup scale /xwide 11350 def /ywide 04000 def 15 setlinewidth 1 setgray 0 0 moveto xwide 0 rlineto 0 ywide rlineto xwide neg 0 rlineto closepath fill 0 setgray 0 0 moveto xwide 0 rlineto 0 ywide rlineto xwide neg 0 rlineto closepath stroke /xposi 13 array def /xposi [%BEG xposi %0 1 2 3 4 5 6 7 8 9 10 11 12 %r g b L* C* h a* b* X Y Z x y 0800 1400 2000 2600 3500 4500 5200 6200 7200 8000 8800 9600 10400 ] def %xposi 0 1 11 {/i exch def /i50 i 5 mul def /i51 i 5 mul 1 add def /i52 i 5 mul 2 add def /i53 i 5 mul 3 add def /i54 i 5 mul 4 add def LCh*60ra i50 LCh*60rc i50 get put LCh*60ra i51 LCh*60rc i51 get put LCh*60ra i52 LCh*60rc i52 get put LCh*60ra i53 LCh*60rc i53 get put LCh*60ra i54 LCh*60rc i54 get put XYZ*60ra i50 XYZ*60rc i50 get put XYZ*60ra i51 XYZ*60rc i51 get put XYZ*60ra i52 XYZ*60rc i52 get put XYZ*60ra i53 XYZ*60rc i53 get put XYZ*60ra i54 XYZ*60rc i54 get put } for %i=0,11 /Xwref089 XYZ*60ra 40 get def /Ywref089 XYZ*60ra 41 get def /Zwref089 XYZ*60ra 42 get def /YrN 0.01 def /Xnref089 YrN XLN001 mul def /Ynref089 YrN def /Znref089 YrN ZLN001 mul def 0 1 11 {/i exch def /i50 i 5 mul def /i51 i 5 mul 1 add def /i52 i 5 mul 2 add def /i53 i 5 mul 3 add def /i54 i 5 mul 4 add def XYZ*60na i50 XYZ*60ra i50 get Xnref089 sub put XYZ*60na i51 XYZ*60ra i51 get Ynref089 sub put XYZ*60na i52 XYZ*60ra i52 get Znref089 sub put /SUM XYZ*60na i50 get XYZ*60na i51 get add XYZ*60na i52 get add 0.0001 add def XYZ*60na i53 XYZ*60na i50 get SUM div put XYZ*60na i54 XYZ*60na i51 get SUM div put /Xaref XYZ*60na i50 get def /Yaref XYZ*60na i51 get def /Zaref XYZ*60na i52 get def %input XYZaref, output LChab*ref, same name in any case %output LabC*h (xchart8=0) or LABC*h (xchart8=1) proz_XYZ_LCh* LCh*60na i50 L*ref put LCh*60na i51 C*ref put LCh*60na i52 h*ref put LCh*60na i53 a*ref put LCh*60na i54 b*ref put } for %i=0,11 /CLab* 14 array def /CL*AB 14 array def /CLnam 14 array def % 0 1 2 3 4 5 6 7 8 9 10 11 12 /CLab* [( r) (g) (b) (L*) (C*) (h) (a*) (b*) (X) (Y) (Z) (x) (y)] def /CL*AB [( r) (g) (b) (L*) (C) (h) (A) (B) (X) (Y) (Z) (x) (y)] def /ILab* 14 array def /IL*AB 14 array def /ILind 14 array def % 0 1 2 3 4 5 6 7 8 9 10 11 12 /ILab* [( d) (d) (d) (d) (ab,d) (ab,d) (d) (d) (d) (d) (d) (d) (d)] def /IL*AB [( d) (d) (d) (d) (AB,d) (AB,d) (d) (d) (d) (d) (d) (d) (d)] def 0 1 12 {/i exch def %i=0,12 xchart8 0 eq {CLnam i CLab* i get put ILind i ILab* i get put} {CLnam i CL*AB i get put ILind i IL*AB i get put} ifelse } for %i=0,12 /YrN 2.52 def %Reference black and white xchart7 0 eq {/Xtref089 0.00 def /Ytref089 0.00 def /Ztref089 0.00 def /PLref (OLS00) def /TLref (TLS00) def} if xchart7 1 eq {/Xtref089 YrN 0.25 mul XLN001 mul def /Ytref089 YrN 0.25 mul def /Ztref089 YrN 0.25 mul ZLN001 mul def /PLref (OLS06) def /TLref (TLS06) def} if xchart7 2 eq {/Xtref089 YrN 0.50 mul XLN001 mul def /Ytref089 YrN 0.50 mul def /Ztref089 YrN 0.50 mul ZLN001 mul def /PLref (OLS11) def /TLref (TLS11) def} if xchart7 3 eq {/Xtref089 YrN 1.00 mul XLN001 mul def /Ytref089 YrN 1.00 mul def /Ztref089 YrN 1.00 mul ZLN001 mul def /PLref (OLS18) def /TLref (TLS18) def} if xchart7 4 eq {/Xtref089 YrN 2.00 mul XLN001 mul def /Ytref089 YrN 2.00 mul def /Ztref089 YrN 2.00 mul ZLN001 mul def /PLref (OLS27) def /TLref (TLS27) def} if xchart7 5 eq {/Xtref089 YrN 4.00 mul XLN001 mul def /Ytref089 YrN 4.00 mul def /Ztref089 YrN 4.00 mul ZLN001 mul def /PLref (OLS38) def /TLref (TLS38) def} if xchart7 6 eq {/Xtref089 YrN 8.00 mul XLN001 mul def /Ytref089 YrN 8.00 mul def /Ztref089 YrN 8.00 mul ZLN001 mul def /PLref (OLS52) def /TLref (TLS52) def} if xchart7 7 eq {/Xtref089 YrN 16.00 mul XLN001 mul def /Ytref089 YrN 16.00 mul def /Ztref089 YrN 16.00 mul ZLN001 mul def /PLref (OLS70) def /TLref (TLS70) def} if /YNil Ytref089 def /YNil001 YNil 100 div def YNil001 6 29 div 3 exp ge {/FYYn YNil001 0.3333 exp def} {/FYYn 841 108 div YNil001 mul 4 29 div add def} ifelse /L*Nil 116 FYYn mul 16 sub def %************************************************************** /proz_XYZiref_XYZaref {%BEG proz_XYZiref_XYZaref %for 12 colours x 5 components %input XYZiref, %output XYZaref %only for xchart5=1 and for 12 colours in 7 hue planes and 2 achromatic %normalization to Ynor=18 xchart9 1 eq {%xchart9=1 /Xnor XD65 0.18 mul def /Ynor YD65 0.18 mul def /Znor ZD65 0.18 mul def /Xfac1 Xnor Xnor Xtref add div def /Yfac1 Ynor Ynor Ytref add div def /Zfac1 Znor Znor Ztref add div def /Xaref Xiref Xnor sub Xfac1 mul Xnor add def /Yaref Yiref Ynor sub Yfac1 mul Ynor add def /Zaref Ziref Znor sub Zfac1 mul Znor add def } if %xchart9=1 %normalization to Ynor=88.6 xchart9 0 eq {%xchart9=0 /Xnor XD65 0.886 mul def /Ynor YD65 0.886 mul def /Znor ZD65 0.886 mul def /Xfac2 Xnor Xtref sub Xnor div def /Yfac2 Ynor Ytref sub Ynor div def /Zfac2 Znor Ztref sub Znor div def /Xaref Xiref Xfac2 mul Xtref add def /Yaref Yiref Yfac2 mul Ytref add def /Zaref Ziref Zfac2 mul Ztref add def } if %xchart9=0 } bind def %END proz_XYZiref_XYZaref %*********************************************************** 0 1 11 {/i exch def /i50 i 5 mul def /i51 i 5 mul 1 add def /i52 i 5 mul 2 add def /i53 i 5 mul 3 add def /i54 i 5 mul 4 add def /Xiref XYZ*60ra i50 get def /Yiref XYZ*60ra i51 get def /Ziref XYZ*60ra i52 get def %input XYZiref, %output XYZaref proz_XYZiref_XYZaref XYZ*60na i50 Xaref Xtref sub put XYZ*60na i51 Yaref Ytref sub put XYZ*60na i52 Zaref Ztref sub put XYZ*60la i50 Xaref put XYZ*60la i51 Yaref put XYZ*60la i52 Zaref put /SUM Xaref Yaref add Zaref add 0.0001 add def XYZ*60la i53 Xaref SUM div put XYZ*60la i54 Yaref SUM div put %input XYZaref, output LChab*ref, same name in any case %output LabC*h (xchart8=0) or LABC*h (xchart8=1) proz_XYZ_LCh* LCh*60la i50 L*ref put LCh*60la i51 C*ref put LCh*60la i52 h*ref put LCh*60la i53 a*ref put LCh*60la i54 b*ref put } for %i=0,11 /iy 3450 def 050 iy 300 add moveto TBK xchart7 0 eq {(TLS00) show} if xchart7 1 eq {(TLS06) show} if xchart7 2 eq {(TLS11) show} if xchart7 3 eq {(TLS18) show} if xchart7 4 eq {(TLS27) show} if xchart7 5 eq {(TLS38) show} if xchart7 6 eq {(TLS52) show} if xchart7 7 eq {(TLS70) show} if TBK ( Reflection colorimetry, System ) showen (\255Reflexionsfarbmetrik, System ) showde xchart4 0 eq {(sRGB, ) show} {(WCGa, ) show} ifelse xchart8 0 eq {TBK (CIELAB\255) show TBIK (LabC*h, ) show} {TBK (L*ABJND\255) show TBIK (L*ABCh, ) show} ifelse %(XYZ, ) show TBIK (Y) show 0 -40 rmoveto TBS (Nn) show 0 40 rmoveto TBK ( = ) show YNil cvsshow2 TBK (, ) show TBIK (L*) show 0 -40 rmoveto TBS (Nn) show 0 40 rmoveto TBK ( = ) show L*Nil cvsshow2 TBIK (, Y) show 0 -40 rmoveto TBS xchart9 0 eq {(Wa) show}{(Za) show} ifelse 0 40 rmoveto TBK ( = ) show xchart9 0 eq {(88,6) show} {(18,0) show} ifelse 0 iy 200 add moveto xwide 0 rlineto stroke /iy iy 50 sub def 100 iy moveto lanind 0 eq {-60 0 rmoveto (Farbe) TBK show} if lanind 1 eq {-70 0 rmoveto (Colour) TBK show} if lanind 2 eq {-80 0 rmoveto (Couleur) TBK show} if %known: xpos, CLnam, Cind xchart6 0 eq {%xchart6=0 0 1 12 {/i exch def %i=0,12 xposi i get iy moveto CLnam i get TBIK show 0 -40 rmoveto TBS ILind i get 0 40 rmoveto } for %i=0,12 } if %xchart6=0 xchart6 1 eq {%xchart6=1 0 1 2 {/i exch def %i=0,2 xposi i get iy moveto CLnam i get TBIK show 0 -40 rmoveto TBS ILind i get 0 40 rmoveto } for %i=0,2 } if %xchart6=1 xchart6 1 eq {%xchart6=1 11 1 12 {/i exch def %i=11,12 xposi i get iy moveto CLnam i get TBIK show 0 -40 rmoveto TBS ILind i get 0 40 rmoveto } for %i=11,12 } if %xchart6=1 xchart6 1 eq {%xchart6=1 xposi 4 get iy moveto CLnam 08 get TBIK show 0 -40 rmoveto TBS ILind 8 get 0 40 rmoveto xposi 4 get 2300 add iy moveto CLnam 09 get TBIK show 0 -40 rmoveto TBS ILind 9 get 0 40 rmoveto xposi 4 get 4600 add iy moveto CLnam 10 get TBIK show 0 -40 rmoveto TBS ILind 9 get 0 40 rmoveto } if %xchart6=1 0 1 11 {/i exch def /i30 i 3 mul def /i31 i 3 mul 1 add def /i32 i 3 mul 2 add def /i50 i 5 mul def /i51 i 5 mul 1 add def /i52 i 5 mul 2 add def /i53 i 5 mul 3 add def /i54 i 5 mul 4 add def /iy 3100 i 5 le {i} {i 1 sub} ifelse 300 mul sub def i 6 ne {%i 6 ne 100 iy moveto ( ) TBIK LABN i get show TBS 0 -40 rmoveto (d) show 0 40 rmoveto TK xposi 00 get iy moveto rgb*36X i30 get cvsshow3 xposi 01 get iy moveto rgb*36X i31 get cvsshow3 xposi 02 get iy moveto rgb*36X i32 get cvsshow3 xchart6 0 eq {%xchart6=0 xposi 03 get iy moveto LCh*60la i50 get trushow xposi 04 get iy moveto LCh*60la i51 get trushow xposi 05 get iy moveto LCh*60la i52 get cvishow xposi 06 get iy moveto LCh*60la i53 get trushow xposi 07 get iy moveto LCh*60la i54 get trushow xposi 08 get iy moveto XYZ*60la i50 get trushow % (\050=) nshow % XYZ*60la i50 get Xtref089 sub troshow (+) show % Xtref089 troshow (\051) show xposi 09 get iy moveto XYZ*60la i51 get trushow % (\050=) nshow % XYZ*60la i51 get Ytref089 sub troshow (+) show % Ytref089 troshow (\051) show xposi 10 get iy moveto XYZ*60la i52 get trushow % (\050=) nshow % XYZ*60la i52 get Ztref089 sub troshow (+) show % Ztref089 troshow (\051) show } if %xchart6=0 xchart6 1 eq {%xchart6=1 xposi 03 get iy moveto XYZ*60la i50 get trushow (\050=) show XYZ*60la i50 get Xtref089 sub troshow (+) show Xtref089 troshow (\051) show xposi 03 get 2300 add iy moveto XYZ*60la i51 get trushow (\050=) show XYZ*60la i51 get Ytref089 sub troshow (+) show Ytref089 troshow (\051) show xposi 03 get 4600 add iy moveto XYZ*60la i52 get trushow (\050=) show XYZ*60la i52 get Ztref089 sub troshow (+) show Ztref089 troshow (\051) show } if %xchart6=1 xposi 11 get iy moveto XYZ*60la i53 get trushow4 xposi 12 get iy moveto XYZ*60la i54 get trushow4 } if %i 6 ne } for showpage %%Trailer