%!PS-Adobe-3.0 EPSF-3.0 www.ps.bam.de/DE49/X10-3N.eps 2001.04.01 %%BoundingBox: 50 78 800 450 %START PDFDE011.EPS /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: X10-3N.EPS) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://o2.ps.bam.de or http://www.ps.bam.de) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@bam.de) /CreationDate (D:2000010512000) /ModDate (D:2000010512000) /DOCINFO pdfmark [ /View [ /FitB ] /DOCVIEW pdfmark %END PDFDE011 %%Creator: K. Richter, BAM und TU Berlin, 2000.06.16 %%+Copyright (c) 1996 VDE-Verlag Berlin Offenbach %BEG DM49/10X/OUTLINZEX Output Linearization (OL) LAB* -> cmyolvnw* 20020401 %BEG DM49/10X/EARLY BINDING AND SYSTEM /sggray {setgray} bind def /sgrgbcolor {setrgbcolor} bind def /sgcmykcolor {setcmykcolor} bind def /sgtransfer {settransfer} bind def /sgcolortransfer {setcolortransfer} bind def /sgcolor {setcolor} bind def /ISYSTEM 0 def % default for Offset Reflective System (ORS) % see Table 1 of ISO/IEC 15775:1999-12 %/ISYSTEM 1 def % for Television Luminous System (TLS) % see Table 1 of ISO/IEC 15775:1999-12 %/ISYSTEM 2 def % for Colour Device System (CDS), data in MISO_S1g % MISO_data from CIELAB measurement of Device /iLAB 0 def % for preparing system data once %END DM49/10X/EARLY BINDING %*************************************************************** %BEG DE49/10X/LABCMYFP.PS Output LAB* -> cmyolvnw* 2001-07-15 /LAB*sx { %Begin Procedure LAB*sx /iLAB 1 def /LAB* 27 array def /LAB*ORS 27 array def /LAB*TLS 27 array def /LAB*sa 27 array def /LAB*ORS [%D=Device OYLCVMO+NW %for Offset Reflective System (ORS) 58.62 -30.63 -42.75 %C 0 %see Table 1 of ISO/IEC 15775:1999-12 25.72 31.45 -44.36 %V 1 48.13 75.20 -6.80 %M 2 47.94 65.31 52.07 %0 3 90.37 -11.16 96.17 %Y 4 50.90 -62.97 36.71 %L 5 58.62 -32.63 -42.75 %C 6 18.01 0.50 -0.47 %N 7 95.41 -0.99 4.76 %W 8 ] def %OYLCVMO+NW /LAB*TLS [%D=Device OYLCVMO+NW %for Television Luminous System (TLS) 86.88 -46.17 -13.56 %C 0 %see Table 1 of ISO/IEC 15775:1999-12 25.72 31.45 -44.30 %V 1 57.30 94.35 -20.70 %M 2 50.50 76.92 64.55 %0 3 92.66 -20.70 90.75 %Y 4 83.63 -82.76 79.90 %L 5 86.88 -46.17 -13.56 %C 6 18.01 0.01 0.01 %N 7 95.41 0.01 0.01 %W 8 ] def %OYLCVMO+NW 0 1 8 {/iISO exch def /i30 iISO 3 mul def /i31 i30 1 add def /i32 i30 2 add def ISYSTEM 0 eq { %ORS LAB* i30 LAB*ORS i30 get put LAB* i31 LAB*ORS i31 get put LAB* i32 LAB*ORS i32 get put } if ISYSTEM 1 eq { %TLS LAB* i30 LAB*TLS i30 get put LAB* i31 LAB*TLS i31 get put LAB* i32 LAB*TLS i32 get put } if } for ISYSTEM 2 eq { %CDS LAB* 0 MISO_S1g 1 get put %C LAB* 1 MISO_S1g 2 get put LAB* 2 MISO_S1g 3 get put LAB* 3 MISO_S1g 385 get put %V LAB* 4 MISO_S1g 386 get put LAB* 5 MISO_S1g 387 get put LAB* 6 MISO_S1g 65 get put %M LAB* 7 MISO_S1g 66 get put LAB* 8 MISO_S1g 67 get put LAB* 9 MISO_S1g 257 get put %O LAB* 10 MISO_S1g 258 get put LAB* 11 MISO_S1g 259 get put LAB* 12 MISO_S1g 129 get put %Y LAB* 13 MISO_S1g 130 get put LAB* 14 MISO_S1g 131 get put LAB* 15 MISO_S1g 321 get put %L LAB* 16 MISO_S1g 322 get put LAB* 17 MISO_S1g 323 get put LAB* 18 MISO_S1g 1 get put %C LAB* 19 MISO_S1g 2 get put LAB* 20 MISO_S1g 3 get put LAB* 21 MISO_S1g 449 get put %N LAB* 22 MISO_S1g 450 get put LAB* 23 MISO_S1g 451 get put LAB* 24 MISO_S1g 509 get put %W LAB* 25 MISO_S1g 510 get put LAB* 26 MISO_S1g 511 get put } if /L*N LAB* 21 get def /A*N LAB* 22 get def /B*N LAB* 23 get def /L*W LAB* 24 get def /A*W LAB* 25 get def /B*W LAB* 26 get def /A*D A*W A*N sub def /B*D B*W B*N sub def 0 1 8 {/iISO exch def /i30 iISO 3 mul def /i31 i30 1 add def /i32 i30 2 add def LAB*sa i30 LAB* i30 get put /l*CIE LAB* i30 get L*N sub L*W L*N sub div def %system rel. lightn. /a*s A*W A*N sub l*CIE mul def /b*s B*W B*N sub l*CIE mul def LAB*sa i31 LAB* i31 get A*N sub a*s sub put LAB*sa i32 LAB* i32 get B*N sub b*s sub put } for %Determine Matrix data /C*L*s0 LAB*sa 0 get L*N sub def /C*A*s0 LAB*sa 1 get def /C*B*s0 LAB*sa 2 get def /V*L*s0 LAB*sa 3 get L*N sub def /V*A*s0 LAB*sa 4 get def /V*B*s0 LAB*sa 5 get def /M*L*s0 LAB*sa 6 get L*N sub def /M*A*s0 LAB*sa 7 get def /M*B*s0 LAB*sa 8 get def /O*L*s0 LAB*sa 9 get L*N sub def /O*A*s0 LAB*sa 10 get def /O*B*s0 LAB*sa 11 get def /Y*L*s0 LAB*sa 12 get L*N sub def /Y*A*s0 LAB*sa 13 get def /Y*B*s0 LAB*sa 14 get def /L*L*s0 LAB*sa 15 get L*N sub def /L*A*s0 LAB*sa 16 get def /L*B*s0 LAB*sa 17 get def /N*L*s0 LAB*sa 21 get L*N sub def /N*A*s0 LAB*sa 22 get def /N*B*s0 LAB*sa 23 get def /W*L*s0 LAB*sa 24 get L*N sub def /W*A*s0 LAB*sa 25 get def /W*B*s0 LAB*sa 26 get def % Determine the angle in the A* B* plane of each of the colours defined above /C*Ang C*B*s0 C*A*s0 atan def /V*Ang V*B*s0 V*A*s0 atan def /M*Ang M*B*s0 M*A*s0 atan def /O*Ang O*B*s0 O*A*s0 atan def /Y*Ang Y*B*s0 Y*A*s0 atan def /L*Ang L*B*s0 L*A*s0 atan def %No N, W (cero) % The detproc below finds the determinant of the Matrix: % | A1 B1 C1 D1 | % | A2 B2 C2 D2 | % | A3 B3 C3 D3 | % | A4 B4 C4 D4 | % /detproc { %BEG procedure detproc /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 detproc % The Coeffproc 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 % /Coeffproc { %BEG procedure Coeffproc /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 detproc /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 detproc /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 detproc /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 detproc /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 detproc /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 Coeffproc } bind def %END Procedure LAB*sx %************************************************************ /LAB*_to_cvmoylnw* {%BEG Procedure LAB*_to_cvmoylnw* %change LAB* to cvmolynw* %default: ISYSTEM=0 to the Offset Reflective System (ORS) % ISYSTEM=1 to the Television Luminous System (TLS) % ISYSTEM=2 to the Color Device System (CDS) %input data definition /B*F exch def /A*F exch def /L*F exch def iLAB 0 eq { %if iLAB=0 then reference data LAB*sx %procedure reference data and change to ILAB=1 within LAB*sx } if %reference data /C*F A*F A*N sub dup mul B*F B*N sub dup mul add sqrt def /l*CIE L*F L*N sub L*W L*N sub 0.0001 add div def /L*Fs0 L*F L*N sub def /A*Fs0 A*F A*N sub A*D l*CIE mul sub def /B*Fs0 B*F B*N sub B*D l*CIE mul sub def /C*Fs0 A*Fs0 dup mul B*Fs0 dup mul add sqrt def % the angle formed by the input LAB* *color data in the A*B* plane /col_ang B*Fs0 A*Fs0 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. %default data /c*w 0 def /v*w 0 def /m*w 0 def /o*w 0 def /y*w 0 def /l*w 0 def /n*w 0 def /w*w 0 def /c*n 0 def /v*n 0 def /m*n 0 def /o*n 0 def /y*n 0 def /l*n 0 def /n*n 0 def /w*n 0 def % angle between magenta red and orange red col_ang O*Ang le col_ang M*Ang gt or {1 W*L*s0 W*A*s0 W*B*s0 1 N*L*s0 N*A*s0 N*B*s0 1 O*L*s0 O*A*s0 O*B*s0 1 M*L*s0 M*A*s0 M*B*s0 1 L*Fs0 A*Fs0 B*Fs0 Coeffproc /m*w exch def /o*w exch def /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 /v*n w*w m*w add def /l*n w*w def /o*n 1 n*w sub def } if % angle between orange red and yellow col_ang O*Ang gt col_ang Y*Ang le and {1 W*L*s0 W*A*s0 W*B*s0 1 N*L*s0 N*A*s0 N*B*s0 1 O*L*s0 O*A*s0 O*B*s0 1 Y*L*s0 Y*A*s0 Y*B*s0 1 L*Fs0 A*Fs0 B*Fs0 Coeffproc /y*w exch def /o*w exch def /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 /v*n w*w def /l*n w*w y*w add def /o*n 1 n*w sub def } if % angle between yellow and leaf green col_ang Y*Ang gt col_ang L*Ang le and {1 W*L*s0 W*A*s0 W*B*s0 1 N*L*s0 N*A*s0 N*B*s0 1 L*L*s0 L*A*s0 L*B*s0 1 Y*L*s0 Y*A*s0 Y*B*s0 1 L*Fs0 A*Fs0 B*Fs0 Coeffproc /y*w exch def /l*n exch def /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 /v*n w*w def /l*n 1 n*w sub def /o*n w*w y*w add def } if % angle between leaf green and cyan blue col_ang L*Ang gt col_ang C*Ang le and {1 W*L*s0 W*A*s0 W*B*s0 1 N*L*s0 N*A*s0 N*B*s0 1 L*L*s0 L*A*s0 L*B*s0 1 C*L*s0 C*A*s0 C*B*s0 1 L*Fs0 A*Fs0 B*Fs0 Coeffproc /c*w exch def /l*n exch def /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 /v*n w*w c*w add def /l*n 1 n*w sub def /o*n w*w def } if % angle between cyan blue and voilet blue col_ang C*Ang gt col_ang V*Ang le and {1 W*L*s0 W*A*s0 W*B*s0 1 N*L*s0 N*A*s0 N*B*s0 1 V*L*s0 V*A*s0 V*B*s0 1 C*L*s0 C*A*s0 C*B*s0 1 L*Fs0 A*Fs0 B*Fs0 Coeffproc /c*w exch def /v*w exch def /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 /v*n 1 n*w sub def /l*n w*w c*w add def /o*n w*w def } if % angle between voilet blue and magenta red col_ang V*Ang gt col_ang M*Ang le and {1 W*L*s0 W*A*s0 W*B*s0 1 N*L*s0 N*A*s0 N*B*s0 1 V*L*s0 V*A*s0 V*B*s0 1 M*L*s0 M*A*s0 M*B*s0 1 L*Fs0 A*Fs0 B*Fs0 Coeffproc /m*w exch def /v*w exch def /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 /v*n 1 n*w sub def /l*n w*w def /o*n w*w m*w add def } if /c*w 1 o*n sub def /m*w 1 l*n sub def /y*w 1 v*n 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 div def %Eigencolor ratio % with 0 for achromatic (c*w=0) and 1 for whitish colors (n*w=0) %Definition of elementary colors J, R, B, G %CIE x,y,Y for D65 to CIE L* a* b* = LAB* /xanJ 0.4449 def /yanJ 0.4909 def /YJ 77.82 def /xanR 0.5813 def /yanR 0.3236 def /YR 18.11 def /xanB 0.1701 def /yanB 0.1355 def /YB 9.35 def /xanG 0.1890 def /yanG 0.4496 def /YG 20.24 def /xanD65 0.3127 def /yanD65 0.3291 def /YD65 100.00 def /SumJ YJ yanJ div def /XJ xanJ SumJ mul def /ZJ 1 xanJ sub yanJ sub SumJ mul def /SumR YR yanR div def /XR xanR SumR mul def /ZR 1 xanR sub yanR sub SumR mul def /SumB YB yanB div def /XB xanB SumB mul def /ZB 1 xanB sub yanB sub SumB mul def /SumG YG yanG div def /XG xanG SumG mul def /ZG 1 xanG sub yanG sub SumG mul def /SumD65 YD65 yanD65 div def /XD65 xanD65 SumD65 mul def /ZD65 1 xanD65 sub yanD65 sub SumD65 mul def /ASJ xanJ yanJ div 0.3333 exp 0.2191 mul def /BSJ 1 xanJ sub yanJ sub yanJ div 0.3333 exp 0.08376 mul neg def /ASR xanR yanR div 0.3333 exp 0.2191 mul def /BSR 1 xanR sub yanR sub yanR div 0.3333 exp 0.08376 mul neg def /ASB xanB yanB div 0.3333 exp 0.2191 mul def /BSB 1 xanB sub yanB sub yanB div 0.3333 exp 0.08376 mul neg def /ASG xanG yanG div 0.3333 exp 0.2191 mul def /BSG 1 xanG sub yanG sub yanG div 0.3333 exp 0.08376 mul neg def /ASD65 xanD65 yanD65 div 0.3333 exp 0.2191 mul def /BSD65 1 xanD65 sub yanD65 sub yanD65 div 0.3333 exp 0.08376 mul neg def %/col_ang B* A* atan def /J*L YJ 100 div 0.3333 exp 116 mul 16 sub def /R*L YR 100 div 0.3333 exp 116 mul 16 sub def /B*L YB 100 div 0.3333 exp 116 mul 16 sub def /G*L YG 100 div 0.3333 exp 116 mul 16 sub def /J*A ASJ ASD65 sub 500 mul def /J*B BSJ BSD65 sub 500 mul def /R*A ASR ASD65 sub 500 mul def /R*B BSR BSD65 sub 500 mul def /B*A ASB ASD65 sub 500 mul def /B*B BSB BSD65 sub 500 mul def /G*A ASG ASD65 sub 500 mul def /G*B BSG BSD65 sub 500 mul def /J*Ang J*B J*A atan def /R*Ang R*B R*A atan def /B*Ang B*B B*A atan def /G*Ang G*B G*A atan 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 /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 /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 /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 /h1* (b) def /h2* (r) def /H1* (B) def /H2* (R) def /HM* B*Ang def /HP* R*Ang 360 add def} if c*w m*w y*w 0 %default output data definition } bind def %END Procedure LAB*_to_cvmoylnw*PRS %END DE49/10X/LABCMYFP.PS Output LAB* -> cmyolvnw* 2001-07-15 %BEG DM49/10X/X10M00ZEX LAB* transfer in the File (F) for the device (Y=X) /setcolor { %BEG exchange of setcolor by setcmykcolor LAB*_to_cvmoylnw* %change LAB* to cvmolynw* %default: ISYSTEM=0 to the Offset Reflective System (ORS) /tshow {1 1 1 0 setcmykcolor 180 /Times-Italic FS show} def /trushow {0.005 add 100 mul truncate 100 div 10 string cvs tshow} bind def /trushow2 {0.005 add 10000 mul truncate 10000 div 10 string cvs tshow} bind def /tshowo {0 1 1 0 setcmykcolor 180 /Times-Italic FS show} def /trushowo {0.005 add 100 mul truncate 100 div 10 string cvs tshowo} bind def /trushow2o {0.00005 add 10000 mul truncate 10000 div 10 string cvs tshowo} bind def /iy1 -900 def /iyd -200 def j 0 eq {-1700 iy1 600 add moveto (Different colour coordinates of this colour series; ) tshow (Model of square output *' (star-dash)) tshowo} if j 0 eq {-1700 iy1 300 add moveto (Series ) tshow LSC$ tshow (: ) tshow 0 ncol eq {(w* - x o*) } if 1 ncol eq {(w* - x l*) } if 2 ncol eq {(w* - x v*) } if 3 ncol eq {(w* - x cmy*) } if tshow 2000 iy1 300 add moveto ( Transfer: LAB*_to_cmy* and other colour coordinates:) tshow } if %j=0 j 0 eq {-1700 iy1 moveto (LAB*'PR18) tshowo} if /j15 15 j sub 700 mul def -1200 j15 iy1 iyd 0 mul add moveto L*F trushowo -1200 j15 iy1 iyd 1 mul add moveto A*F trushowo -1200 j15 iy1 iyd 2 mul add moveto B*F trushowo j 0 eq {-1700 iy1 iyd 3.5 mul add moveto (cmy*'wPR18) tshowo} if -1200 j15 iy1 iyd 3.5 mul add moveto c*w trushow2o -1200 j15 iy1 iyd 4.5 mul add moveto m*w trushow2o -1200 j15 iy1 iyd 5.5 mul add moveto y*w trushow2o j 0 eq {-1700 iy1 iyd 7 mul add moveto (olv*'nPR18) tshowo} if -1200 j15 iy1 iyd 7 mul add moveto o*n trushow2o -1200 j15 iy1 iyd 8 mul add moveto l*n trushow2o -1200 j15 iy1 iyd 9 mul add moveto v*n trushow2o j 0 eq {-1700 iy1 iyd 10.5 mul add moveto (nru*'PR18) tshowo} if -1200 j15 iy1 iyd 10.5 mul add moveto n*w trushow2o -1200 j15 iy1 iyd 11.5 mul add moveto r*w trushow2o -1200 j15 iy1 iyd 12.5 mul add moveto h1* tshowo H* trushowo h2* tshowo j 0 eq {-1700 iy1 iyd 14 mul add moveto (wte*'PR18) tshowo} if -1200 j15 iy1 iyd 14 mul add moveto w*w trushow2o -1200 j15 iy1 iyd 15 mul add moveto t*w trushow2o -1200 j15 iy1 iyd 16 mul add moveto e*w trushow2o j 0 eq { %j=0 -1700 iy1 iyd 18 mul add moveto (File http://www.ps.bam.de/DE49/X10/) tshow ncol 0 eq {(X21E00NP.PS/.PDF) tshow} if ncol 1 eq {(X22E00NP.PS/.PDF) tshow} if ncol 2 eq {(X23E00NP.PS/.PDF) tshow} if ncol 3 eq {(X24E00NP.PS/.PDF) tshow} if 4500 iy1 iyd 18 mul add moveto (for similar files, see http://www.ps.bam.de/DE49/DE49.HTM) tshow } if %j=0 c*w m*w y*w 0 setcmykcolor} bind def %END exchange of setcolor by setcmykcolor %END DM49/10X/X10M00ZEX Linearization data in the File (F) for the device (Y=X) %END DM49/10X/OUTLINZEX Output Linearization (OL) LAB* -> cmyolvnw* 200204 %BEG CM_S0LCMYS.DAT Linearization Method (LM) LOCAL (L) cmyolvnw*S DATA 20020401 %CMYOLVNW4DL.PS 4dimensional series %INCLUDES STANDARD (S) relative series a: cmyn-w and b: olv(cmy)-w /tzaccmyw0l 64 array def /tzamcmyw0l 64 array def /tzaycmyw0l 64 array def /tzancmyw0l 64 array def /tzbocmyw0l 64 array def /tzblcmyw0l 64 array def /tzbvcmyw0l 64 array def /tzbncmyw0l 64 array def /tzaccmyw0l [ %Ccmyw0l01.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 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 ] def /tzamcmyw0l [ %Mcmyw0l01.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 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 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 /tzaycmyw0l [ %Ycmyw0l01.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 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 /tzancmyw0l [ %Ncmyw0l01.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 /tzbocmyw0l [ %Ocmyw0l01.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 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 /tzblcmyw0l [ %Lcmyw0l01.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 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 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 /tzbvcmyw0l [ %Vcmyw0l01.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 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 ] def /tzbncmyw0l [ %CMYcmyw0l01.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 CM_S0LCMYS.DAT Linearization Method (LM) LOCAL (L) cmyolvnw*S DATA 20010401 % !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 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %Umrechnung Inch -> mm /A4quer {598 0 translate 90 rotate} def /languagelevel where {pop languagelevel} {1} ifelse /PSL12 exch def /dictende {counttomark 2 idiv dup dict begin {def} repeat pop currentdict end} bind def /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 /proz1 {pop} bind def /proz2 {sqrt} bind def /setgc {pop pop pop 1 exch sub setgray} bind def /setgm {pop pop 1 exch sub setgray pop} bind def /setgy {pop 1 exch sub setgray pop pop} bind def /setgn {1 exch sub setgray pop pop pop} bind def /setgf {/ncolor exch def /ycolor exch def /mcolor exch def /ccolor exch def 0 ccolor eq 0 mcolor eq and 0 ycolor eq and {1 ncolor sub setgray} {1 ccolor sub 0.71 mul 1 mcolor sub 0.22 mul add 1 ycolor sub 0.07 mul add setgray} ifelse } bind def /setsc {075 135 {proz1} setscreen } bind def /setsm {075 090 {proz1} setscreen } bind def /setsy {075 000 {proz1} setscreen } bind def /setsn {075 045 {proz1} setscreen } bind def /setsf {075 135 {proz1} 075 090 {proz1} 075 000 {proz1} 075 045 {proz1} setcolorscreen } bind def /setcmyncolorf {setcmyncolor setsf} bind def %ANFA HALBTON /Halbt { %wrbie:HALBTOA0.eps } bind def %ANFA SETCMYK /setcmyknew { %Ersatz setcolornew durch setcmyn*color1 ausz 1 eq {setgc half 0 eq {setsc} if} if %C ausz 2 eq {setgm half 0 eq {setsm} if} if %M ausz 3 eq {setgy half 0 eq {setsy} if} if %Y ausz 4 eq {pop pop pop /ccolor exch def ccolor 0 0 0 /setcmyncolor where %Abfrage Farb-/SW-Geraet {pop setcmyncolorf} %PSL1/2-Farb-Geraet {setgc setsc} %PSL1-SW-Geraet ifelse } if %Cbunt ausz 5 eq {pop pop /mcolor exch def pop 0 mcolor 0 0 /setcmyncolor where %Abfrage Farb-/SW-Geraet {pop setcmyncolorf} %PSL1/2-Farb-Geraet {setgm setsm} %PSL1-SW-Geraet ifelse } if %Mbunt ausz 6 eq {pop /ycolor exch def pop pop 0 0 ycolor 0 /setcmyncolor where %Abfrage Farb-/SW-Geraet {pop setcmyncolorf} %PSL1/2-Farb-Geraet {setgy setsy} %PSL1-SW-Geraet ifelse } if %Ybunt ausz 7 eq {setgn half 0 eq {setsn} if} if %N ausz 8 ge { /setcmyncolor where %Abfrage Farb-/SW-Geraet {pop setcmyncolorf} %PSL1/2-Farb-Geraet {setgf setsn} %PSL1-SW-Geraet ifelse } if %bei ausz=8: Farb- oder SW-Ausdruck je nach Drucker } bind def /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 /colrecfi %x y width heigth c m y n {setcmyknew rec fill} bind def /colrecst %x y width heigth c m y n {setcmyknew rec stroke} bind def /tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben /tzl {1.0 0.0 1.0 0.0} bind def /tzv {1.0 1.0 0.0 0.0} bind def /tzc {1.0 0.0 0.0 0.0} bind def /tzm {0.0 1.0 0.0 0.0} bind def /tzy {0.0 0.0 1.0 0.0} bind def /tzn {0.0 0.0 0.0 1.00} bind def %Graureihe /tzd {0.0 0.0 0.0 0.75} bind def /tzz {0.0 0.0 0.0 0.50} bind def /tzh {0.0 0.0 0.0 0.25} bind def /tzw {0.0 0.0 0.0 0.00} bind def /tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben /tzg {1.0 0.0 0.5 0.0} bind def /tzb {1.0 0.5 0.0 0.0} bind def /tzj {0.0 0.0 1.0 0.0} bind def /tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut /tzgz {1.0 0.0 0.5 0.5} bind def /tzbz {1.0 0.5 0.0 0.5} bind def /tzjz {0.0 0.0 1.0 0.5} bind def /tfo {tzo setcmyknew} bind def /tfl {tzl setcmyknew} bind def /tfv {tzv setcmyknew} bind def /tfc {tzc setcmyknew} bind def /tfm {tzm setcmyknew} bind def /tfy {tzy setcmyknew} bind def /tfn {tzn setcmyknew} bind def /tfd {tzd setcmyknew} bind def /tfz {tzz setcmyknew} bind def /tfh {tzh setcmyknew} bind def /tfw {tzw setcmyknew} bind def /tfr {tzr setcmyknew} bind def /tfg {tzg setcmyknew} bind def /tfb {tzb setcmyknew} bind def /tfj {tzj setcmyknew} bind def /tfrz {tzrz setcmyknew} bind def /tfgz {tzgz setcmyknew} bind def /tfbz {tzbz setcmyknew} bind def /tfjz {tzjz setcmyknew} bind def %ANFA OUTLINO0 951204 /pixf 1.0 def /ueg {1.6 pixf mul} bind def /uek {0.8 pixf mul} bind def /ues {0.7 pixf mul} bind def /pxd uek def /pyd uek def /pxwd ueg def /pywd ueg def /outxshowf {show} bind def /outxshow {show} bind def /SK {250 16.67 div 1 sub pixf mul /Symbol FS} bind def /SM {300 16.67 div 1 sub pixf mul /Symbol FS} bind def /SG {350 16.67 div 1 sub pixf mul /Symbol FS} bind def /outSK {250 16.67 div 1 sub pixf mul /Symbol FS outxshow} bind def /outSM {300 16.67 div 1 sub pixf mul /Symbol FS outxshow} bind def /outSG {350 16.67 div 1 sub pixf mul /Symbol FS outxshow} bind def /outshowf {setcmyknew show} bind def /outrecfi { %x y width heigth c m y k setcmyknew rec fill} bind def /outrecfi4 { %x y width heigth c m y k outrecfi} bind def /outrecfi3 { %x y width heigth c m y k outrecfi} bind def /outrecfi2 { %x y width heigth c m y k outrecfi} bind def /outlinetos { %px py c m y k setcmyknew lineto stroke} bind def /outstroke { %px1 py1 curveto ... curveto c m y k setcmyknew stroke} 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 {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 /popde {0 lanind ne {pop} if} bind def /popen {1 lanind ne {pop} if} bind def /popes {2 lanind ne {pop} if} bind def /popfr {3 lanind ne {pop} if} bind def /popit {4 lanind ne {pop} if} bind def /popjp {5 lanind ne {pop} if} bind def /popm {6 lanind ne {pop} if} bind def /popxde {/n exch def 0 lanind ne {n {pop} repeat} if} bind def /popxen {/n exch def 1 lanind ne {n {pop} repeat} if} bind def /popxes {/n exch def 2 lanind ne {n {pop} repeat} if} bind def /popxfr {/n exch def 3 lanind ne {n {pop} repeat} if} bind def /popxit {/n exch def 4 lanind ne {n {pop} repeat} if} bind def /popxjp {/n exch def 5 lanind ne {n {pop} repeat} if} bind def /popxm {/n exch def 6 lanind ne {n {pop} repeat} if} bind def /lanindg where {pop /lanind1 lanindg def /lanind2 lanindg def} {/lanind1 1 def /lanind2 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 lanind1 1 lanind2 {/lanind exch def %output showpage xcolor1 1 xcolor2 {/xcolor exch def %output showpage xchart1 1 xchart2 {/xchart exch def %output showpage gsave %LANINDL2 END 8 /Times-Roman FS 72 83 moveto % (4x2, X10-3, ) show 72 80 moveto 10 /Times-ISOL1 FS (Teil von Bild B4 der ISO/IEC\255Pr\374fvorlagen ) showde (Part of Figure D4 of the ISO/IEC\255test charts ) showen (Part of Figure D4 of the ISO/IEC\255test charts ) showes (Part of Figure D4 of the ISO/IEC\255test charts ) showfr (Part of Figure D4 of the ISO/IEC\255test charts ) showit (Part of Figure D4 of the ISO/IEC\255test charts ) showjp (Part of Figure D4 of the ISO/IEC\255test charts ) showm 10 /Times-ISOL1 FS (nach ISO/IEC 15775 und DIS ISO/IEC 19839\2551 bis 4) showde (according to ISO/IEC 15775 and DIS ISO/IEC 19839\2551 to 4) showen (according to ISO/IEC 15775 and DIS ISO/IEC 19839\2551 to 4) showes (according to ISO/IEC 15775 and DIS ISO/IEC 19839\2551 to 4) showfr (according to ISO/IEC 15775 and DIS ISO/IEC 19839\2551 to 4) showit (according to ISO/IEC 15775 and DIS ISO/IEC 19839\2551 to 4) showjp (according to ISO/IEC 15775 and DIS ISO/IEC 19839\2551 to 4) showm 72 90 translate /pixf 16.67 def 0.1667 pixf div MM 2 mul dup scale /ausz 8 def /half 0 def Halbt %Farbauszug 1=C, 2=M, 3=Y, 7=N, 8=F tfn 15 setlinewidth -380 0 moveto 13200 0 rlineto 0 6200 rlineto -13200 0 rlineto closepath stroke 1400 4600 translate /setgc {setcmykcolor} bind def /setgm {setcmykcolor} bind def /setgy {setcmykcolor} bind def /setgn {setcmykcolor} bind def /setgf {setcmykcolor} bind def /nshow {200 /TimesI-ISOL1 FS show} def /ishow {140 /Times-ISOL1 FS -100 -75 rmoveto show 50 75 rmoveto} def tfw 0 0 moveto 11200 0 rlineto 0 1500 rlineto -11200 0 rlineto closepath fill tfn 0 0 moveto 11200 0 rlineto 0 1500 rlineto -11200 0 rlineto closepath stroke /yab 000 def /ntex* [(0) (1) (2) (3) (4) (5) (6) (7) (8) (9) (A) (B) (C) (D) (E) (F)] def tfn 0 1 16 {/j exch def /ix0 j 700 mul def /iy0 000 def %j=0,16 ix0 25 add iy0 moveto 000 1500 rlineto -50 000 rlineto 000 -1500 rlineto closepath fill } for %j=0,16 /GSC$ where {pop /LSC$ GSC$ def} {/LSC$ (N) def} ifelse /ncol 1 def /l 0 def /iLAB 0 def 0 1 15 {/j exch def /ix0 15 j sub 700 mul def /iy0 0 def j 15 le { %16 Testfarben; Nr. 16 fuer weisse Linie %[/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 0 ncol eq {/LABREFX [29.93 65.39 50.52] def} if 1 ncol eq {/LABREFX [32.89 -62.83 34.96] def} if 2 ncol eq {/LABREFX [ 7.71 31.10 -44.40] def} if 3 ncol eq {/LABREFX [00.00 0.00 0.00] def} if /LABREFW [77.40 0.00 0.00] def %LABW100 /L*NN 18.01 def /A*NN 0.5 def /B*NN -0.46 def /L*WW 95.41 def /A*WW -0.98 def /B*WW 4.76 def /jmul j 15 div sqrt def /LSs0 LABREFX 0 get LABREFW 0 get LABREFX 0 get sub jmul mul add def /LS* LSs0 18.01 add def /l*CIE LS* L*NN sub L*WW L*NN sub 0.0001 add div def /ASs0 LABREFX 1 get LABREFW 1 get LABREFX 1 get sub jmul mul add def /AS* ASs0 A*NN A*WW A*NN sub l*CIE mul add add def /BSs0 LABREFX 2 get LABREFW 2 get LABREFX 2 get sub jmul mul add def /BS* BSs0 B*NN B*WW B*NN sub l*CIE mul add add def LS* AS* BS* setcolor l 0 eq {/ixd 700 def /iyd 700 def %ixd,iyd ix0 iy0 700 add moveto ixd 000 rlineto 000 iyd rlineto ixd neg 000 rlineto closepath fill } if %ixd,iyd } if %16 Testfarben; Nr. 16 fuer weisse Linie } for %j tfn -1700 900 moveto LSC$ nshow (: ) nshow 0 ncol eq {(w* \255 x o*) nshow} if 1 ncol eq {(w* \255 x l*) nshow} if 2 ncol eq {(w* \255 x v*) nshow} if 3 ncol eq {(w* - x cmy*) nshow} if -1700 700 moveto (LAB* setcolor_to_) nshow -1700 500 moveto (cmy0* setcmykcolor) nshow tfn TBM 0 1 15 {/j exch def /ix0 250 j 700 mul add def /iy0 300 def ix0 iy0 moveto ntex* j get show } for %j 15 setlinewidth tfn 0 0 moveto 11200 0 rlineto 0 1500 rlineto -11200 0 rlineto closepath stroke showpage grestore } for %xchart=xchart1,1,xchart2 %output showpage } for %xcolor=xcolor1,1,xcolor2 %output showpage } for %lanind=lanind1,1,lanind2 %output showpage %%Trailer