%!PS-Adobe-3.0 EPSF-3.0 DM100/PK0X_FRAME_A4_F1_PK80.PS 20120401 %%BoundingBox: 70 82 786 592 /pdfmarkF where {pop} {userdict /pdfmarkF /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: http://130.149.60.445/~farbmetrik/DM10) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://www.ps.bam.de or http://130.149.60.445/~farbmetrik) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@mac.com) /CreationDate (D:2012040112000) /ModDate (D:2012040112000) /DOCINFO pdfmarkF [ /View [ /Fit ] /DOCVIEW pdfmarkF %************************************************************ %Early Frame File (f) definition /sfgray {setgray} bind def /sfrgbcolor {setrgbcolor} bind def /sfcmykcolor {setcmykcolor} bind def %********************************************* %line 29, %BEG Include Procedures for output linearization at line 30 %**************************************************** %BEG 'DM10'OUTLIN11.PS for output 3D-linearization %**************************************************** /PROC_COLINT_IOF {%BEG procedure PROC_COLINT_IOF /Lab2RGB {%BEG Procedure Lab2RGB % --- Lab2RGB ----------------- % % --- Eingabe (stack): L* a* b* % --- Ausgabe (stack): iR iG iB ; die Indizes des LUT-Wertes mit dem geringsten Delta-E bzgl. Eingabewert % ---- : delta-E ; und das Delta-E dazu % /Zielb exch def /Ziela exch def /ZielL exch def /dE 1000 def /opt 0 def 1 1 nges { 1 sub 3 mul /ii exch def /dL lut ii get ZielL sub abs def dE dL ge { %dE>dL /da lut ii 1 add get Ziela sub abs def dE da ge { %dE>da /db lut ii 2 add get Zielb sub abs def dE db ge { %dE>db /dEneu dL dL mul da da mul db db mul add add sqrt def dE dEneu ge { % test ob dEneu < dE /dE dEneu def /opt ii def } if } if } if } if } for /opt opt 3 idiv def opt nG nB mul idiv % R auf den stack (Wertebereich real: 0-(nr-1)) opt nG nB mul mod nB idiv % G auf den stack opt nG nB mul mod nB mod % B auf den stack dEneu } def %END Procedure Lab2RGB %********************************************************************* /indexkonv {%BEG Procedure indexkonv % --- indexkonv ----------------- % % --- Eingabe (stack): iR iG iB ; Indizes eines LUT-Wertes % --- Ausgabe (stack): Position des LUT-Wertes im 1-dim Lut-Array % %errechnet aus r g b index auf stack den fortlaufenden index exch nB mul add exch nB nG mul mul add 3 mul } def %END Procedure indexkonv %********************************************************************* /set_oktant {%BEG Procedure set_oktant % --- set_oktant ----------------- % % --- Eingabe (stack): iR iG iB ; Indizes eines LUT-Wertes, % kennzeichnet die dem Ursprung entfernteste Ecke des ausgewaehlten Raumbereiches % sortierung v1->v8: RGB, RGB+1, RG+1B, RG+1B+1, usw.. % --- Ausgabe (stack): keine % /B_index exch def /G_index exch def /R_index exch def R_index G_index B_index indexkonv /tempindex exch def % /eswird R_index G_index B_index /zu tempindex /lin_v8L lut tempindex get def /lin_v8a lut tempindex 1 add get def /lin_v8b lut tempindex 2 add get def R_index G_index B_index 1 sub indexkonv /tempindex exch def % /eswird R_index G_index B_index 1 sub /zu tempindex jens /lin_v7L lut tempindex get def /lin_v7a lut tempindex 1 add get def /lin_v7b lut tempindex 2 add get def R_index G_index 1 sub B_index indexkonv /tempindex exch def /lin_v6L lut tempindex get def /lin_v6a lut tempindex 1 add get def /lin_v6b lut tempindex 2 add get def R_index G_index 1 sub B_index 1 sub indexkonv /tempindex exch def /lin_v5L lut tempindex get def /lin_v5a lut tempindex 1 add get def /lin_v5b lut tempindex 2 add get def R_index 1 sub G_index B_index indexkonv /tempindex exch def /lin_v4L lut tempindex get def /lin_v4a lut tempindex 1 add get def /lin_v4b lut tempindex 2 add get def R_index 1 sub G_index B_index 1 sub indexkonv /tempindex exch def /lin_v3L lut tempindex get def /lin_v3a lut tempindex 1 add get def /lin_v3b lut tempindex 2 add get def R_index 1 sub G_index 1 sub B_index indexkonv /tempindex exch def /lin_v2L lut tempindex get def /lin_v2a lut tempindex 1 add get def /lin_v2b lut tempindex 2 add get def R_index 1 sub G_index 1 sub B_index 1 sub indexkonv /tempindex exch def /lin_v1L lut tempindex get def /lin_v1a lut tempindex 1 add get def /lin_v1b lut tempindex 2 add get def } def %END Procedure set_oktant %********************************************************************* /L_abc {%BEG Procedure L_abc % --- L_abc ----------------- % % --- Eingabe (stack): alpha (R-Richtung) beta (G-Richtung) gamma (B-Richtung) % --- Ausgabe (stack): L* interpoliert aus LUT im aktuellen Oktanten % /gamma exch def /beta exch def /alpha exch def /alpham 1 alpha sub def /betam 1 beta sub def /gammam 1 gamma sub def lin_v8L alpha beta gamma mul mul mul lin_v7L alpha beta gammam mul mul mul add lin_v6L alpha betam gamma mul mul mul add lin_v5L alpha betam gammam mul mul mul add lin_v4L alpham beta gamma mul mul mul add lin_v3L alpham beta gammam mul mul mul add lin_v2L alpham betam gamma mul mul mul add lin_v1L alpham betam gammam mul mul mul add } def %END Procedure L_abc %********************************************************************* /a_abc {%BEG Procedure a_abc % --- a_abc ----------------- % % --- Eingabe (stack): alpha (R-Richtung) beta (G-Richtung) gamma (B-Richtung) % --- Ausgabe (stack): L* interpoliert aus LUT im aktuellen Oktanten % /gamma exch def /beta exch def /alpha exch def /alpham 1 alpha sub def /betam 1 beta sub def /gammam 1 gamma sub def lin_v8a alpha beta gamma mul mul mul lin_v7a alpha beta gammam mul mul mul add lin_v6a alpha betam gamma mul mul mul add lin_v5a alpha betam gammam mul mul mul add lin_v4a alpham beta gamma mul mul mul add lin_v3a alpham beta gammam mul mul mul add lin_v2a alpham betam gamma mul mul mul add lin_v1a alpham betam gammam mul mul mul add } def %END Procedure a_abc %********************************************************************* /b_abc {%BEG Procedure b_abc % --- b_abc ----------------- % % --- Eingabe (stack): alpha (R-Richtung) beta (G-Richtung) gamma (B-Richtung) % --- Ausgabe (stack): L* interpoliert aus LUT im aktuellen Oktanten % /gamma exch def /beta exch def /alpha exch def /alpham 1 alpha sub def /betam 1 beta sub def /gammam 1 gamma sub def lin_v8b alpha beta gamma mul mul mul lin_v7b alpha beta gammam mul mul mul add lin_v6b alpha betam gamma mul mul mul add lin_v5b alpha betam gammam mul mul mul add lin_v4b alpham beta gamma mul mul mul add lin_v3b alpham beta gammam mul mul mul add lin_v2b alpham betam gamma mul mul mul add lin_v1b alpham betam gammam mul mul mul add } def %END Procedure b_abc %********************************************************************* /Jacobi_abc {%BEG Procedure Jacobi_abc % --- Jacobi_abc ----------------- % % --- Eingabe (stack): alpha (R-Richtung) beta (G-Richtung) gamma (B-Richtung) % --- Ausgabe (stack): Jacobi Matrix an der stelle abc im aktuellen Oktanten % in der reihenfolge abcdefghi % (a b c) % (d e f) % (g h i) % /gamma exch def /beta exch def /alpha exch def /alpham 1 alpha sub def /betam 1 beta sub def /gammam 1 gamma sub def lin_v5L lin_v1L sub betam gammam mul mul lin_v6L lin_v2L sub betam gamma mul mul add lin_v7L lin_v3L sub beta gammam mul mul add lin_v8L lin_v4L sub beta gamma mul mul add lin_v3L lin_v1L sub alpham gammam mul mul lin_v4L lin_v2L sub alpham gamma mul mul add lin_v7L lin_v5L sub alpha gammam mul mul add lin_v8L lin_v6L sub alpha gamma mul mul add lin_v2L lin_v1L sub alpham betam mul mul lin_v4L lin_v3L sub alpham beta mul mul add lin_v6L lin_v5L sub alpha betam mul mul add lin_v8L lin_v7L sub alpha beta mul mul add lin_v5a lin_v1a sub betam gammam mul mul lin_v6a lin_v2a sub betam gamma mul mul add lin_v7a lin_v3a sub beta gammam mul mul add lin_v8a lin_v4a sub beta gamma mul mul add lin_v3a lin_v1a sub alpham gammam mul mul lin_v4a lin_v2a sub alpham gamma mul mul add lin_v7a lin_v5a sub alpha gammam mul mul add lin_v8a lin_v6a sub alpha gamma mul mul add lin_v2a lin_v1a sub alpham betam mul mul lin_v4a lin_v3a sub alpham beta mul mul add lin_v6a lin_v5a sub alpha betam mul mul add lin_v8a lin_v7a sub alpha beta mul mul add lin_v5b lin_v1b sub betam gammam mul mul lin_v6b lin_v2b sub betam gamma mul mul add lin_v7b lin_v3b sub beta gammam mul mul add lin_v8b lin_v4b sub beta gamma mul mul add lin_v3b lin_v1b sub alpham gammam mul mul lin_v4b lin_v2b sub alpham gamma mul mul add lin_v7b lin_v5b sub alpha gammam mul mul add lin_v8b lin_v6b sub alpha gamma mul mul add lin_v2b lin_v1b sub alpham betam mul mul lin_v4b lin_v3b sub alpham beta mul mul add lin_v6b lin_v5b sub alpha betam mul mul add lin_v8b lin_v7b sub alpha beta mul mul add } def %END Procedure Jacobi_abc %********************************************************************* /Inverse_mat {%BEG Procedure Inverse_mat % --- Inverse_mat ----------------- % % --- Eingabe (stack): Matrix in der reihenfolge abcdefghi % invertiert die Matrix (a b c) % (d e f) % (g h i) % --- Ausgabe (stack): Matrix % /i_i exch def /i_h exch def /i_g exch def /i_f exch def /i_e exch def /i_d exch def /i_c exch def /i_b exch def /i_a exch def /i_det i_a i_e i_i mul mul i_b i_d i_i mul mul sub i_a i_f i_h mul mul sub i_c i_d i_h mul mul add i_b i_f i_g mul mul add i_c i_e i_g mul mul sub def i_e i_i mul i_f i_h mul sub i_det div %a der inversen auf stack i_c i_h mul i_b i_i mul sub i_det div %b der inversen auf stack i_b i_f mul i_c i_e mul sub i_det div %c der inversen auf stack i_f i_g mul i_d i_i mul sub i_det div %d der inversen auf stack i_a i_i mul i_c i_g mul sub i_det div %e der inversen auf stack i_c i_d mul i_a i_f mul sub i_det div %f der inversen auf stack i_d i_h mul i_e i_g mul sub i_det div %g der inversen auf stack i_b i_g mul i_a i_h mul sub i_det div %h der inversen auf stack i_a i_e mul i_b i_d mul sub i_det div %i der inversen auf stack } def %END Procedure Inverse_mat %********************************************************************* /linear_finden {%BEG Procedure linear_finden % --- linear_finden ----------------- % % --- Eingabe (stack): iR iG iB ; Indizes eines LUT-Wertes, % kennzeichnet die dem Ursprung entfernteste Ecke des ausgewaehlten Raumbereiches % L* a* b* ; danach der zielpunkt als lab wert % --- Ausgabe (stack): Delta-E: Abstand zum Zielpunkt % alpha, beta, gamma die den kürzesten abstand zum gegebenen zielpunkt aufweisen % /lin_zielb exch def /lin_ziela exch def /lin_zielL exch def set_oktant /akt_a 0.5 def /akt_b 0.5 def /akt_c 0.5 def /last_L akt_a akt_b akt_c L_abc def /last_a akt_a akt_b akt_c a_abc def /last_b akt_a akt_b akt_c b_abc def /diff_L last_L lin_zielL sub def /diff_a last_a lin_ziela sub def /diff_b last_b lin_zielb sub def 0 %default rueckgabewert fuer delta-e (wird nie benutzt, aber fuer pop wichtig) 1 1 10 { pop %pop schleifenzaehler pop %pop letzes Delta-E akt_a akt_b akt_c Jacobi_abc Inverse_mat diff_b mul exch diff_a mul add exch diff_L mul add /delta_c exch def diff_b mul exch diff_a mul add exch diff_L mul add /delta_b exch def diff_b mul exch diff_a mul add exch diff_L mul add /delta_a exch def % akt_a akt_b akt_c % delta_a delta_b delta_c /akt_a akt_a delta_a sub def /akt_b akt_b delta_b sub def /akt_c akt_c delta_c sub def akt_a 0 lt {/akt_a 0 def} if akt_b 0 lt {/akt_b 0 def} if akt_c 0 lt {/akt_c 0 def} if 1 akt_a lt {/akt_a 1 def} if 1 akt_b lt {/akt_b 1 def} if 1 akt_c lt {/akt_c 1 def} if /last_L akt_a akt_b akt_c L_abc def /last_a akt_a akt_b akt_c a_abc def /last_b akt_a akt_b akt_c b_abc def /diff_L last_L lin_zielL sub def /diff_a last_a lin_ziela sub def /diff_b last_b lin_zielb sub def %/naechster %akt_a %akt_b %akt_c %last_L %last_a %last_b diff_L dup mul diff_a dup mul diff_b dup mul add add sqrt dup %Abbruch wenn Delta_e<0.1 0.1 lt {exit} if } for akt_a akt_b akt_c } def %END Procedure linear_finden %********************************************************************* /Lab2RGBinterpolation {%BEG Procedure Lab2RGBinterpolation /Ziel_b exch def /Ziel_a exch def /Ziel_L exch def Ziel_L Ziel_a Ziel_b Lab2RGB /now_delta_e exch def /B_next exch def /G_next exch def /R_next exch def /R_fin R_next nR 1 sub div def % defaults falls kein besserer wert gefunden /G_fin G_next nG 1 sub div def /B_fin B_next nB 1 sub div def -1 1 2 { R_next add /R_now exch def -1 1 2 { G_next add /G_now exch def -1 1 2 { B_next add /B_now exch def B_now 0 gt G_now 0 gt R_now 0 gt nB B_now gt nG G_now gt nR R_now gt and and and and and { R_now G_now B_now Ziel_L Ziel_a Ziel_b linear_finden /now_c exch def /now_b exch def /now_a exch def dup %rueckgabe delta-e doppeln now_delta_e lt { /now_delta_e exch def /Bs0 B_now 1 sub nB 1 sub div 255 mul round 255 div def /Bs1 B_now nB 1 sub div 255 mul round 255 div def /B_fin Bs0 1 now_c sub mul Bs1 now_c mul add def /Gs0 G_now 1 sub nG 1 sub div 255 mul round 255 div def /Gs1 G_now nG 1 sub div 255 mul round 255 div def /G_fin Gs0 1 now_b sub mul Gs1 now_b mul add def /Rs0 R_now 1 sub nR 1 sub div 255 mul round 255 div def /Rs1 R_now nR 1 sub div 255 mul round 255 div def /R_fin Rs0 1 now_a sub mul Rs1 now_a mul add def } { pop } ifelse } if } for } for } for R_fin G_fin B_fin } bind def %END Procedure Lab2RGBinterpolation } bind def %END procedure PROC_COLINT_IOF %**************************************************** %END 'DM10'OUTLIN11.PS for output 3D-linearization %**************************************************** %**************************************************** %BEG 'DM10'OUTLIN1X.PS Other procedures for sRGB output linearization %**************************************************** %BEG COLDATA_SRGB_00.PS %BEG TRANSFER_EARLY_F.TXT **********************************2012-02-01 %Early definition of FF_LM_setgray_F0 identical to former setgray /FF_LM_setgray_F0 {setgray} bind def /FF_LM_setrgbcolor_F0 {setrgbcolor} bind def /FF_LM_setcmykcolor_F0 {setcmykcolor} bind def /FF_LM_transfer_F0 {settransfer} bind def /FF_LM_colortransfer_F0 {setcolortransfer} bind def %END TRANSFER_EARLY_F.TXT **********************************2012-02-01 %***************************************************************************** /setcolortrans_F {%BEG procedure setcolortrans_F %1MR-Transform of setgray and setcmykcolor to FF_LM_de_setrgbcolor_F %Three procedures and use of the procedure FF_LM_de_setrgbcolor_F of main FF /setgray {%BEG procedure setgray_F dup dup FF_LM_de_setrgbcolor_F %STOPs } def %END procedure setgray_F /setcmykcolor {%BEG procedure setcmykcolor_F /FF_LM_k exch def /FF_LM_y exch def /FF_LM_m exch def /FF_LM_c exch def FF_LM_k 0 eq {%FF_LM_k=0 1 FF_LM_c sub 1 FF_LM_m sub 1 FF_LM_y sub FF_LM_de_setrgbcolor_F }%FF_LM_k=0 {%FF_LM_k#0 FF_LM_c 0 eq FF_LM_m 0 eq and FF_LM_y 0 eq and {%FF_LM_k#0 and c=m=y=0 achromatic 1 FF_LM_k sub dup dup FF_LM_de_setrgbcolor_F }%FF_LM_k#0 and c=m=y=0 achromatic {%FF_LM_k#0 and c or m or y#0 chromatic 1 FF_LM_c sub 1 FF_LM_k sub mul 1 FF_LM_m sub 1 FF_LM_k sub mul 1 FF_LM_y sub 1 FF_LM_k sub mul FF_LM_de_setrgbcolor_F } ifelse %FF_LM_k#0 and c or m or y#0 chromatic } ifelse %FF_LM_k#0 } def %END procedure setcmykcolor_F /setrgbcolor {%BEG procedure setrgbcolor_F /FF_LM_b exch def /FF_LM_g exch def /FF_LM_r exch def FF_LM_r FF_LM_g FF_LM_b FF_LM_de_setrgbcolor_F %STOPr } def %BEG procedure setrgbcolor_F /settransfer {FF_LM_transfer_F} def /setcolortransfer {FF_LM_colortransfer_F} def %******************************************************************* /FF_LM_de_setrgbcolor_F { %BEG FF_LM_de_setrgbcolor_F %assumes input of rgb, which is called rgb_dyF %calculation of intended rgb*dyF, LABCh*dyF %Lab2RGBinterpolation for colorm=1 %calculation of inverse rgb'*dyF, LABCh'*dyF, which produces rgb*dyF, LABCh*dyF %requires /hab*dy362Mi 362 array def %(y=s,d,e) %requires /rgb*dy362Mi 362 array def %(y=s,d,e) %requires /LAB*dyx362Mi 362 array def %(y=s,d,e, x=LabCh) /b_dyF exch def /g_dyF exch def /r_dyF exch def %calculation of i_dyF, c_dyF, and t_dyF /maxd r_dyF def g_dyF maxd gt {/maxd g_dyF def} if b_dyF maxd gt {/maxd b_dyF def} if /mind r_dyF def g_dyF mind lt {/mind g_dyF def} if b_dyF mind lt {/mind b_dyF def} if /i_dyF maxd def /c_dyF maxd mind sub def /t_dyF i_dyF c_dyF 0.5 mul sub def /hsiF r_dyF 030 sin mul g_dyF 150 sin mul add b_dyF 270 sin mul add %y_e r_dyF 030 cos mul g_dyF 150 cos mul add %x_e 0.0001 add atan 0.5 add cvi def %range 30 ... 390 %perhaps change %to decide hab*dyF/dsF/deF ! hsiF hab*ds362Mi 0 get sub 0 le {/hsiF hsiF 360 add def} if /hsiFm30 hsiF 30 sub def %range 00 ... 360 %test grey r_dyF g_dyF sub abs 0.002 le g_dyF b_dyF sub abs 0.002 le and {%grey, not grey /r*dyM 1 def /g*dyM 1 def /b*dyM 1 def /hsiM r*dyM 030 sin mul g*dyM 150 sin mul add b*dyM 270 sin mul add %y_d r*dyM 030 cos mul g*dyM 150 cos mul add %x_d 0.0001 add atan def hsiM hab*ds362Mi 0 get sub 0 le {/hsiM hsiM 360 add def} if /hsiMm30 hsiM 30 sub def /LAB*LdyM L*Wioa def /LAB*adyM 0 def /LAB*bdyM 0 def /LAB*LdyF L*Nioa r_dyF L*Wioa L*Nioa sub mul add def /LAB*adyF 0 def /LAB*bdyF 0 def /r*dyF r_dyF def /g*dyF g_dyF def /b*dyF b_dyF def /r'*dyF r_dyF def /g'*dyF g_dyF def /b'*dyF b_dyF def }%grey {%color hsiFm30 0 lt {/hsiFm30 0 def} if %for correction to be deleted! hsiFm30 360 gt {/hsiFm30 360 def} if %calculation of intended rgb*dyM, LAB*LabdyM deintp 0 eq {%deintp=0 /r*dyM r*dd362Mi hsiFm30 get def /g*dyM g*dd362Mi hsiFm30 get def /b*dyM b*dd362Mi hsiFm30 get def /LAB*LdyM LAB*Ldd362Mi hsiFm30 get def /LAB*adyM LAB*add362Mi hsiFm30 get def /LAB*bdyM LAB*bdd362Mi hsiFm30 get def } if %deintp=0 deintp 1 eq {%deintp=1 /r*dyM r*de362Mi hsiFm30 get def /g*dyM g*de362Mi hsiFm30 get def /b*dyM b*de362Mi hsiFm30 get def /LAB*LdyM LAB*Lde362Mi hsiFm30 get def /LAB*adyM LAB*ade362Mi hsiFm30 get def /LAB*bdyM LAB*bde362Mi hsiFm30 get def } if %deintp=1 %calculation of intended rgb*dyF, LAB*LabdyF c_dyF 1 eq {%c_dy=1,#1 /r*dyF r*dyM def /g*dyF g*dyM def /b*dyF b*dyM def /LAB*LdyF LAB*LdyM def /LAB*adyF LAB*adyM def /LAB*bdyF LAB*bdyM def }%c_dyF=1 {%c_dyF#1 /t00 1.0 c_dyF 0.5 mul sub def /t0x 0.5 t_dyF 0.5 sub 0.5 mul t00 0.5 sub div add def /r*dyF t0x r*dyM t0x sub c_dyF mul add def /g*dyF t0x g*dyM t0x sub c_dyF mul add def /b*dyF t0x b*dyM t0x sub c_dyF mul add def /L*Xioa L*Nioa t0x L*Wioa L*Nioa sub mul add def /LAB*LdyF L*Xioa LAB*LdyM L*Xioa sub c_dyF mul add def /LAB*adyF 0 LAB*adyM 0 sub c_dyF mul add def /LAB*bdyF 0 LAB*bdyM 0 sub c_dyF mul add def } ifelse %c_dyF=1,#1 } ifelse %grey or color %only for control, not used: calculation of hsiM /hsiM r*dyM 030 sin mul g*dyM 150 sin mul add b*dyM 270 sin mul add %y_d r*dyM 030 cos mul g*dyM 150 cos mul add %x_d 0.0001 add atan def hsiM hab*ds362Mi 0 get sub 0 le {/hsiM hsiM 360 add def} if /hsiMm30 hsiM 30 sub def %only for control, not used: calculation of ict*dyM and ict*dyF %calculation of i*dyM, c*dyM, and t*dyM /maxd r*dyM def g*dyM maxd gt {/maxd g*dyM def} if b*dyM maxd gt {/maxd b*dyM def} if /mind r*dyM def g*dyM mind lt {/mind g*dyM def} if b*dyM mind lt {/mind b*dyM def} if /i*dyM maxd def /c*dyM maxd mind sub def /t*dyM i*dyM c*dyM 0.5 mul sub def %%only for control, not used: calculation of i*dyF, c*dyF, and t*dyF /maxd r*dyF def g*dyF maxd gt {/maxd g*dyF def} if b*dyF maxd gt {/maxd b*dyF def} if /mind r*dyF def g*dyF mind lt {/mind g*dyF def} if b*dyF mind lt {/mind b*dyF def} if /i*dyF maxd def /c*dyF maxd mind sub def /t*dyF i*dyF c*dyF 0.5 mul sub def colorm 0 eq {%colorm=0 r*dyF g*dyF b*dyF }%colorm=0 {%colorm=1 LAB*LdyF LAB*adyF LAB*bdyF Lab2RGBinterpolation /b'*dyF exch def /g'*dyF exch def /r'*dyF exch def r'*dyF g'*dyF b'*dyF } ifelse %colorm=1 FF_LM_setrgbcolor_F } bind def %END FF_LM_de_setrgbcolor_F /FF_LM_xchart_gamma_F {/xchart where {pop /xchartN xchart 8 idiv def /xchartP xchart xchart 8 idiv 8 mul sub def} {/xchartN 2.0 def %default /xchartP 0.5 def} ifelse /gamma_F 2.4 xchartP 0.18 mul sub 2.4 div 1 2.4 xchartN 0.18 mul sub 2.4 div div mul def gamma_F exp } def /FF_LM_setrgbcolor_F {%FF_LM_setrgbcolor_F /FF_LM_b0L exch def /FF_LM_g0L exch def /FF_LM_r0L exch def FF_LM_r0L 0 le {/FF_LM_r0L 0.0001 def} if FF_LM_g0L 0 le {/FF_LM_g0L 0.0001 def} if FF_LM_b0L 0 le {/FF_LM_b0L 0.0001 def} if /FF_LM_r1F FF_LM_r0L FF_LM_xchart_gamma_F def /FF_LM_g1F FF_LM_g0L FF_LM_xchart_gamma_F def /FF_LM_b1F FF_LM_b0L FF_LM_xchart_gamma_F def FF_LM_r1F FF_LM_g1F FF_LM_b1F FF_LM_setrgbcolor_F0 } def %FF_LM_setrgbcolor_F /FF_LM_transfer_F {{FF_LM_xchart_gamma_F} FF_LM_transfer_F0} def /FF_LM_colortransfer_F {{FF_LM_xchart_gamma_F} {FF_LM_xchart_gamma_F} {FF_LM_xchart_gamma_F} FF_LM_colortransfer_F0} def } def %END procedure setcolortrans_F %******************************************************************* /Colordata_sRGB_F {%BEG procedure Colordata_sRGB_F /Xrx089 729 array def /Yrx089 729 array def /Zrx089 729 array def /Xrx100 729 array def /Yrx100 729 array def /Zrx100 729 array def /R0 729 array def /G0 729 array def /B0 729 array def %/RGB0_to_XYZj_F { %BEG procedure RGB0_to_XYZj_F %transfers standard sRGB data (IEC 61966-2-1) to XYZ data for 9x9x9=729 colours %normalized XYZ data with Y=88.59 for display white, compare ISO 9241-306:2008. %requires /(XYZ)rx089 729 array def % /(XYZ)rx100 729 array def %requires in addition /RGB0_F 1080 array def %/Xrx089 729 array def %/Yrx089 729 array def %/Zrx089 729 array def %/Xrx100 729 array def %/Yrx100 729 array def %/Zrx100 729 array def %/R0 729 array def %/G0 729 array def %/B0 729 array def %row no.1 and 2: 9xrgb /imax 08 def /jmax 08 def /kmax 08 def 0 1 kmax {/k exch def %beg k=0,08 0 1 jmax {/j exch def %beg j=0,jmax 0 1 imax {/i exch def %beg i=0,imax /n i j 9 mul add k 81 mul add def R0 n k kmax div 1000 mul put G0 n j jmax div 1000 mul put B0 n i imax div 1000 mul put } for %end i=0,jmax } for %end j=0,jmax } for %end k=0,kmax /IM0 729 def /IM1 IM0 1 sub def 0 1 IM1 {/i exch def %i=0,IM1 R0 i get 0.04045 le %equations of IEC 61966-2-1:2003 {/RsRGB R0 i get 12.92 div def} {/RsRGB R0 i get 0.001 mul 0.055 add 1.055 div 2.4 exp def} ifelse G0 i get 0.04045 le {/GsRGB G0 i get 12.92 div def} {/GsRGB G0 i get 0.001 mul 0.055 add 1.055 div 2.4 exp def} ifelse B0 i get 0.04045 le {/BsRGB B0 i get 12.92 div def} {/BsRGB B0 i get 0.001 mul 0.055 add 1.055 div 2.4 exp def} ifelse Xrx100 i 0.4124 RsRGB mul 0.3576 GsRGB mul add 0.1805 BsRGB mul add 100 mul put Yrx100 i 0.2126 RsRGB mul 0.7152 GsRGB mul add 0.0722 BsRGB mul add 100 mul put Zrx100 i 0.0193 RsRGB mul 0.1192 GsRGB mul add 0.9505 BsRGB mul add 100 mul put } for %i=0,IM1 0 1 IM1 {/i exch def %i=0,IM1 Xrx089 i Xrx100 i get 0.8859 mul put Yrx089 i Yrx100 i get 0.8859 mul put Zrx089 i Zrx100 i get 0.8859 mul put } for %i=0,IM1 /iN 0 def /iW 728 def /XLN100 Xrx100 iN get def /YLN100 Yrx100 iN get def /ZLN100 Zrx100 iN get def /XLW100 Xrx100 iW get def /YLW100 Yrx100 iW get def /ZLW100 Zrx100 iW get def /XLN089 Xrx089 iN get def /YLN089 Yrx089 iN get def /ZLN089 Zrx089 iN get def /XLW089 Xrx089 iW get def /YLW089 Yrx089 iW get def /ZLW089 Zrx089 iW get def % achromatic (D65) colours /XLWD65100 95.04 def /YLWD65100 100.00 def /ZLWD65100 108.88 def /XLWD65089 95.04 0.8859 mul def /YLWD65089 100.00 0.8859 mul def /ZLWD65089 108.88 0.8859 mul def /XLN001 XLWD65100 100 div def /YLN001 YLWD65100 100 div def /ZLN001 ZLWD65100 100 div def %} bind def %END procedure RGB0_to_XYZj_F %/xchartj_XYZj_FAB729a_F { %BEG Procedure xchartj_FAB729a_F %transfer from XYZj data to LAB729a CIELAB data for 9x9x9=729 colours %requires 0<= xchartj <=10 (11 luminance reflections) %requires /(XYZ)x089 3240 array def (x=rc,ra,na,la) %requires /(Lab)x089 3240 array def (x=rc,ra,na,la) %requires /x729 729 array def (x=X,Y,Z) %not adapted %requires /x729 729 array def (x=L,a,b) %not adapted %requires /x729a 729 array def (x=L,a,b) %adapted /Lrc089 729 array def /arc089 729 array def /brc089 729 array def /Xrc089 729 array def /Yrc089 729 array def /Zrc089 729 array def /Lra089 729 array def /ara089 729 array def /bra089 729 array def /Xra089 729 array def /Yra089 729 array def /Zra089 729 array def /Lna089 729 array def /ana089 729 array def /bna089 729 array def /Xna089 729 array def /Yna089 729 array def /Zna089 729 array def /Lla089 729 array def /ala089 729 array def /bla089 729 array def /Xla089 729 array def /Yla089 729 array def /Zla089 729 array def /Xj 729 array def /Yj 729 array def /Zj 729 array def /LAB*Lj 729 array def %not adapted /LAB*aj 729 array def /LAB*bj 729 array def /LAB*Lja 729 array def %adapted /LAB*aja 729 array def /LAB*bja 729 array def /DecodeXYZ* {dup 6 29 div ge {dup dup mul mul} {4 29 div sub 108 841 div mul} ifelse} bind def /XD65W 95.04 def /YD65W 100.00 def /ZD65W 108.88 def /XD50W 96.42 def /YD50W 100.00 def /ZD50W 82.51 def /DAKTE [(D65) (D50)] def /ilf 8 array def /ilf [0.00 0.25 0.50 1.00 2.00 4.00 8.00 16.00] def /Lrefl 11 array def /Lrefl [(0%) (0%) (0%) (0%) (0,6%) (1,2%) (2,5%) (5%) (10%) (20%) (40%)] def xchartj 2 le {/il 0 def} {/il xchartj 3 sub def} ifelse %Reference black and factors /YrN 2.52 def /Xtref089 YrN ilf il get mul XLN001 mul def /Ytref089 YrN ilf il get mul def /Ztref089 YrN ilf il get mul ZLN001 mul def /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 /IM1 728 def 0 1 IM1 {/i exch def %i=0,IM1 Xrc089 i Xrx089 i get put Yrc089 i Yrx089 i get put Zrc089 i Zrx089 i get put /XQ Xrc089 i get XLWD65100 div def /YQ Yrc089 i get YLWD65100 div def /ZQ Zrc089 i get ZLWD65100 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 Lrc089 i YQ 0.008856 lt {903.3 YQ mul} {YQ 0.33333333 exp 116 mul 16 sub} ifelse put arc089 i 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 brc089 i 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,IM1 /L*N Lrc089 0 get def /A*N arc089 0 get def /B*N brc089 0 get def /L*W Lrc089 728 get def /A*W arc089 728 get def /B*W brc089 728 get def 0 1 IM1 {/i exch def %i=0,IM1 Lra089 i Lrc089 i get put /l*CIE Lrc089 i 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 ara089 i arc089 i get A*N sub a*s sub put bra089 i brc089 i get B*N sub b*s sub put } for %i=0,IM1 0 1 IM1 {/i exch def %i=0,IM1 /X* {Lra089 i get 16 add 116 div ara089 i get 500 div add} bind def /Y* {Lra089 i get 16 add 116 div} bind def /Z* {Lra089 i get 16 add 116 div bra089 i get 200 div sub} bind def Xra089 i X* DecodeXYZ* XLWD65100 mul put Yra089 i Y* DecodeXYZ* YLWD65100 mul put Zra089 i Z* DecodeXYZ* ZLWD65100 mul put } for %i=0,IM1 xchartj 2 ge {%xchartj>=2 %for white X data /Xwref089 Xra089 728 get def /Ywref089 Yra089 728 get def /Zwref089 Zra089 728 get def %for black X data /YrN Yra089 0 get def /Xnref089 YrN XLN001 mul def /Ynref089 YrN def /Znref089 YrN ZLN001 mul def /IM1 728 def 0 1 IM1 {/i exch def %i=1,IM1 Xna089 i Xra089 i get Xnref089 sub Xwref089 Xwref089 Xnref089 sub div mul put Yna089 i Yra089 i get Ynref089 sub Ywref089 Ywref089 Ynref089 sub div mul put Zna089 i Zra089 i get Znref089 sub Zwref089 Zwref089 Znref089 sub div mul put } for %i=1,IM1 0 1 IM1 {/i exch def %i=1,IM1 /XQ Xna089 i get XLWD65100 div def /YQ Yna089 i get YLWD65100 div def /ZQ Zna089 i get ZLWD65100 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 Lna089 i YQ 0.008856 lt {903.3 YQ mul} {YQ 0.33333333 exp 116 mul 16 sub} ifelse put ana089 i 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 bna089 i 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=1,IM1 } if %xchart>=2 xchartj 3 ge {%xchart>=3 %for white X data /Xwref089 Xra089 728 get def /Ywref089 Yra089 728 get def /Zwref089 Zra089 728 get def /kn Ywref089 Ywref089 Ytref089 sub div def 0 1 IM1 {/i exch def %i=1,IM1 Xla089 i Xna089 i get kn div Xtref089 add put Yla089 i Yna089 i get kn div Ytref089 add put Zla089 i Zna089 i get kn div Ztref089 add put } for %i=1,IM1 0 1 IM1 {/i exch def %i=1,IM1 /XQ Xla089 i get XLWD65100 div def /YQ Yla089 i get YLWD65100 div def /ZQ Zla089 i get ZLWD65100 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 Lla089 i YQ 0.008856 lt {903.3 YQ mul} {YQ 0.33333333 exp 116 mul 16 sub} ifelse put ala089 i 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 bla089 i 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=1,IM1 } if %xchart>=3 xchartj 0 eq {%xchartj=0 (1x) 0 1 IM1 {/i exch def %i=0,IM1 LAB*Lj i Lrc089 i get put LAB*aj i arc089 i get put LAB*bj i brc089 i get put Xj i Xrc089 i get put Yj i Yrc089 i get put Zj i Zrc089 i get put } for %i=0,IM1 } if %xchartj=0 (1x) xchartj 1 eq {%xchartj=1 (1x) 0 1 IM1 {/i exch def %i=0,IM1 LAB*Lj i Lra089 i get put LAB*aj i ara089 i get put LAB*bj i bra089 i get put Xj i Xra089 i get put Yj i Yra089 i get put Zj i Zra089 i get put } for %i=0,IM1 } if %xchartj=1 (1x) xchartj 2 eq {%xchartj=2 (1x) 0 1 IM1 {/i exch def %i=0,IM1 LAB*Lj i Lna089 i get put LAB*aj i ana089 i get put LAB*bj i bna089 i get put Xj i Xna089 i get put Yj i Yna089 i get put Zj i Zna089 i get put } for %i=0,IM1 } if %xchartj=2 (1x) xchartj 3 ge {%xchartj=3,4,5,6,7,8,9,10 (8x) 0 1 728 {/i exch def %i=0,IM1 LAB*Lj i Lla089 i get put LAB*aj i ala089 i get put LAB*bj i bla089 i get put Xj i Xla089 i get put Yj i Yla089 i get put Zj i Zla089 i get put } for %i=0,IM1 } if %xchartj=3,4,5,6,7,8,9,10 (8x) %Adaptation /L*Nio LAB*Lj 000 get def /A*Nio LAB*aj 000 get def /B*Nio LAB*bj 000 get def /L*Wio LAB*Lj 728 get def /A*Wio LAB*aj 728 get def /B*Wio LAB*bj 728 get def /A*Dio A*Wio A*Nio sub def /B*Dio B*Wio B*Nio sub def 0 1 728 {/j exch def %j=0,728 LAB*Lja j LAB*Lj j get put /l*CIE LAB*Lj j 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*aja j LAB*aj j get A*Nio sub a*s sub put LAB*bja j LAB*bj j get B*Nio sub b*s sub put } for %j=0,728 /L*Nioa LAB*Lja 0 get def /A*Nioa LAB*aja 0 get def /B*Nioa LAB*bja 0 get def /L*Wioa LAB*Lja 728 get def /A*Wioa LAB*aja 728 get def /B*Wioa LAB*bja 728 get def /nR 9 def %lut size /nG 9 def /nB 9 def /nges nR nG nB mul mul def /lut 2187 array def %729x3=2187 (only 9x9x9 used) 0 1 728 {/i exch def %i=0,728 /i3 i 3 mul def lut i3 LAB*Lja i get put lut i3 1 add LAB*aja i get put lut i3 2 add LAB*bja i get put } for %i=0,729 %} bind def %END xchartj_XYZj_FAB729a_F } bind def %END procedure Colordata_sRGB_F %***************************************************************************** %BEG Procedure PROC_SPEC_IOF Colour special for NP-file 20120401 %***************************************************************************** %different procedures: % proc_LAB729a_to_LAB*LabCh64M and proc_LAB*LabCh64M_to_tab362_dy %*********************************************************** /proc_LAB729a_to_LAB*LabCh64M { %BEG Procedure proc_LAB729a_to_LAB*LabCh64M %transfer from proc_LAB729a_to_LAB*LabCh64M, %9x9x9=729 steps used for LAB729a %requires /LAB*LabCh64M 64 array def %requires in addition /LAB729a 729 array def /LAB*Ldd64M 64 array def /LAB*add64M 64 array def /LAB*bdd64M 64 array def /LAB*Cdd64M 64 array def /LAB*hdd64M 64 array def /hab*dd64M 64 array def /M1jx 49 array def 0 1 5 {/xtonj exch def %xtonj=0,5 0 1 7 {/j exch def %j=0,7 /ja xtonj 8 mul j add def xtonj 0 eq {/jx 648 j 09 mul add def} if %see O00Y-O83Y, -0 xtonj 1 eq {/jx 720 j 81 mul sub def} if %see Y00L-Y83L, -81 xtonj 2 eq {/jx 072 j add def} if %see L00C-L83C, +01 xtonj 3 eq {/jx 080 j 09 mul sub def} if %see C00V-C83V, -09 xtonj 4 eq {/jx 008 j 81 mul add def} if %see V00M-V83M, -81 xtonj 5 eq {/jx 656 j sub def} if %see M00O-M83O, +01 LAB*Ldd64M ja LAB*Lja jx get put LAB*add64M ja LAB*aja jx get put LAB*bdd64M ja LAB*bja jx get put LAB*Cdd64M ja LAB*add64M ja get dup mul LAB*bdd64M ja get dup mul add sqrt put LAB*hdd64M ja LAB*bdd64M ja get LAB*add64M ja get 0.0001 add atan put xtonj 5 eq LAB*hdd64M ja get 90 le and {LAB*hdd64M ja LAB*hdd64M ja get 360 add put} if M1jx ja jx put } for %j=0,7 } for %xtonj=0,5 M1jx 48 M1jx 0 get put 0 1 15 {/i exch def %i=0,15 LAB*Ldd64M 48 i add LAB*Ldd64M i get put LAB*add64M 48 i add LAB*add64M i get put LAB*bdd64M 48 i add LAB*bdd64M i get put LAB*Cdd64M 48 i add LAB*Cdd64M i get put LAB*hdd64M 48 i add LAB*hdd64M i get 360 add put } for %i=1,15 0 1 63 {/i exch def %i=0,63 hab*dd64M i LAB*hdd64M i get put } for %i=0,63 %data test according to increasing hue angle and appropriate correction /xtesthuea -1 def /xtesthuei 64 array def 0 1 48 {/i exch def %i=0,49 hab*dd64M i get hab*dd64M i 1 add get gt {/xtesthuea xtesthuea 1 add def xtesthuei xtesthuea i put hab*dd64M i 1 add hab*dd64M i get put LAB*Ldd64M i 1 add LAB*Ldd64M i get put LAB*add64M i 1 add LAB*add64M i get put LAB*bdd64M i 1 add LAB*bdd64M i get put LAB*Cdd64M i 1 add LAB*Cdd64M i get put LAB*hdd64M i 1 add LAB*hdd64M i get put } if } for %i=0,49 } bind def %END proc_LAB729a_to_LAB*LabCh64M %*********************************************************** /proc_LAB*LabCh64M_to_tab362_dy { %BEG procedure proc_LAB*LabCh64M_to_tab362_dy /LAB*e 40 array def %8x5=40 LabCh* /LAB*e [39.92 58.74 27.99 0.0 0.0 %0 00_04 R CIE No.09 elementary in LAB 81.26 -2.89 71.56 0.0 0.0 %1 05_09 J CIE No.10 52.23 -42.42 13.60 0.0 0.0 %2 10_14 G CIE No.11 0.0 0.0 0.0 0.0 0.0 %3 15_19 Cgb to be calculated 30.57 1.41 -46.47 0.0 0.0 %4 20_24 B CIE No.12 0.0 0.0 0.0 0.0 0.0 %5 25_29 Mbr to be calculated 39.92 58.74 27.99 0.0 0.0 %6 30_34 Re+360 to be calculated 81.26 -2.89 71.56 0.0 0.0 %7 35_39 Ye+360 to be calculated ] def %add no. 03_04 Re LAB*e 03 LAB*e 01 get dup mul LAB*e 02 get dup mul add sqrt put LAB*e 04 LAB*e 02 get LAB*e 01 get 0.0001 add atan put %add no. 08_09 Ye LAB*e 08 LAB*e 06 get dup mul LAB*e 07 get dup mul add sqrt put LAB*e 09 LAB*e 07 get LAB*e 06 get 0.0001 add atan put %add no. 13_14 Ge LAB*e 13 LAB*e 11 get dup mul LAB*e 12 get dup mul add sqrt put LAB*e 14 LAB*e 12 get LAB*e 11 get 0.0001 add atan put %add no. 23_24 Be LAB*e 23 LAB*e 21 get dup mul LAB*e 22 get dup mul add sqrt put LAB*e 24 LAB*e 22 get LAB*e 21 get 0.0001 add atan put %add no. 33_34 Re+360 LAB*e 33 LAB*e 31 get dup mul LAB*e 32 get dup mul add sqrt put LAB*e 34 LAB*e 32 get LAB*e 31 get 0.0001 add atan 360 add put %add no. 38_39 Ye+360 LAB*e 38 LAB*e 36 get dup mul LAB*e 37 get dup mul add sqrt put LAB*e 39 LAB*e 37 get LAB*e 36 get 0.0001 add atan 360 add put %new no. 15_19 Cgb with Ge_Be LAB*e 19 LAB*e 14 get LAB*e 24 get add 0.5 mul put %hab LAB*e 18 LAB*e 13 get LAB*e 23 get add 0.5 mul put %C*ab LAB*e 15 LAB*e 10 get LAB*e 20 get add 0.5 mul put %L* LAB*e 16 LAB*e 18 get LAB*e 19 get cos mul put %a* LAB*e 17 LAB*e 18 get LAB*e 19 get sin mul put %b* %new no. 25_29 Mbr with Be_Re+360 LAB*e 29 LAB*e 24 get LAB*e 34 get add 0.5 mul put %hab LAB*e 28 LAB*e 23 get LAB*e 33 get add 0.5 mul put %C*ab LAB*e 25 LAB*e 20 get LAB*e 00 get add 0.5 mul put %L* LAB*e 26 LAB*e 28 get LAB*e 29 get cos mul put %a* LAB*e 27 LAB*e 28 get LAB*e 29 get sin mul put %b* /LAB*He 8 array def 0 1 7 {/i exch def %i=0,7 LAB*He i LAB*e i 5 mul 4 add get put } for %i=0,7 /hab*de64M 50 array def 0 1 47 {/i exch def %i=0,47 /i8 i 8 idiv def /i8d i i8 8 mul sub def /dLAB*He LAB*He i8 1 add get LAB*He i8 get sub 8 div def hab*de64M i LAB*He i8 get dLAB*He i8d mul add put } for %i=0,47 hab*de64M 48 hab*de64M 0 get 360 add put hab*de64M 49 hab*de64M 1 get 360 add put /LAB*Hs 8 array def /LAB*Hs [30. 90. 150. 210. 270. 330. 390. 450.] def /hab*ds64M 50 array def 0 1 47 {/i exch def %i=0,47 /i8 i 8 idiv def /i8d i i8 8 mul sub def /dLAB*Hs LAB*Hs i8 1 add get LAB*Hs i8 get sub 8 div def hab*ds64M i LAB*Hs i8 get dLAB*Hs i8d mul add put } for %i=0,47 hab*ds64M 48 hab*ds64M 0 get 360 add put hab*ds64M 49 hab*ds64M 1 get 360 add put %***************** calculation of LAB*LabChd362Mi and rgb*dd362Mi %***************** for 362 elementary hue angles /LAB*Ldd362Mi 362 array def /LAB*add362Mi 362 array def /LAB*bdd362Mi 362 array def /LAB*Cdd362Mi 362 array def /LAB*hdd362Mi 362 array def /r*dd362Mi 362 array def /g*dd362Mi 362 array def /b*dd362Mi 362 array def %******default rgb-input data for output of device colours /r*dd64M 64 array def /r*dd64M [1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %R 1.000 0.875 0.750 0.625 0.500 0.375 0.250 0.125 %J 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %G 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %C 0.000 0.125 0.250 0.375 0.500 0.625 0.750 0.875 %B 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %M 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %R 1.000 0.875 0.750 0.625 0.500 0.375 0.250 0.125 %J ] def /g*dd64M 64 array def /g*dd64M [0.000 0.125 0.250 0.375 0.500 0.625 0.750 0.875 %R 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %J 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %G 1.000 0.875 0.750 0.625 0.500 0.375 0.250 0.125 %C 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %B 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %M 0.000 0.125 0.250 0.375 0.500 0.625 0.750 0.875 %R 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %J ] def /b*dd64M 64 array def /b*dd64M [0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %R 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %J 0.000 0.125 0.250 0.375 0.500 0.625 0.750 0.875 %G 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %C 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %B 1.000 0.875 0.750 0.625 0.500 0.375 0.250 0.125 %M 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %R 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %J ] def %calculate all data of 16+1=17 step elementary colour circle /ind64M 17 array def /ind64M %R00Y R25Y R50Y R75Y Y00G Y25G Y50G Y75G [0 2 4 6 8 10 12 14 %G00B G25B G50B G75G B00R B25R B50R B75R R00Y 16 20 24 28 32 36 40 44 0 ] def %actual 16 step device circle + N + W /r*dd18M 18 array def /g*dd18M 18 array def /b*dd18M 18 array def 0 1 15 {/i exch def %i=0,15 /indi ind64M i get def r*dd18M i r*dd64M indi get put %16 device colours g*dd18M i g*dd64M indi get put b*dd18M i b*dd64M indi get put } for %i=0,15 r*dd18M 16 0 put %N g*dd18M 16 0 put b*dd18M 16 0 put r*dd18M 17 1 put %W g*dd18M 17 1 put b*dd18M 17 1 put %actual 6 step device circle + N + W /r*dd08M 08 array def /g*dd08M 08 array def /b*dd08M 08 array def 0 1 5 {/i exch def %i=0,5 r*dd08M i r*dd64M i 8 mul get put %6 device colours g*dd08M i g*dd64M i 8 mul get put b*dd08M i b*dd64M i 8 mul get put } for %i=0,5 r*dd08M 6 0 put %N g*dd08M 6 0 put b*dd08M 6 0 put r*dd08M 7 1 put %W g*dd08M 7 1 put b*dd08M 7 1 put 0 1 361 {/i exch def %i=0,361 %default only for test r*dd362Mi i 0 put %of irregularities g*dd362Mi i 0 put b*dd362Mi i 0 put LAB*Ldd362Mi i 0.0001 put LAB*add362Mi i 0 put LAB*bdd362Mi i 0 put LAB*Cdd362Mi i 0 put LAB*hdd362Mi i 0 put } for %i=0,361 % s-data 030,0 -> LAB*hdd64M 0 get -> LAB*Ldd362Mi 30,0 put: LAB*hdd362Mi=40 % s-data 037,5 -> LAB*hdd64M 1 get -> LAB*Ldd362Mi 37,5 put: LAB*hdd362Mi=41,3 % s-data 045,0 -> LAB*hdd64M 2 get -> LAB*Ldd362Mi 45,0 put: LAB*hdd362Mi=44,6 % s-data 052,5 -> LAB*hdd64M 3 get -> LAB*Ldd362Mi 52,5 put: LAB*hdd362Mi=50,7 %... % s-data 090,0 -> LAB*hdd64M 8 get -> LAB*Ldd362Mi 90,0 put: LAB*hdd362Mi=102,8 % s-data 330,0 -> LAB*hdd64M 41 get -> LAB*Ldd362Mi 330,0 put: LAB*hdd362Mi=328 % s-data 337,5 -> LAB*hdd64M 42 get -> LAB*Ldd362Mi 337,5 put: LAB*hdd362Mi=334 % s-data 345,0 -> LAB*hdd64M 43 get -> LAB*Ldd362Mi 345,0 put: LAB*hdd362Mi=341 % s-data 352,5 -> LAB*hdd64M 44 get -> LAB*Ldd362Mi 352,5 put: LAB*hdd362Mi=351 % s-data 360,0 -> LAB*hdd64M 45 get -> LAB*Ldd362Mi 360,0 put: LAB*hdd362Mi=352 %... % s-data 390,0 -> LAB*hdd64M 49 get -> LAB*Ldd362Mi 390,0 put: LAB*hdd362Mi=400 0 15 345 {/i exch def %i=0,15,345 /ix00 i 15 idiv 2 mul def /ix01 ix00 1 add def /ix02 ix00 2 add def 0 1 14 {/j exch def %j=0,14 j 07 le {%j<=7 /XIE j 7.5 div def /i0 i j add def /ix0 ix00 def /ix1 ix01 def }%j<=7 {%j>7 /XIE j 8 sub 0.5 add 7.5 div def /i0 i j add def /ix0 ix01 def /ix1 ix02 def } ifelse %j>7 LAB*Ldd362Mi i0 LAB*Ldd64M ix0 get LAB*Ldd64M ix1 get LAB*Ldd64M ix0 get sub XIE mul add put LAB*Cdd362Mi i0 LAB*Cdd64M ix0 get LAB*Cdd64M ix1 get LAB*Cdd64M ix0 get sub XIE mul add put LAB*hdd362Mi i0 LAB*hdd64M ix0 get LAB*hdd64M ix1 get LAB*hdd64M ix0 get sub XIE mul add dup 90 gt i0 45 le and {360 sub} if put LAB*add362Mi i0 LAB*Cdd362Mi i0 get LAB*hdd362Mi i0 get cos mul put LAB*bdd362Mi i0 LAB*Cdd362Mi i0 get LAB*hdd362Mi i0 get sin mul put r*dd362Mi i0 r*dd64M ix0 get r*dd64M ix1 get r*dd64M ix0 get sub XIE mul add put g*dd362Mi i0 g*dd64M ix0 get g*dd64M ix1 get g*dd64M ix0 get sub XIE mul add put b*dd362Mi i0 b*dd64M ix0 get b*dd64M ix1 get b*dd64M ix0 get sub XIE mul add put } for %j=0,14 } for %i0=0,15,345 0 1 1 {/i exch def %i=0,1 LAB*Ldd362Mi 360 i add LAB*Ldd362Mi i get put LAB*add362Mi 360 i add LAB*add362Mi i get put LAB*bdd362Mi 360 i add LAB*bdd362Mi i get put LAB*Cdd362Mi 360 i add LAB*Cdd362Mi i get put LAB*hdd362Mi 360 i add LAB*hdd362Mi i get 360 add put r*dd362Mi 360 i add r*dd362Mi i get put g*dd362Mi 360 i add g*dd362Mi i get put b*dd362Mi 360 i add b*dd362Mi i get put } for %i=0,1 /hab*dd362Fi 362 array def 0 1 361 {/i exch def %i=0,361 hab*dd362Fi i LAB*hdd362Mi i get put %floating point F } for %i=0,361 %***************** calculation of hab*ds362Mi %integer %***************** for 362 standard hue angles /hab*ds362Mi 362 array def 0 1 361 {/i exch def %i=0,361 %range 30..391 hab*ds362Mi i 30 i add put %always integer } for %i=0,361 %***************** calculation of LAB*LabChs362Mi and rgb*ds362Mi %***************** for 362 device hue angles /LAB*Lds362Mi 362 array def /LAB*ads362Mi 362 array def /LAB*bds362Mi 362 array def /LAB*Cds362Mi 362 array def /LAB*hds362Mi 362 array def /r*ds362Mi 362 array def /g*ds362Mi 362 array def /b*ds362Mi 362 array def 0 1 361 {/i exch def %i=0,361 %default only for test r*ds362Mi i 0 put %of irregularities g*ds362Mi i 0 put b*ds362Mi i 0 put LAB*Lds362Mi i 0.0001 put LAB*ads362Mi i 0 put LAB*bds362Mi i 0 put LAB*Cds362Mi i 0 put LAB*hds362Mi i 0 put } for %i=0,361 0 1 359 {/i0 exch def %i=0,359 /i0i hab*ds362Mi i0 get def %integer range 30...390 i0i hab*dd362Fi 0 get lt {/i0i i0i 360 add def} if 0 1 47 {/ix0 exch def %ix0=0,48 /ix1 ix0 1 add def i0i LAB*hdd64M ix0 get sub 0 ge i0i LAB*hdd64M ix1 get sub 0 lt and {%ge..lt /XIE i0i LAB*hdd64M ix0 get sub LAB*hdd64M ix1 get LAB*hdd64M ix0 get sub div def LAB*Lds362Mi i0 LAB*Ldd64M ix0 get LAB*Ldd64M ix1 get LAB*Ldd64M ix0 get sub XIE mul add put LAB*Cds362Mi i0 LAB*Cdd64M ix0 get LAB*Cdd64M ix1 get LAB*Cdd64M ix0 get sub XIE mul add put LAB*hds362Mi i0 LAB*hdd64M ix0 get LAB*hdd64M ix1 get LAB*hdd64M ix0 get sub XIE mul add dup 90 gt i0 45 le and {360 sub} if put LAB*ads362Mi i0 LAB*Cds362Mi i0 get LAB*hds362Mi i0 get cos mul put LAB*bds362Mi i0 LAB*Cds362Mi i0 get LAB*hds362Mi i0 get sin mul put r*ds362Mi i0 r*dd64M ix0 get r*dd64M ix1 get r*dd64M ix0 get sub XIE mul add put g*ds362Mi i0 g*dd64M ix0 get g*dd64M ix1 get g*dd64M ix0 get sub XIE mul add put b*ds362Mi i0 b*dd64M ix0 get b*dd64M ix1 get b*dd64M ix0 get sub XIE mul add put exit } if %ge..lt } for %ix0=0,47 } for %i=0,359 0 1 1 {/i exch def %i=0,1 LAB*Lds362Mi 360 i add LAB*Lds362Mi i get put LAB*ads362Mi 360 i add LAB*ads362Mi i get put LAB*bds362Mi 360 i add LAB*bds362Mi i get put LAB*Cds362Mi 360 i add LAB*Cds362Mi i get put LAB*hds362Mi 360 i add LAB*hds362Mi i get 360 add put r*ds362Mi 360 i add r*ds362Mi i get put g*ds362Mi 360 i add g*ds362Mi i get put b*ds362Mi 360 i add b*ds362Mi i get put } for %i=0,1 %***************** calculation of hab*de382Fi %***************** for 362 elementary hue angles /hab*de382Fi 382 array def %floating point %range 26..386 30 1 389 {/i exch def %i=30,389 /im30 i 30 sub def /hab*sM i def %alphas = [habs - LAB*Hs(h)]/[LAB*Hs(n+1) - LAB*Hs(n)] % = [habs - LAB*Hs(h)]/60 %habe = LAB*He(n) + alphas [LAB*He(n+1) - LAB*He(n)] %use of LAB*He 0..7 Re_to_Ye i 030 ge i 089 le and {/ipan0 0 def /ipan1 1 def} if i 090 ge i 149 le and {/ipan0 1 def /ipan1 2 def} if i 150 ge i 209 le and {/ipan0 2 def /ipan1 3 def} if i 210 ge i 269 le and {/ipan0 3 def /ipan1 4 def} if i 270 ge i 329 le and {/ipan0 4 def /ipan1 5 def} if i 330 ge i 359 le and {/ipan0 5 def /ipan1 6 def} if i 360 ge i 389 le and {/ipan0 6 def /ipan1 7 def} if /alphas {hab*sM LAB*Hs ipan0 get sub 60 div} bind def /habe {LAB*He ipan0 get LAB*He ipan1 get LAB*He ipan0 get sub alphas mul add} bind def hab*de382Fi im30 habe put %floating point } for %i=30,389 0 1 20 {/i exch def %i=0,20 hab*de382Fi 360 i add hab*de382Fi i get 360 add put } for %i=0,20 %***************** calculation LAB*LabChe32Mi and rgb*de362Mi %***************** for 362 elementary hue angles /LAB*Lde362Mi 362 array def /LAB*ade362Mi 362 array def /LAB*bde362Mi 362 array def /LAB*Cde362Mi 362 array def /LAB*hde362Mi 362 array def /r*de362Mi 362 array def /g*de362Mi 362 array def /b*de362Mi 362 array def 0 1 361 {/i exch def %i=0,361 %default only for test r*de362Mi i 0 put %of irregularities g*de362Mi i 0 put b*de362Mi i 0 put LAB*Lde362Mi i 0.0001 put LAB*ade362Mi i 0 put LAB*bde362Mi i 0 put LAB*Cde362Mi i 0 put LAB*hde362Mi i 0 put } for %i=0,361 0 1 359 {/i0 exch def %i=0,359 /i0i hab*de382Fi i0 get def %range 26...386 i0i hab*dd362Fi 0 get lt {/i0i i0i 360 add def} if 0 1 47 {/ix0 exch def %ix0=0,48 /ix1 ix0 1 add def i0i LAB*hdd64M ix0 get sub 0 ge i0i LAB*hdd64M ix1 get sub 0 lt and {%ge..lt /XIE i0i LAB*hdd64M ix0 get sub LAB*hdd64M ix1 get LAB*hdd64M ix0 get sub div def LAB*Lde362Mi i0 LAB*Ldd64M ix0 get LAB*Ldd64M ix1 get LAB*Ldd64M ix0 get sub XIE mul add put LAB*Cde362Mi i0 LAB*Cdd64M ix0 get LAB*Cdd64M ix1 get LAB*Cdd64M ix0 get sub XIE mul add put LAB*hde362Mi i0 LAB*hdd64M ix0 get LAB*hdd64M ix1 get LAB*hdd64M ix0 get sub XIE mul add dup 90 gt i0 45 le and {360 sub} if put LAB*ade362Mi i0 LAB*Cde362Mi i0 get LAB*hde362Mi i0 get cos mul put LAB*bde362Mi i0 LAB*Cde362Mi i0 get LAB*hde362Mi i0 get sin mul put r*de362Mi i0 r*dd64M ix0 get r*dd64M ix1 get r*dd64M ix0 get sub XIE mul add put g*de362Mi i0 g*dd64M ix0 get g*dd64M ix1 get g*dd64M ix0 get sub XIE mul add put b*de362Mi i0 b*dd64M ix0 get b*dd64M ix1 get b*dd64M ix0 get sub XIE mul add put exit } if %ge..lt } for %ix0=0,47 } for %i=0,359 0 1 1 {/i exch def %i=0,1 LAB*Lde362Mi 360 i add LAB*Lde362Mi i get put LAB*ade362Mi 360 i add LAB*ade362Mi i get put LAB*bde362Mi 360 i add LAB*bde362Mi i get put LAB*Cde362Mi 360 i add LAB*Cde362Mi i get put LAB*hde362Mi 360 i add LAB*hde362Mi i get 360 add put r*de362Mi 360 i add r*de362Mi i get put g*de362Mi 360 i add g*de362Mi i get put b*de362Mi 360 i add b*de362Mi i get put } for %i=0,1 %special LAB* data calculation of 17 step colour circle %needs LAB*LabCh64M, hab*dd64M /ind64M 17 array def /ind64M %R00Y R25Y R50Y R75Y Y00G Y25G Y50G Y75G [0 2 4 6 8 10 12 14 %G00B G25B G50B G75G B00R B25R B50R B75R R00Y 16 20 24 28 32 36 40 44 0 ] def /LAB*Ldd18M 17 array def /LAB*add18M 17 array def /LAB*bdd18M 17 array def /LAB*Cdd18M 17 array def /LAB*hdd18M 17 array def /hab*dd18M 17 array def 0 1 16 {/i exch def %i=0,16 /indi ind64M i get def LAB*Ldd18M i LAB*Ldd64M indi get put LAB*add18M i LAB*add64M indi get put LAB*bdd18M i LAB*bdd64M indi get put LAB*Cdd18M i LAB*Cdd64M indi get put LAB*hdd18M i LAB*hdd64M indi get put hab*dd18M i hab*dd64M indi get put } for %i=0,16 } bind def %END proc_LAB*LabCh64M_to_tab362_dy %***************************************************************************** %END Procedure PROC_SPEC_IOF Colour special for NP-file 20120401 %***************************************************************************** /FileDaten (sRGB standard device; no separation, D65) def /FileDatde (sRGB Norm\255Ger\344t; keine Separation, D65) def /RGB0_F 3240 array def %1080*3 /RGB0_F [%1000 x rgb* nr. pos 1080 colours 0000 0000 0000 %0000 A01 0000 0000 0125 %0001 A02 0000 0000 0250 %0002 A03 0000 0000 0375 %0003 A04 0000 0000 0500 %0004 A05 0000 0000 0625 %0005 A06 0000 0000 0750 %0006 A07 0000 0000 0875 %0007 A08 0000 0000 1000 %0008 A09 0000 0125 0000 %0009 B01 0000 0125 0125 %0010 B02 0000 0125 0250 %0011 B03 0000 0125 0375 %0012 B04 0000 0125 0500 %0013 B05 0000 0125 0625 %0014 B06 0000 0125 0750 %0015 B07 0000 0125 0875 %0016 B08 0000 0125 1000 %0017 B09 0000 0250 0000 %0018 C01 0000 0250 0125 %0019 C02 0000 0250 0250 %0020 C03 0000 0250 0375 %0021 C04 0000 0250 0500 %0022 C05 0000 0250 0625 %0023 C06 0000 0250 0750 %0024 C07 0000 0250 0875 %0025 C08 0000 0250 1000 %0026 C09 0000 0375 0000 %0027 D01 0000 0375 0125 %0028 D02 0000 0375 0250 %0029 D03 0000 0375 0375 %0030 D04 0000 0375 0500 %0031 D05 0000 0375 0625 %0032 D06 0000 0375 0750 %0033 D07 0000 0375 0875 %0034 D08 0000 0375 1000 %0035 D09 0000 0500 0000 %0036 E01 0000 0500 0125 %0037 E02 0000 0500 0250 %0038 E03 0000 0500 0375 %0039 E04 0000 0500 0500 %0040 E05 0000 0500 0625 %0041 E06 0000 0500 0750 %0042 E07 0000 0500 0875 %0043 E08 0000 0500 1000 %0044 E09 0000 0625 0000 %0045 F01 0000 0625 0125 %0046 F02 0000 0625 0250 %0047 F03 0000 0625 0375 %0048 F04 0000 0625 0500 %0049 F05 0000 0625 0625 %0050 F06 0000 0625 0750 %0051 F07 0000 0625 0875 %0052 F08 0000 0625 1000 %0053 F09 0000 0750 0000 %0054 G01 0000 0750 0125 %0055 G02 0000 0750 0250 %0056 G03 0000 0750 0375 %0057 G04 0000 0750 0500 %0058 G05 0000 0750 0625 %0059 G06 0000 0750 0750 %0060 G07 0000 0750 0875 %0061 G08 0000 0750 1000 %0062 G09 0000 0875 0000 %0063 H01 0000 0875 0125 %0064 H02 0000 0875 0250 %0065 H03 0000 0875 0375 %0066 H04 0000 0875 0500 %0067 H05 0000 0875 0625 %0068 H06 0000 0875 0750 %0069 H07 0000 0875 0875 %0070 H08 0000 0875 1000 %0071 H09 0000 1000 0000 %0072 I01 0000 1000 0125 %0073 I02 0000 1000 0250 %0074 I03 0000 1000 0375 %0075 I04 0000 1000 0500 %0076 I05 0000 1000 0625 %0077 I06 0000 1000 0750 %0078 I07 0000 1000 0875 %0079 I08 0000 1000 1000 %0080 I09 0125 0000 0000 %0081 J01 0125 0000 0125 %0082 J02 0125 0000 0250 %0083 J03 0125 0000 0375 %0084 J04 0125 0000 0500 %0085 J05 0125 0000 0625 %0086 J06 0125 0000 0750 %0087 J07 0125 0000 0875 %0088 J08 0125 0000 1000 %0089 J09 0125 0125 0000 %0090 K01 0125 0125 0125 %0091 K02 0125 0125 0250 %0092 K03 0125 0125 0375 %0093 K04 0125 0125 0500 %0094 K05 0125 0125 0625 %0095 K06 0125 0125 0750 %0096 K07 0125 0125 0875 %0097 K08 0125 0125 1000 %0098 K09 0125 0250 0000 %0099 L01 0125 0250 0125 %0100 L02 0125 0250 0250 %0101 L03 0125 0250 0375 %0102 L04 0125 0250 0500 %0103 L05 0125 0250 0625 %0104 L06 0125 0250 0750 %0105 L07 0125 0250 0875 %0106 L08 0125 0250 1000 %0107 L09 0125 0375 0000 %0108 M01 0125 0375 0125 %0109 M02 0125 0375 0250 %0110 M03 0125 0375 0375 %0111 M04 0125 0375 0500 %0112 M05 0125 0375 0625 %0113 M06 0125 0375 0750 %0114 M07 0125 0375 0875 %0115 M08 0125 0375 1000 %0116 M09 0125 0500 0000 %0117 N01 0125 0500 0125 %0118 N02 0125 0500 0250 %0119 N03 0125 0500 0375 %0120 N04 0125 0500 0500 %0121 N05 0125 0500 0625 %0122 N06 0125 0500 0750 %0123 N07 0125 0500 0875 %0124 N08 0125 0500 1000 %0125 N09 0125 0625 0000 %0126 O01 0125 0625 0125 %0127 O02 0125 0625 0250 %0128 O03 0125 0625 0375 %0129 O04 0125 0625 0500 %0130 O05 0125 0625 0625 %0131 O06 0125 0625 0750 %0132 O07 0125 0625 0875 %0133 O08 0125 0625 1000 %0134 O09 0125 0750 0000 %0135 P01 0125 0750 0125 %0136 P02 0125 0750 0250 %0137 P03 0125 0750 0375 %0138 P04 0125 0750 0500 %0139 P05 0125 0750 0625 %0140 P06 0125 0750 0750 %0141 P07 0125 0750 0875 %0142 P08 0125 0750 1000 %0143 P09 0125 0875 0000 %0144 Q01 0125 0875 0125 %0145 Q02 0125 0875 0250 %0146 Q03 0125 0875 0375 %0147 Q04 0125 0875 0500 %0148 Q05 0125 0875 0625 %0149 Q06 0125 0875 0750 %0150 Q07 0125 0875 0875 %0151 Q08 0125 0875 1000 %0152 Q09 0125 1000 0000 %0153 R01 0125 1000 0125 %0154 R02 0125 1000 0250 %0155 R03 0125 1000 0375 %0156 R04 0125 1000 0500 %0157 R05 0125 1000 0625 %0158 R06 0125 1000 0750 %0159 R07 0125 1000 0875 %0160 R08 0125 1000 1000 %0161 R09 0250 0000 0000 %0162 S01 0250 0000 0125 %0163 S02 0250 0000 0250 %0164 S03 0250 0000 0375 %0165 S04 0250 0000 0500 %0166 S05 0250 0000 0625 %0167 S06 0250 0000 0750 %0168 S07 0250 0000 0875 %0169 S08 0250 0000 1000 %0170 S09 0250 0125 0000 %0171 T01 0250 0125 0125 %0172 T02 0250 0125 0250 %0173 T03 0250 0125 0375 %0174 T04 0250 0125 0500 %0175 T05 0250 0125 0625 %0176 T06 0250 0125 0750 %0177 T07 0250 0125 0875 %0178 T08 0250 0125 1000 %0179 T09 0250 0250 0000 %0180 U01 0250 0250 0125 %0181 U02 0250 0250 0250 %0182 U03 0250 0250 0375 %0183 U04 0250 0250 0500 %0184 U05 0250 0250 0625 %0185 U06 0250 0250 0750 %0186 U07 0250 0250 0875 %0187 U08 0250 0250 1000 %0188 U09 0250 0375 0000 %0189 V01 0250 0375 0125 %0190 V02 0250 0375 0250 %0191 V03 0250 0375 0375 %0192 V04 0250 0375 0500 %0193 V05 0250 0375 0625 %0194 V06 0250 0375 0750 %0195 V07 0250 0375 0875 %0196 V08 0250 0375 1000 %0197 V09 0250 0500 0000 %0198 W01 0250 0500 0125 %0199 W02 0250 0500 0250 %0200 W03 0250 0500 0375 %0201 W04 0250 0500 0500 %0202 W05 0250 0500 0625 %0203 W06 0250 0500 0750 %0204 W07 0250 0500 0875 %0205 W08 0250 0500 1000 %0206 W09 0250 0625 0000 %0207 X01 0250 0625 0125 %0208 X02 0250 0625 0250 %0209 X03 0250 0625 0375 %0210 X04 0250 0625 0500 %0211 X05 0250 0625 0625 %0212 X06 0250 0625 0750 %0213 X07 0250 0625 0875 %0214 X08 0250 0625 1000 %0215 X09 0250 0750 0000 %0216 Y01 0250 0750 0125 %0217 Y02 0250 0750 0250 %0218 Y03 0250 0750 0375 %0219 Y04 0250 0750 0500 %0220 Y05 0250 0750 0625 %0221 Y06 0250 0750 0750 %0222 Y07 0250 0750 0875 %0223 Y08 0250 0750 1000 %0224 Y09 0250 0875 0000 %0225 Z01 0250 0875 0125 %0226 Z02 0250 0875 0250 %0227 Z03 0250 0875 0375 %0228 Z04 0250 0875 0500 %0229 Z05 0250 0875 0625 %0230 Z06 0250 0875 0750 %0231 Z07 0250 0875 0875 %0232 Z08 0250 0875 1000 %0233 Z09 0250 1000 0000 %0234 a01 0250 1000 0125 %0235 a02 0250 1000 0250 %0236 a03 0250 1000 0375 %0237 a04 0250 1000 0500 %0238 a05 0250 1000 0625 %0239 a06 0250 1000 0750 %0240 a07 0250 1000 0875 %0241 a08 0250 1000 1000 %0242 a09 0375 0000 0000 %0243 A10 0375 0000 0125 %0244 A11 0375 0000 0250 %0245 A12 0375 0000 0375 %0246 A13 0375 0000 0500 %0247 A14 0375 0000 0625 %0248 A15 0375 0000 0750 %0249 A16 0375 0000 0875 %0250 A17 0375 0000 1000 %0251 A18 0375 0125 0000 %0252 B10 0375 0125 0125 %0253 B11 0375 0125 0250 %0254 B12 0375 0125 0375 %0255 B13 0375 0125 0500 %0256 B14 0375 0125 0625 %0257 B15 0375 0125 0750 %0258 B16 0375 0125 0875 %0259 B17 0375 0125 1000 %0260 B18 0375 0250 0000 %0261 C10 0375 0250 0125 %0262 C11 0375 0250 0250 %0263 C12 0375 0250 0375 %0264 C13 0375 0250 0500 %0265 C14 0375 0250 0625 %0266 C15 0375 0250 0750 %0267 C16 0375 0250 0875 %0268 C17 0375 0250 1000 %0269 C18 0375 0375 0000 %0270 D10 0375 0375 0125 %0271 D11 0375 0375 0250 %0272 D12 0375 0375 0375 %0273 D13 0375 0375 0500 %0274 D14 0375 0375 0625 %0275 D15 0375 0375 0750 %0276 D16 0375 0375 0875 %0277 D17 0375 0375 1000 %0278 D18 0375 0500 0000 %0279 E10 0375 0500 0125 %0280 E11 0375 0500 0250 %0281 E12 0375 0500 0375 %0282 E13 0375 0500 0500 %0283 E14 0375 0500 0625 %0284 E15 0375 0500 0750 %0285 E16 0375 0500 0875 %0286 E17 0375 0500 1000 %0287 E18 0375 0625 0000 %0288 F10 0375 0625 0125 %0289 F11 0375 0625 0250 %0290 F12 0375 0625 0375 %0291 F13 0375 0625 0500 %0292 F14 0375 0625 0625 %0293 F15 0375 0625 0750 %0294 F16 0375 0625 0875 %0295 F17 0375 0625 1000 %0296 F18 0375 0750 0000 %0297 G10 0375 0750 0125 %0298 G11 0375 0750 0250 %0299 G12 0375 0750 0375 %0300 G13 0375 0750 0500 %0301 G14 0375 0750 0625 %0302 G15 0375 0750 0750 %0303 G16 0375 0750 0875 %0304 G17 0375 0750 1000 %0305 G18 0375 0875 0000 %0306 H10 0375 0875 0125 %0307 H11 0375 0875 0250 %0308 H12 0375 0875 0375 %0309 H13 0375 0875 0500 %0310 H14 0375 0875 0625 %0311 H15 0375 0875 0750 %0312 H16 0375 0875 0875 %0313 H17 0375 0875 1000 %0314 H18 0375 1000 0000 %0315 I10 0375 1000 0125 %0316 I11 0375 1000 0250 %0317 I12 0375 1000 0375 %0318 I13 0375 1000 0500 %0319 I14 0375 1000 0625 %0320 I15 0375 1000 0750 %0321 I16 0375 1000 0875 %0322 I17 0375 1000 1000 %0323 I18 0500 0000 0000 %0324 J10 0500 0000 0125 %0325 J11 0500 0000 0250 %0326 J12 0500 0000 0375 %0327 J13 0500 0000 0500 %0328 J14 0500 0000 0625 %0329 J15 0500 0000 0750 %0330 J16 0500 0000 0875 %0331 J17 0500 0000 1000 %0332 J18 0500 0125 0000 %0333 K10 0500 0125 0125 %0334 K11 0500 0125 0250 %0335 K12 0500 0125 0375 %0336 K13 0500 0125 0500 %0337 K14 0500 0125 0625 %0338 K15 0500 0125 0750 %0339 K16 0500 0125 0875 %0340 K17 0500 0125 1000 %0341 K18 0500 0250 0000 %0342 L10 0500 0250 0125 %0343 L11 0500 0250 0250 %0344 L12 0500 0250 0375 %0345 L13 0500 0250 0500 %0346 L14 0500 0250 0625 %0347 L15 0500 0250 0750 %0348 L16 0500 0250 0875 %0349 L17 0500 0250 1000 %0350 L18 0500 0375 0000 %0351 M10 0500 0375 0125 %0352 M11 0500 0375 0250 %0353 M12 0500 0375 0375 %0354 M13 0500 0375 0500 %0355 M14 0500 0375 0625 %0356 M15 0500 0375 0750 %0357 M16 0500 0375 0875 %0358 M17 0500 0375 1000 %0359 M18 0500 0500 0000 %0360 N10 0500 0500 0125 %0361 N11 0500 0500 0250 %0362 N12 0500 0500 0375 %0363 N13 0500 0500 0500 %0364 N14 0500 0500 0625 %0365 N15 0500 0500 0750 %0366 N16 0500 0500 0875 %0367 N17 0500 0500 1000 %0368 N18 0500 0625 0000 %0369 O10 0500 0625 0125 %0370 O11 0500 0625 0250 %0371 O12 0500 0625 0375 %0372 O13 0500 0625 0500 %0373 O14 0500 0625 0625 %0374 O15 0500 0625 0750 %0375 O16 0500 0625 0875 %0376 O17 0500 0625 1000 %0377 O18 0500 0750 0000 %0378 P10 0500 0750 0125 %0379 P11 0500 0750 0250 %0380 P12 0500 0750 0375 %0381 P13 0500 0750 0500 %0382 P14 0500 0750 0625 %0383 P15 0500 0750 0750 %0384 P16 0500 0750 0875 %0385 P17 0500 0750 1000 %0386 P18 0500 0875 0000 %0387 Q10 0500 0875 0125 %0388 Q11 0500 0875 0250 %0389 Q12 0500 0875 0375 %0390 Q13 0500 0875 0500 %0391 Q14 0500 0875 0625 %0392 Q15 0500 0875 0750 %0393 Q16 0500 0875 0875 %0394 Q17 0500 0875 1000 %0395 Q18 0500 1000 0000 %0396 R10 0500 1000 0125 %0397 R11 0500 1000 0250 %0398 R12 0500 1000 0375 %0399 R13 0500 1000 0500 %0400 R14 0500 1000 0625 %0401 R15 0500 1000 0750 %0402 R16 0500 1000 0875 %0403 R17 0500 1000 1000 %0404 R18 0625 0000 0000 %0405 S10 0625 0000 0125 %0406 S11 0625 0000 0250 %0407 S12 0625 0000 0375 %0408 S13 0625 0000 0500 %0409 S14 0625 0000 0625 %0410 S15 0625 0000 0750 %0411 S16 0625 0000 0875 %0412 S17 0625 0000 1000 %0413 S18 0625 0125 0000 %0414 T10 0625 0125 0125 %0415 T11 0625 0125 0250 %0416 T12 0625 0125 0375 %0417 T13 0625 0125 0500 %0418 T14 0625 0125 0625 %0419 T15 0625 0125 0750 %0420 T16 0625 0125 0875 %0421 T17 0625 0125 1000 %0422 T18 0625 0250 0000 %0423 U10 0625 0250 0125 %0424 U11 0625 0250 0250 %0425 U12 0625 0250 0375 %0426 U13 0625 0250 0500 %0427 U14 0625 0250 0625 %0428 U15 0625 0250 0750 %0429 U16 0625 0250 0875 %0430 U17 0625 0250 1000 %0431 U18 0625 0375 0000 %0432 V10 0625 0375 0125 %0433 V11 0625 0375 0250 %0434 V12 0625 0375 0375 %0435 V13 0625 0375 0500 %0436 V14 0625 0375 0625 %0437 V15 0625 0375 0750 %0438 V16 0625 0375 0875 %0439 V17 0625 0375 1000 %0440 V18 0625 0500 0000 %0441 W10 0625 0500 0125 %0442 W11 0625 0500 0250 %0443 W12 0625 0500 0375 %0444 W13 0625 0500 0500 %0445 W14 0625 0500 0625 %0446 W15 0625 0500 0750 %0447 W16 0625 0500 0875 %0448 W17 0625 0500 1000 %0449 W18 0625 0625 0000 %0450 X10 0625 0625 0125 %0451 X11 0625 0625 0250 %0452 X12 0625 0625 0375 %0453 X13 0625 0625 0500 %0454 X14 0625 0625 0625 %0455 X15 0625 0625 0750 %0456 X16 0625 0625 0875 %0457 X17 0625 0625 1000 %0458 X18 0625 0750 0000 %0459 Y10 0625 0750 0125 %0460 Y11 0625 0750 0250 %0461 Y12 0625 0750 0375 %0462 Y13 0625 0750 0500 %0463 Y14 0625 0750 0625 %0464 Y15 0625 0750 0750 %0465 Y16 0625 0750 0875 %0466 Y17 0625 0750 1000 %0467 Y18 0625 0875 0000 %0468 Z10 0625 0875 0125 %0469 Z11 0625 0875 0250 %0470 Z12 0625 0875 0375 %0471 Z13 0625 0875 0500 %0472 Z14 0625 0875 0625 %0473 Z15 0625 0875 0750 %0474 Z16 0625 0875 0875 %0475 Z17 0625 0875 1000 %0476 Z18 0625 1000 0000 %0477 a10 0625 1000 0125 %0478 a11 0625 1000 0250 %0479 a12 0625 1000 0375 %0480 a13 0625 1000 0500 %0481 a14 0625 1000 0625 %0482 a15 0625 1000 0750 %0483 a16 0625 1000 0875 %0484 a17 0625 1000 1000 %0485 a18 0750 0000 0000 %0486 A19 0750 0000 0125 %0487 A20 0750 0000 0250 %0488 A21 0750 0000 0375 %0489 A22 0750 0000 0500 %0490 A23 0750 0000 0625 %0491 A24 0750 0000 0750 %0492 A25 0750 0000 0875 %0493 A26 0750 0000 1000 %0494 A27 0750 0125 0000 %0495 B19 0750 0125 0125 %0496 B20 0750 0125 0250 %0497 B21 0750 0125 0375 %0498 B22 0750 0125 0500 %0499 B23 0750 0125 0625 %0500 B24 0750 0125 0750 %0501 B25 0750 0125 0875 %0502 B26 0750 0125 1000 %0503 B27 0750 0250 0000 %0504 C19 0750 0250 0125 %0505 C20 0750 0250 0250 %0506 C21 0750 0250 0375 %0507 C22 0750 0250 0500 %0508 C23 0750 0250 0625 %0509 C24 0750 0250 0750 %0510 C25 0750 0250 0875 %0511 C26 0750 0250 1000 %0512 C27 0750 0375 0000 %0513 D19 0750 0375 0125 %0514 D20 0750 0375 0250 %0515 D21 0750 0375 0375 %0516 D22 0750 0375 0500 %0517 D23 0750 0375 0625 %0518 D24 0750 0375 0750 %0519 D25 0750 0375 0875 %0520 D26 0750 0375 1000 %0521 D27 0750 0500 0000 %0522 E19 0750 0500 0125 %0523 E20 0750 0500 0250 %0524 E21 0750 0500 0375 %0525 E22 0750 0500 0500 %0526 E23 0750 0500 0625 %0527 E24 0750 0500 0750 %0528 E25 0750 0500 0875 %0529 E26 0750 0500 1000 %0530 E27 0750 0625 0000 %0531 F19 0750 0625 0125 %0532 F20 0750 0625 0250 %0533 F21 0750 0625 0375 %0534 F22 0750 0625 0500 %0535 F23 0750 0625 0625 %0536 F24 0750 0625 0750 %0537 F25 0750 0625 0875 %0538 F26 0750 0625 1000 %0539 F27 0750 0750 0000 %0540 G19 0750 0750 0125 %0541 G20 0750 0750 0250 %0542 G21 0750 0750 0375 %0543 G22 0750 0750 0500 %0544 G23 0750 0750 0625 %0545 G24 0750 0750 0750 %0546 G25 0750 0750 0875 %0547 G26 0750 0750 1000 %0548 G27 0750 0875 0000 %0549 H19 0750 0875 0125 %0550 H20 0750 0875 0250 %0551 H21 0750 0875 0375 %0552 H22 0750 0875 0500 %0553 H23 0750 0875 0625 %0554 H24 0750 0875 0750 %0555 H25 0750 0875 0875 %0556 H26 0750 0875 1000 %0557 H27 0750 1000 0000 %0558 I19 0750 1000 0125 %0559 I20 0750 1000 0250 %0560 I21 0750 1000 0375 %0561 I22 0750 1000 0500 %0562 I23 0750 1000 0625 %0563 I24 0750 1000 0750 %0564 I25 0750 1000 0875 %0565 I26 0750 1000 1000 %0566 I27 0875 0000 0000 %0567 J19 0875 0000 0125 %0568 J20 0875 0000 0250 %0569 J21 0875 0000 0375 %0570 J22 0875 0000 0500 %0571 J23 0875 0000 0625 %0572 J24 0875 0000 0750 %0573 J25 0875 0000 0875 %0574 J26 0875 0000 1000 %0575 J27 0875 0125 0000 %0576 K19 0875 0125 0125 %0577 K20 0875 0125 0250 %0578 K21 0875 0125 0375 %0579 K22 0875 0125 0500 %0580 K23 0875 0125 0625 %0581 K24 0875 0125 0750 %0582 K25 0875 0125 0875 %0583 K26 0875 0125 1000 %0584 K27 0875 0250 0000 %0585 L19 0875 0250 0125 %0586 L20 0875 0250 0250 %0587 L21 0875 0250 0375 %0588 L22 0875 0250 0500 %0589 L23 0875 0250 0625 %0590 L24 0875 0250 0750 %0591 L25 0875 0250 0875 %0592 L26 0875 0250 1000 %0593 L27 0875 0375 0000 %0594 M19 0875 0375 0125 %0595 M20 0875 0375 0250 %0596 M21 0875 0375 0375 %0597 M22 0875 0375 0500 %0598 M23 0875 0375 0625 %0599 M24 0875 0375 0750 %0600 M25 0875 0375 0875 %0601 M26 0875 0375 1000 %0602 M27 0875 0500 0000 %0603 N19 0875 0500 0125 %0604 N20 0875 0500 0250 %0605 N21 0875 0500 0375 %0606 N22 0875 0500 0500 %0607 N23 0875 0500 0625 %0608 N24 0875 0500 0750 %0609 N25 0875 0500 0875 %0610 N26 0875 0500 1000 %0611 N27 0875 0625 0000 %0612 O19 0875 0625 0125 %0613 O20 0875 0625 0250 %0614 O21 0875 0625 0375 %0615 O22 0875 0625 0500 %0616 O23 0875 0625 0625 %0617 O24 0875 0625 0750 %0618 O25 0875 0625 0875 %0619 O26 0875 0625 1000 %0620 O27 0875 0750 0000 %0621 P19 0875 0750 0125 %0622 P20 0875 0750 0250 %0623 P21 0875 0750 0375 %0624 P22 0875 0750 0500 %0625 P23 0875 0750 0625 %0626 P24 0875 0750 0750 %0627 P25 0875 0750 0875 %0628 P26 0875 0750 1000 %0629 P27 0875 0875 0000 %0630 Q19 0875 0875 0125 %0631 Q20 0875 0875 0250 %0632 Q21 0875 0875 0375 %0633 Q22 0875 0875 0500 %0634 Q23 0875 0875 0625 %0635 Q24 0875 0875 0750 %0636 Q25 0875 0875 0875 %0637 Q26 0875 0875 1000 %0638 Q27 0875 1000 0000 %0639 R19 0875 1000 0125 %0640 R20 0875 1000 0250 %0641 R21 0875 1000 0375 %0642 R22 0875 1000 0500 %0643 R23 0875 1000 0625 %0644 R24 0875 1000 0750 %0645 R25 0875 1000 0875 %0646 R26 0875 1000 1000 %0647 R27 1000 0000 0000 %0648 S19 1000 0000 0125 %0649 S20 1000 0000 0250 %0650 S21 1000 0000 0375 %0651 S22 1000 0000 0500 %0652 S23 1000 0000 0625 %0653 S24 1000 0000 0750 %0654 S25 1000 0000 0875 %0655 S26 1000 0000 1000 %0656 S27 1000 0125 0000 %0657 T19 1000 0125 0125 %0658 T20 1000 0125 0250 %0659 T21 1000 0125 0375 %0660 T22 1000 0125 0500 %0661 T23 1000 0125 0625 %0662 T24 1000 0125 0750 %0663 T25 1000 0125 0875 %0664 T26 1000 0125 1000 %0665 T27 1000 0250 0000 %0666 U19 1000 0250 0125 %0667 U20 1000 0250 0250 %0668 U21 1000 0250 0375 %0669 U22 1000 0250 0500 %0670 U23 1000 0250 0625 %0671 U24 1000 0250 0750 %0672 U25 1000 0250 0875 %0673 U26 1000 0250 1000 %0674 U27 1000 0375 0000 %0675 V19 1000 0375 0125 %0676 V20 1000 0375 0250 %0677 V21 1000 0375 0375 %0678 V22 1000 0375 0500 %0679 V23 1000 0375 0625 %0680 V24 1000 0375 0750 %0681 V25 1000 0375 0875 %0682 V26 1000 0375 1000 %0683 V27 1000 0500 0000 %0684 W19 1000 0500 0125 %0685 W20 1000 0500 0250 %0686 W21 1000 0500 0375 %0687 W22 1000 0500 0500 %0688 W23 1000 0500 0625 %0689 W24 1000 0500 0750 %0690 W25 1000 0500 0875 %0691 W26 1000 0500 1000 %0692 W27 1000 0625 0000 %0693 X19 1000 0625 0125 %0694 X20 1000 0625 0250 %0695 X21 1000 0625 0375 %0696 X22 1000 0625 0500 %0697 X23 1000 0625 0625 %0698 X24 1000 0625 0750 %0699 X25 1000 0625 0875 %0700 X26 1000 0625 1000 %0701 X27 1000 0750 0000 %0702 Y19 1000 0750 0125 %0703 Y20 1000 0750 0250 %0704 Y21 1000 0750 0375 %0705 Y22 1000 0750 0500 %0706 Y23 1000 0750 0625 %0707 Y24 1000 0750 0750 %0708 Y25 1000 0750 0875 %0709 Y26 1000 0750 1000 %0710 Y27 1000 0875 0000 %0711 Z19 1000 0875 0125 %0712 Z20 1000 0875 0250 %0713 Z21 1000 0875 0375 %0714 Z22 1000 0875 0500 %0715 Z23 1000 0875 0625 %0716 Z24 1000 0875 0750 %0717 Z25 1000 0875 0875 %0718 Z26 1000 0875 1000 %0719 Z27 1000 1000 0000 %0720 a19 1000 1000 0125 %0721 a20 1000 1000 0250 %0722 a21 1000 1000 0375 %0723 a22 1000 1000 0500 %0724 a23 1000 1000 0625 %0725 a24 1000 1000 0750 %0726 a25 1000 1000 0875 %0727 a26 1000 1000 1000 %0728 a27 1000 1000 1000 %0729 b01 0875 1000 1000 %0730 b02 0750 1000 1000 %0731 b03 0625 1000 1000 %0732 b04 0500 1000 1000 %0733 b05 0375 1000 1000 %0734 b06 0250 1000 1000 %0735 b07 0125 1000 1000 %0736 b08 0000 1000 1000 %0737 b09 1000 0875 0875 %0738 c01 0875 0875 0875 %0739 c02 0750 0875 0875 %0740 c03 0625 0875 0875 %0741 c04 0500 0875 0875 %0742 c05 0375 0875 0875 %0743 c06 0250 0875 0875 %0744 c07 0125 0875 0875 %0745 c08 0000 0875 0875 %0746 c09 1000 0750 0750 %0747 d01 0875 0750 0750 %0748 d02 0750 0750 0750 %0749 d03 0625 0750 0750 %0750 d04 0500 0750 0750 %0751 d05 0375 0750 0750 %0752 d06 0250 0750 0750 %0753 d07 0125 0750 0750 %0754 d08 0000 0750 0750 %0755 d09 1000 0625 0625 %0756 e01 0875 0625 0625 %0757 e02 0750 0625 0625 %0758 e03 0625 0625 0625 %0759 e04 0500 0625 0625 %0760 e05 0375 0625 0625 %0761 e06 0250 0625 0625 %0762 e07 0125 0625 0625 %0763 e08 0000 0625 0625 %0764 e09 1000 0500 0500 %0765 f01 0875 0500 0500 %0766 f02 0750 0500 0500 %0767 f03 0625 0500 0500 %0768 f04 0500 0500 0500 %0769 f05 0375 0500 0500 %0770 f06 0250 0500 0500 %0771 f07 0125 0500 0500 %0772 f08 0000 0500 0500 %0773 f09 1000 0375 0375 %0774 g01 0875 0375 0375 %0775 g02 0750 0375 0375 %0776 g03 0625 0375 0375 %0777 g04 0500 0375 0375 %0778 g05 0375 0375 0375 %0779 g06 0250 0375 0375 %0780 g07 0125 0375 0375 %0781 g08 0000 0375 0375 %0782 g09 1000 0250 0250 %0783 h01 0875 0250 0250 %0784 h02 0750 0250 0250 %0785 h03 0625 0250 0250 %0786 h04 0500 0250 0250 %0787 h05 0375 0250 0250 %0788 h06 0250 0250 0250 %0789 h07 0125 0250 0250 %0790 h08 0000 0250 0250 %0791 h09 1000 0125 0125 %0792 i01 0875 0125 0125 %0793 i02 0750 0125 0125 %0794 i03 0625 0125 0125 %0795 i04 0500 0125 0125 %0796 i05 0375 0125 0125 %0797 i06 0250 0125 0125 %0798 i07 0125 0125 0125 %0799 i08 0000 0125 0125 %0800 i09 1000 0000 0000 %0801 j01 0875 0000 0000 %0802 j02 0750 0000 0000 %0803 j03 0625 0000 0000 %0804 j04 0500 0000 0000 %0805 j05 0375 0000 0000 %0806 j06 0250 0000 0000 %0807 j07 0125 0000 0000 %0808 j08 0000 0000 0000 %0809 j09 1000 1000 1000 %0810 b10 0875 0875 1000 %0811 b11 0750 0750 1000 %0812 b12 0625 0625 1000 %0813 b13 0500 0500 1000 %0814 b14 0375 0375 1000 %0815 b15 0250 0250 1000 %0816 b16 0125 0125 1000 %0817 b17 0000 0000 1000 %0818 b18 1000 1000 0875 %0819 c10 0875 0875 0875 %0820 c11 0750 0750 0875 %0821 c12 0625 0625 0875 %0822 c13 0500 0500 0875 %0823 c14 0375 0375 0875 %0824 c15 0250 0250 0875 %0825 c16 0125 0125 0875 %0826 c17 0000 0000 0875 %0827 c18 1000 1000 0750 %0828 d10 0875 0875 0750 %0829 d11 0750 0750 0750 %0830 d12 0625 0625 0750 %0831 d13 0500 0500 0750 %0832 d14 0375 0375 0750 %0833 d15 0250 0250 0750 %0834 d16 0125 0125 0750 %0835 d17 0000 0000 0750 %0836 d18 1000 1000 0625 %0837 e10 0875 0875 0625 %0838 e11 0750 0750 0625 %0839 e12 0625 0625 0625 %0840 e13 0500 0500 0625 %0841 e14 0375 0375 0625 %0842 e15 0250 0250 0625 %0843 e16 0125 0125 0625 %0844 e17 0000 0000 0625 %0845 e18 1000 1000 0500 %0846 f10 0875 0875 0500 %0847 f11 0750 0750 0500 %0848 f12 0625 0625 0500 %0849 f13 0500 0500 0500 %0850 f14 0375 0375 0500 %0851 f15 0250 0250 0500 %0852 f16 0125 0125 0500 %0853 f17 0000 0000 0500 %0854 f18 1000 1000 0375 %0855 g10 0875 0875 0375 %0856 g11 0750 0750 0375 %0857 g12 0625 0625 0375 %0858 g13 0500 0500 0375 %0859 g14 0375 0375 0375 %0860 g15 0250 0250 0375 %0861 g16 0125 0125 0375 %0862 g17 0000 0000 0375 %0863 g18 1000 1000 0250 %0864 h10 0875 0875 0250 %0865 h11 0750 0750 0250 %0866 h12 0625 0625 0250 %0867 h13 0500 0500 0250 %0868 h14 0375 0375 0250 %0869 h15 0250 0250 0250 %0870 h16 0125 0125 0250 %0871 h17 0000 0000 0250 %0872 h18 1000 1000 0125 %0873 i10 0875 0875 0125 %0874 i11 0750 0750 0125 %0875 i12 0625 0625 0125 %0876 i13 0500 0500 0125 %0877 i14 0375 0375 0125 %0878 i15 0250 0250 0125 %0879 i16 0125 0125 0125 %0880 i17 0000 0000 0125 %0881 i18 1000 1000 0000 %0882 j10 0875 0875 0000 %0883 j11 0750 0750 0000 %0884 j12 0625 0625 0000 %0885 j13 0500 0500 0000 %0886 j14 0375 0375 0000 %0887 j15 0250 0250 0000 %0888 j16 0125 0125 0000 %0889 j17 0000 0000 0000 %0890 j18 1000 1000 1000 %0891 b19 1000 0875 1000 %0892 b20 1000 0750 1000 %0893 b21 1000 0625 1000 %0894 b22 1000 0500 1000 %0895 b23 1000 0375 1000 %0896 b24 1000 0250 1000 %0897 b25 1000 0125 1000 %0898 b26 1000 0000 1000 %0899 b27 0875 1000 0875 %0900 c19 0875 0875 0875 %0901 c20 0875 0750 0875 %0902 c21 0875 0625 0875 %0903 c22 0875 0500 0875 %0904 c23 0875 0375 0875 %0905 c24 0875 0250 0875 %0906 c25 0875 0125 0875 %0907 c26 0875 0000 0875 %0908 c27 0750 1000 0750 %0909 d19 0750 0875 0750 %0910 d20 0750 0750 0750 %0911 d21 0750 0625 0750 %0912 d22 0750 0500 0750 %0913 d23 0750 0375 0750 %0914 d24 0750 0250 0750 %0915 d25 0750 0125 0750 %0916 d26 0750 0000 0750 %0917 d27 0625 1000 0625 %0918 e19 0625 0875 0625 %0919 e20 0625 0750 0625 %0920 e21 0625 0625 0625 %0921 e22 0625 0500 0625 %0922 e23 0625 0375 0625 %0923 e24 0625 0250 0625 %0924 e25 0625 0125 0625 %0925 e26 0625 0000 0625 %0926 e27 0500 1000 0500 %0927 f19 0500 0875 0500 %0928 f20 0500 0750 0500 %0929 f21 0500 0625 0500 %0930 f22 0500 0500 0500 %0931 f23 0500 0375 0500 %0932 f24 0500 0250 0500 %0933 f25 0500 0125 0500 %0934 f26 0500 0000 0500 %0935 f27 0375 1000 0375 %0936 g19 0375 0875 0375 %0937 g20 0375 0750 0375 %0938 g21 0375 0625 0375 %0939 g22 0375 0500 0375 %0940 g23 0375 0375 0375 %0941 g24 0375 0250 0375 %0942 g25 0375 0125 0375 %0943 g26 0375 0000 0375 %0944 g27 0250 1000 0250 %0945 h19 0250 0875 0250 %0946 h20 0250 0750 0250 %0947 h21 0250 0625 0250 %0948 h22 0250 0500 0250 %0949 h23 0250 0375 0250 %0950 h24 0250 0250 0250 %0951 h25 0250 0125 0250 %0952 h26 0250 0000 0250 %0953 h27 0125 1000 0125 %0954 i19 0125 0875 0125 %0955 i20 0125 0750 0125 %0956 i21 0125 0625 0125 %0957 i22 0125 0500 0125 %0958 i23 0125 0375 0125 %0959 i24 0125 0250 0125 %0960 i25 0125 0125 0125 %0961 i26 0125 0000 0125 %0962 i27 0000 1000 0000 %0963 j19 0000 0875 0000 %0964 j20 0000 0750 0000 %0965 j21 0000 0625 0000 %0966 j22 0000 0500 0000 %0967 j23 0000 0375 0000 %0968 j24 0000 0250 0000 %0969 j25 0000 0125 0000 %0970 j26 0000 0000 0000 %0971 j27 0000 0000 0000 %0972 k01 0125 0125 0125 %0973 k02 0250 0250 0250 %0974 k03 0375 0375 0375 %0975 k04 0500 0500 0500 %0976 k05 0625 0625 0625 %0977 k06 0750 0750 0750 %0978 k07 0875 0875 0875 %0979 k08 1000 1000 1000 %0980 k09 0000 0000 0000 %0981 l01 0125 0125 0125 %0982 l02 0250 0250 0250 %0983 l03 0375 0375 0375 %0984 l04 0500 0500 0500 %0985 l05 0625 0625 0625 %0986 l06 0750 0750 0750 %0987 l07 0875 0875 0875 %0988 l08 1000 1000 1000 %0989 l09 0000 0000 0000 %0990 m01 0125 0125 0125 %0991 m02 0250 0250 0250 %0992 m03 0375 0375 0375 %0993 m04 0500 0500 0500 %0994 m05 0625 0625 0625 %0995 m06 0750 0750 0750 %0996 m07 0875 0875 0875 %0997 m08 1000 1000 1000 %0998 m09 0000 0000 0000 %0999 n01 0125 0125 0125 %1000 n02 0250 0250 0250 %1001 n03 0375 0375 0375 %1002 n04 0500 0500 0500 %1003 n05 0625 0625 0625 %1004 n06 0750 0750 0750 %1005 n07 0875 0875 0875 %1006 n08 1000 1000 1000 %1007 n09 0000 0000 0000 %1008 k10 0066 0066 0066 %1009 k11 0133 0133 0133 %1010 k12 0200 0200 0200 %1011 k13 0266 0266 0266 %1012 k14 0333 0333 0333 %1013 k15 0400 0400 0400 %1014 k16 0466 0466 0466 %1015 k17 0533 0533 0533 %1016 k18 0600 0600 0600 %1017 k19 0666 0666 0666 %1018 k20 0734 0734 0734 %1019 k21 0800 0800 0800 %1020 k22 0866 0866 0866 %1021 k23 0933 0933 0933 %1022 k24 1000 1000 1000 %1023 k25 0000 0000 0000 %1024 l10 0066 0066 0066 %1025 l11 0133 0133 0133 %1026 l12 0200 0200 0200 %1027 l13 0266 0266 0266 %1028 l14 0333 0333 0333 %1029 l15 0400 0400 0400 %1030 l16 0466 0466 0466 %1031 l17 0533 0533 0533 %1032 l18 0600 0600 0600 %1033 l19 0666 0666 0666 %1034 l20 0734 0734 0734 %1035 l21 0800 0800 0800 %1036 l22 0866 0866 0866 %1037 l23 0933 0933 0933 %1038 l24 1000 1000 1000 %1039 l25 0000 0000 0000 %1040 m10 0066 0066 0066 %1041 m11 0133 0133 0133 %1042 m12 0200 0200 0200 %1043 m13 0266 0266 0266 %1044 m14 0333 0333 0333 %1045 m15 0400 0400 0400 %1046 m16 0466 0466 0466 %1047 m17 0533 0533 0533 %1048 m18 0600 0600 0600 %1049 m19 0666 0666 0666 %1050 m20 0734 0734 0734 %1051 m21 0800 0800 0800 %1052 m22 0866 0866 0866 %1053 m23 0933 0933 0933 %1054 m24 1000 1000 1000 %1055 m25 0000 0000 0000 %1056 n10 0066 0066 0066 %1057 n11 0133 0133 0133 %1058 n12 0200 0200 0200 %1059 n13 0266 0266 0266 %1060 n14 0333 0333 0333 %1061 n15 0400 0400 0400 %1062 n16 0466 0466 0466 %1063 n17 0533 0533 0533 %1064 n18 0600 0600 0600 %1065 n19 0666 0666 0666 %1066 n20 0734 0734 0734 %1067 n21 0800 0800 0800 %1068 n22 0866 0866 0866 %1069 n23 0933 0933 0933 %1070 n24 1000 1000 1000 %1071 n25 0000 0000 0000 %1072 k26 1000 1000 1000 %1073 k27 1000 0000 0000 %1074 l26 0000 1000 1000 %1075 l27 1000 1000 0000 %1076 m26 0000 0000 1000 %1077 m27 0000 1000 0000 %1078 n26 1000 0000 1000 %1079 n27 0000 1000 0000 %1078 nx6 1000 0000 1000 %1079 nx7 ] def %END RGB0_F %***************************************************************** %} def %END PROC_SPEC_IOF.PS %END COLDATA-SRGB_00.PS %**************************************************** %END 'DM10'OUTLIN1X.PS Other procedures for sRGB output linearization %**************************************************** %BEG_OUTLIN1Y_PK8000********************************************************** %BEG DM10/OUTLIN1Y2_PK8000.PS Emty 20101101 %END DM10/OUTLIN1Y2_PK8000.PS Emty 20101101 %END_OUTLIN1Y_PK8000********************************************************** %END Include Procedures for output linearization at line 30 %*********************************************************** /BeginEPSFF {% def % Prepare for EPS file Frame (F) /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 /EndEPSFF {% def % End for EPS file Frame (F) 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 /A4querF {598 0 translate 90 rotate} 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 /Courier-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierB-ISOL1 exch definefont pop /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 %%EndProlog %%BeginPageSetup /#copies 1 def %A4quer 1.0 1.0 scale /pgsave save def %%EndPageSetup %********************************************************** /lanind1f 3 def /lanind2f 3 def /laninddf 01 def /colorm1f 01 def /colorm2f 01 def /colormdf 01 def /deintp1f 00 def /deintp2f 00 def /deintpdf 01 def /xcolor1f 03 def /xcolor2f 03 def /xcolordf 01 def /xchart1f 01 def /xchart2f 01 def /xchartdf 01 def %0-1,2-12,13-28 /xchart3f 01 def /xchart4f 9 def /xchart5f 00 def /xchart6f 01 def /pchart1f 03 def /pchart2f 03 def /pchartdf 01 def %=3 for sRGB, Lr=0 /colsep1f 00 def /colsep2f 00 def /colsepdf 01 def /pmetam1f 00 def /pmetam2f 00 def /pmetamdf 01 def %/lanindf lanind1f def % /lanindf lanind1f def %lanind1f laninddf lanind2f {/lanindf exch def %/colormf colorm1f def % /colormf colorm1f def %colorm1f colormdf colorm2f {/colormf exch def %/deintpf deintp1f def % /deintpf deintp1f def %deintp1f deintpdf deintp2f {/deintpf exch def %/xcolorf xcolor1f def % /xcolorf xcolor1f def %xcolor1f xcolordf xcolor2f {/xcolorf exch def %/xchartf xchart1f def % /xchartf xchart1f def %xchart1f xchartdf xchart2f {/xchartf exch def %/pchartf pchart1f def % /pchartf pchart1f def %pchart1f pchartdf pchart2f {/pchartf exch def %/colsepf colsep1f def % /colsepf colsep1f def %colsep1f colsepdf colsep2f {/colsepf exch def /lanind lanindf def /colorm colormf def /deintp deintpf def /xcolor xcolorf def /xchart xchartf def /xchartm xchart2f xchart1f sub 1 add def /xchart3 xchart3f def /xchart3P11 xchart3 10 add def /xchart4 xchart4f def /pchart pchartf def /colsep colsepf def gsave %/pmetamf pmetam1f def % /pmetamf pmetam1f def %pmetam1f pmetamdf pmetam2f {/pmetamf exch def /pmetam pmetamf def %***************************************************** xchart xchart3 lt {%xchart=xchart3 for CM %BEG special for ColorInterpolation /xchartj pchart def %sRGB, Lr=0%, pchart=3 /hei -1 def /heM -1 def /ausz 8 def /xchartt (F) def %necessary if separation % PROC_LAB_IOF % PROC_RX0F_IOF % PROC_COLSEP_IOF colorm 1 eq {PROC_COLINT_IOF} if % PROC_COLINT_IOF % PROC_SPEC_IOF Colordata_sRGB_F %new setcolortrans_F %new proc_LAB729a_to_LAB*LabCh64M proc_LAB*LabCh64M_to_tab362_dy %END special for ColorInterpolation %************************************************* } ifelse %xchart>=xchart3 for CM 72 90 translate 0.01 MM dup scale 0 0 moveto 24600 0 rlineto 0 17220 rlineto -24600 0 rlineto closepath stroke 1800 -240 moveto 240 /Times-ISOL1 FS lanindf cvishow (-) show colormf cvishow deintpf cvishow xcolorf cvishow xchartf cvishow pchartf cvishow colsepf cvishow (-F) show pmetamf cvishow grestore gsave xchart xchart3P11 le {%BEG xchart<=xchart3P11 BeginEPSFF 0 MM 0 MM translate %%BeginDocument: %*************************************** %line 199 %BEG INCLUDE TEST FILE at line 200 %!PS-Adobe-3.0 EPSF-3.0 QF720-72.EPS %%BoundingBox: 70 82 786 582 %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: http://130.149.60.45/~farbmetrik/QF72/) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://www.ps.bam.de or http://130.149.60.45/~farbmetrik) /Keywords (image reproduction, colour devices, colour vision) /Creator (klaus.richter@mac.com) /CreationDate (D:2012030112000) /ModDate (D:2012030112000) /DOCINFO pdfmark07 [ /View [ /FitB ] /DOCVIEW pdfmark07 %END PDFDE011 %line 20 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def /A4quer {598 0 translate 90 rotate} 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 /Courier findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /Courier-ISOL1 exch definefont pop /Courier-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierB-ISOL1 exch definefont pop /TK0 {250 /Times-ISOL1 FS} bind def /TM0 {300 /Times-ISOL1 FS} bind def /TG0 {350 /Times-ISOL1 FS} bind def /TIK0 {250 /TimesI-ISOL1 FS} bind def /TIM0 {300 /TimesI-ISOL1 FS} bind def /TIG0 {350 /TimesI-ISOL1 FS} bind def /TBK0 {250 /TimesB-ISOL1 FS} bind def /TBM0 {300 /TimesB-ISOL1 FS} bind def /TBG0 {350 /TimesB-ISOL1 FS} bind def /TBIK0 {250 /TimesBI-ISOL1 FS} bind def /TBIM0 {300 /TimesBI-ISOL1 FS} bind def /TBIG0 {350 /TimesBI-ISOL1 FS} bind def /CKK0 {200 /Courier-ISOL1 FS} bind def /CK0 {250 /Courier-ISOL1 FS} bind def /CM0 {300 /Courier-ISOL1 FS} bind def /CG0 {350 /Courier-ISOL1 FS} bind def /CBKK0 {200 /CourierB-ISOL1 FS} bind def /CBK0 {250 /CourierB-ISOL1 FS} bind def /CBM0 {300 /CourierB-ISOL1 FS} bind def /CBG0 {350 /CourierB-ISOL1 FS} bind def /TV1 {160 /Times-ISOL1 FS} bind def /TS1 {200 /Times-ISOL1 FS} bind def /TK1 {250 /Times-ISOL1 FS} bind def /TM1 {300 /Times-ISOL1 FS} bind def /TG1 {350 /Times-ISOL1 FS} bind def /TIV1 {160 /TimesI-ISOL1 FS} bind def /TIS1 {200 /TimesI-ISOL1 FS} bind def /TIK1 {250 /TimesI-ISOL1 FS} bind def /TIM1 {300 /TimesI-ISOL1 FS} bind def /TIG1 {350 /TimesI-ISOL1 FS} bind def /TBV1 {160 /TimesB-ISOL1 FS} bind def /TBS1 {200 /TimesB-ISOL1 FS} bind def /TBK1 {250 /TimesB-ISOL1 FS} bind def /TBM1 {300 /TimesB-ISOL1 FS} bind def /TBG1 {350 /TimesB-ISOL1 FS} bind def /TBIV1 {080 /TimesBI-ISOL1 FS} bind def /TBIS1 {100 /TimesBI-ISOL1 FS} bind def /TBIK1 {250 /TimesBI-ISOL1 FS} bind def /TBIM1 {300 /TimesBI-ISOL1 FS} bind def /TBIG1 {350 /TimesBI-ISOL1 FS} bind def /CBKK {200 /CourierB-ISOL1 FS} bind def /CBK {250 /CourierB-ISOL1 FS} bind def /CBM {300 /CourierB-ISOL1 FS} bind def /CBG {350 /CourierB-ISOL1 FS} bind def /CBKKK {160 /CourierB-ISOL1 FS} bind def /TV {080 /Times-ISOL1 FS} bind def /TS {100 /Times-ISOL1 FS} bind def /TK {125 /Times-ISOL1 FS} bind def /TM {140 /Times-ISOL1 FS} bind def /TG {175 /Times-ISOL1 FS} bind def /TIV {080 /TimesI-ISOL1 FS} bind def /TIS {100 /TimesI-ISOL1 FS} bind def /TIK {125 /TimesI-ISOL1 FS} bind def /TIM {140 /TimesI-ISOL1 FS} bind def /TIG {175 /TimesI-ISOL1 FS} bind def /TBV {080 /TimesB-ISOL1 FS} bind def /TBS {100 /TimesB-ISOL1 FS} bind def /TBK {125 /TimesB-ISOL1 FS} bind def /TBM {140 /TimesB-ISOL1 FS} bind def /TBG {175 /TimesB-ISOL1 FS} bind def /TBIV {080 /TimesBI-ISOL1 FS} bind def /TBIS {100 /TimesBI-ISOL1 FS} bind def /TBIK {125 /TimesBI-ISOL1 FS} bind def /TBIM {140 /TimesBI-ISOL1 FS} bind def /TBIG {175 /TimesBI-ISOL1 FS} 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 /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 %************************************************************ /RGB54CR_L 162 array def %54x3=162 /RGB54CR_L [%54 colours of colour rendering (CR) test chart 1.000 0.000 0.000 %01 R00Yd %RGB54CR 1.000 0.250 0.000 %02 R25Yd 1.000 0.500 0.000 %03 R50Yd 1.000 0.750 0.000 %04 R75Yd 1.000 1.000 0.000 %05 Y00Gd 0.750 1.000 0.000 %06 Y25Gd 0.500 1.000 0.000 %07 Y50Gd 0.250 1.000 0.000 %08 Y75Gd 0.000 1.000 0.000 %09 G00Bd = 10 0.000 1.000 0.000 %10 G00Bd 0.000 1.000 0.500 %11 G25Bd 0.000 1.000 1.000 %12 G50Bd 0.000 0.500 1.000 %13 G75Bd 0.000 0.000 1.000 %14 B00Rd 0.500 0.000 1.000 %15 B25Rd 1.000 0.000 1.000 %16 B50Rd 1.000 0.000 0.500 %17 B75Rd 1.000 0.000 0.000 %18 R00Yd = 01 1.000 0.500 0.500 %19 R00Yd %lcolors 1.000 0.750 0.500 %20 R50Yd 1.000 1.000 0.500 %21 Y00Gd 0.750 1.000 0.500 %22 Y50Gd 0.500 1.000 0.500 %23 G00Bd 0.500 1.000 1.000 %24 G50Bd 0.500 0.500 1.000 %25 B00Rd 1.000 0.500 1.000 %26 B50Rd 1.000 0.500 0.500 %27 R00Yd = 19 0.750 0.250 0.250 %28 R00Yd %zcolors 0.750 0.500 0.250 %29 R50Yd 0.750 0.750 0.250 %30 Y00Gd 0.500 0.750 0.250 %31 Y50Gd 0.250 0.750 0.250 %32 G00Bd 0.250 0.750 0.750 %33 G50Bd 0.250 0.250 0.750 %34 B00Rd 0.750 0.250 0.750 %35 B50Rd 0.750 0.250 0.250 %36 R00Yd = 28 0.500 0.000 0.000 %37 R00Yd %dcolors 0.500 0.250 0.000 %38 R50Yd 0.500 0.500 0.000 %38 Y00Gd 0.250 0.500 0.000 %40 Y50Gd 0.000 0.500 0.000 %41 G00Bd 0.000 0.500 0.500 %42 G50Bd 0.000 0.000 0.500 %43 B00Rd 0.500 0.000 0.500 %44 B50Rd 0.500 0.000 0.000 %45 R00Yd = 37 0.000 0.000 0.000 %46 N00Wd %ncolors 0.125 0.125 0.125 %47 N13Wd 0.250 0.250 0.250 %48 N25Md 0.375 0.375 0.375 %49 N38Wd 0.500 0.500 0.500 %50 N50Wd 0.625 0.625 0.625 %51 N63Wd 0.750 0.750 0.750 %52 N75Wd 0.875 0.875 0.875 %53 N88Wd 1.000 1.000 1.000 %54 W00Nd = W ] def %54 colours of colour rendering test chart /RGB54CRt_L 54 array def /RGB54CRt_L [%high chromatic series: %relative hue h*, brillance i*, and chroma c*, range 0 ... 100 (R00Y_100_100) (R25Y_100_100) (R50Y_100_100) (R75Y_100_100) (Y00G_100_100) (Y25G_100_100) (Y50G_100_100) (Y75G_100_100) (G00B_100_100) (G00B_100_100) (G25B_100_100) (G50B_100_100) (G75B_100_100) (B00R_100_100) (B25R_100_100) (B50R_100_100) (B75R_100_100) (R00Y_100_100) %whitetish series (R00Y_100_050) (R50Y_100_050) (Y00G_100_050) (Y50G_100_050) (G00B_100_050) (G50B_100_050) (B00R_100_050) (B50R_100_050) (R00Y_100_050) %grayish series (R00Y_075_050) (R50Y_075_050) (Y00G_075_050) (Y50G_075_050) (G00B_075_050) (G50B_075_050) (B00R_075_050) (B50R_075_050) (R00Y_075_050) %blackish series (R00Y_050_050) (R50Y_050_050) (Y00G_050_050) (Y50G_050_050) (G00B_050_050) (G50B_050_050) (B00R_050_050) (B50R_050_050) (R00Y_050_050) %gray series (NW_000) (NW_013) (NW_025) (NW_038) (NW_050) (NW_063) (NW_075) (NW_088) (NW_100) ] def /RGB54CM_L 162 array def %54x3=162 /RGB54CM_L [%54 colours of colour rendering metamers (CM) test chart 0.750 0.250 0.250 %01 R00Yd %RGB54CM, zcolors 0.750 0.500 0.250 %02 R50Yd 0.750 0.750 0.250 %03 Y00Gd 0.500 0.750 0.250 %04 Y50Gd 0.250 0.750 0.250 %05 G00Bd 0.250 0.750 0.750 %06 G50Bd 0.250 0.250 0.750 %07 B00Rd 0.750 0.250 0.750 %08 B50Rd 0.750 0.250 0.250 %09 R00Yd = 28 0.750 0.250 0.250 %10 R00Yd %RGB54CM, zcolors 0.750 0.500 0.250 %11 R50Yd 0.750 0.750 0.250 %12 Y00Gd 0.500 0.750 0.250 %13 Y50Gd 0.250 0.750 0.250 %14 G00Bd 0.250 0.750 0.750 %15 G50Bd 0.250 0.250 0.750 %16 B00Rd 0.750 0.250 0.750 %17 B50Rd 0.750 0.250 0.250 %18 R00Yd = 28 0.750 0.250 0.250 %19 R00Yd %RGB54CM, zcolors 0.750 0.500 0.250 %20 R50Yd 0.750 0.750 0.250 %21 Y00Gd 0.500 0.750 0.250 %22 Y50Gd 0.250 0.750 0.250 %23 G00Bd 0.250 0.750 0.750 %24 G50Bd 0.250 0.250 0.750 %25 B00Rd 0.750 0.250 0.750 %26 B50Rd 0.750 0.250 0.250 %27 R00Yd = 28 0.000 0.000 0.000 %28 N00Wd %ncolors 0.125 0.125 0.125 %29 N13Wd 0.250 0.250 0.250 %30 N25Md 0.375 0.375 0.375 %31 N38Wd 0.500 0.500 0.500 %32 N50Wd 0.625 0.625 0.625 %33 N63Wd 0.750 0.750 0.750 %34 N75Wd 0.875 0.875 0.875 %35 N88Wd 1.000 1.000 1.000 %36 W00Nd = W 0.000 0.000 0.000 %37 N00Wd %ncolors 0.125 0.125 0.125 %38 N13Wd 0.250 0.250 0.250 %39 N25Md 0.375 0.375 0.375 %40 N38Wd 0.500 0.500 0.500 %41 N50Wd 0.625 0.625 0.625 %42 N63Wd 0.750 0.750 0.750 %43 N75Wd 0.875 0.875 0.875 %44 N88Wd 1.000 1.000 1.000 %45 W00Nd = W 0.000 0.000 0.000 %46 N00Wd %ncolors 0.125 0.125 0.125 %47 N13Wd 0.250 0.250 0.250 %48 N25Md 0.375 0.375 0.375 %49 N38Wd 0.500 0.500 0.500 %50 N50Wd 0.625 0.625 0.625 %51 N63Wd 0.750 0.750 0.750 %52 N75Wd 0.875 0.875 0.875 %53 N88Wd 1.000 1.000 1.000 %54 W00Nd = W ] def %54 colours of colour rendering test chart /RGB54CMt_L 54 array def /RGB54CMt_L [%3 times chromatic grayish series, 3 times gray series %relative hue h*, brillance i*, and chroma c*, range 0 ... 100 %grayish series (R00Y_075_050) (R50Y_075_050) (Y00G_075_050) (Y50G_075_050) (G00B_075_050) (G50B_075_050) (B00R_075_050) (B50R_075_050) (R00Y_075_050) %grayish series (R00Y_075_050) (R50Y_075_050) (Y00G_075_050) (Y50G_075_050) (G00B_075_050) (G50B_075_050) (B00R_075_050) (B50R_075_050) (R00Y_075_050) %grayish series (R00Y_075_050) (R50Y_075_050) (Y00G_075_050) (Y50G_075_050) (G00B_075_050) (G50B_075_050) (B00R_075_050) (B50R_075_050) (R00Y_075_050) %gray series (NW_000) (NW_013) (NW_025) (NW_038) (NW_050) (NW_063) (NW_075) (NW_088) (NW_100) %gray series (NW_000) (NW_013) (NW_025) (NW_038) (NW_050) (NW_063) (NW_075) (NW_088) (NW_100) %gray series (NW_000) (NW_013) (NW_025) (NW_038) (NW_050) (NW_063) (NW_075) (NW_088) (NW_100) ] def %****************************************************** /F49col00 147 array def %48+1x3 /F49col00 [%Hue circle no. 0 to 47+1; hue circle de 1.000 0.000 0.000 %00 r00ye r00yd %standard e or d interpretation 1.000 0.125 0.000 %01 r12ye r12yd 1.000 0.250 0.000 %02 r25ye r25yd 1.000 0.375 0.000 %03 r37ye r37yd 1.000 0.500 0.000 %04 r50ye r50yd 1.000 0.625 0.000 %05 r62ye r62yd 1.000 0.750 0.000 %06 r75ye r75yd 1.000 0.875 0.000 %07 r87ye r87yd 1.000 1.000 0.000 %08 y00ge y00gd 0.875 1.000 0.000 %09 y12ge y12gd 0.750 1.000 0.000 %10 y25ge y25gd 0.625 1.000 0.000 %11 y37ge y37gd 0.500 1.000 0.000 %12 y50ge y50gd 0.375 1.000 0.000 %13 y62ge y62gd 0.250 1.000 0.000 %14 y75ge y75gd 0.125 1.000 0.000 %15 y87ge y87gd 0.000 1.000 0.000 %16 g00be g00cd 0.000 1.000 0.125 %17 g06be g12cd 0.000 1.000 0.250 %18 g12be g25cd 0.000 1.000 0.375 %19 g18be g37cd 0.000 1.000 0.500 %20 g25be g50cd 0.000 1.000 0.625 %21 g31be g62cd 0.000 1.000 0.750 %22 g37be g75cd 0.000 1.000 0.875 %23 g43be g87cd 0.000 1.000 1.000 %24 g50be c00bd 0.000 0.875 1.000 %25 g56be c12bd 0.000 0.750 1.000 %26 g62be c25bd 0.000 0.625 1.000 %27 g68be c37bd 0.000 0.500 1.000 %28 g75be c50bd 0.000 0.375 1.000 %29 g81be c62bd 0.000 0.250 1.000 %30 g87be c75bd 0.000 0.125 1.000 %31 g93be c87bd 0.000 0.000 1.000 %32 b00re b00md 0.125 0.000 1.000 %33 b06re b12md 0.250 0.000 1.000 %34 b12re b25md 0.375 0.000 1.000 %35 b18re b37md 0.500 0.000 1.000 %36 b24re b50md 0.625 0.000 1.000 %37 b31re b67md 0.750 0.000 1.000 %38 b37re b75md 0.875 0.000 1.000 %39 b43re b87md 1.000 0.000 1.000 %40 b50re m00rd 1.000 0.000 0.875 %41 b56re m12rd 1.000 0.000 0.750 %42 b62re m25rd 1.000 0.000 0.625 %43 b68re m37rd 1.000 0.000 0.500 %44 b75re m50rd 1.000 0.000 0.375 %45 b81re m62rd 1.000 0.000 0.250 %46 b87re m75rd 1.000 0.000 0.125 %47 b93re m87rd 1.000 0.000 0.000 %48 r00ye r00yd no. 0 ] def /cvishow {cvi 6 string cvs show} def /cvsshow1 {10 mul cvi 0.1 mul 7 string cvs show ( ) show} def /cvsshow2 {100 mul cvi 0.01 mul 7 string cvs show ( ) show} def /cvsshow3 {1000 mul cvi 0.001 mul 7 string cvs show ( ) show} def /tfn {0.00 0.00 0.00 setrgbcolor} bind def /tfd {0.25 0.25 0.25 setrgbcolor} bind def /tfz {0.50 0.50 0.50 setrgbcolor} bind def /tfh {0.75 0.75 0.75 setrgbcolor} bind def /tfw {1.00 1.00 1.00 setrgbcolor} 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 /rem %x0, y0 width heigth {/heigth exch def /width exch def /y0 exch def /x0 exch def x0 width 0.5 mul add y0 heigth 0.5 mul add moveto width 0 rlineto 0 heigth rlineto width neg 0 rlineto closepath } bind def /outrecfi { %x y width heigth c m y k rec fill} bind def /outrecst { %x y width heigth c m y k rec stroke} bind def %**************************************************************************** /XYZ*system54 { %BEG procedure XYZ*system54 /XYZrx089 162 array def %54*3=162 /XYZrx100 162 array def /LAB*rx089 162 array def %54*3=162 /IM0 54 def /IM1 IM0 1 sub def /IM3 IM0 3 mul 1 sub def /IM4 IM0 4 mul 1 sub def /RGB0_L 162 array def 0 1 IM3 {/i exch def %i=0,IM3 RGB0_L i RGB54CR_L i get 1000 mul put } for %i=0,IM3 0 1 IM1 {/i exch def %i=0,IM1 /i30 i 3 mul def /i31 i30 1 add def /i32 i30 2 add def /j30 i 3 mul def /j31 j30 1 add def /j32 j30 2 add def RGB0_L j30 get 0.04045 le %equations of IEC 61966-2-1:2003 {/RsRGB RGB0_L j30 get 12.92 div def} {/RsRGB RGB0_L j30 get 0.001 mul 0.055 add 1.055 div 2.4 exp def} ifelse RGB0_L j31 get 0.04045 le {/GsRGB RGB0_L j31 get 12.92 div def} {/GsRGB RGB0_L j31 get 0.001 mul 0.055 add 1.055 div 2.4 exp def} ifelse RGB0_L j32 get 0.04045 le {/BsRGB RGB0_L j32 get 12.92 div def} {/BsRGB RGB0_L j32 get 0.001 mul 0.055 add 1.055 div 2.4 exp def} ifelse XYZrx100 i30 0.4124 RsRGB mul 0.3576 GsRGB mul add 0.1805 BsRGB mul add 100 mul put XYZrx100 i31 0.2126 RsRGB mul 0.7152 GsRGB mul add 0.0722 BsRGB mul add 100 mul put XYZrx100 i32 0.0193 RsRGB mul 0.1192 GsRGB mul add 0.9505 BsRGB mul add 100 mul put } for %i=0,IM1 0 1 IM3 {/i exch def %i=0,IM3 XYZrx089 i XYZrx100 i get 0.8859 mul put } for %i=0,IM3 /iN 45 3 mul def /iW 53 3 mul def /XLN100 XYZrx100 iN get def /YLN100 XYZrx100 iN 1 add get def /ZLN100 XYZrx100 iN 2 add get def /XLW100 XYZrx100 iW get def /YLW100 XYZrx100 iW 1 add get def /ZLW100 XYZrx100 iW 2 add get def /XLN089 XYZrx089 iN get def /YLN089 XYZrx089 iN 1 add get def /ZLN089 XYZrx089 iN 2 add get def /XLW089 XYZrx089 iW get def /YLW089 XYZrx089 iW 1 add get def /ZLW089 XYZrx089 iW 2 add get def % achromatic (D65) colours /XLWD65100 95.04 def /YLWD65100 100.00 def /ZLWD65100 108.88 def /XLWD65089 XLWD65100 0.8859 mul def /YLWD65089 YLWD65100 0.8859 mul def /ZLWD65089 ZLWD65100 0.8859 mul def /XLN001 XLWD65100 100 div def /YLN001 YLWD65100 100 div def /ZLN001 ZLWD65100 100 div def %achromatic (D50) colours /XLWD50100 96.42 def /YLWD50100 100.00 def /ZLWD50100 82.51 def /XLWD50089 XLWD50100 0.8859 mul def /YLWD50089 YLWD50100 0.8859 mul def /ZLWD50089 ZLWD50100 0.8859 mul def /XLN001 XLWD50100 100 div def /YLN001 YLWD50100 100 div def /ZLN001 ZLWD50100 100 div def %achromatic (A) colours /XLWDA0100 109.85 def /YLWDA0100 100.00 def /ZLWDA0100 35.58 def /XLWDA0089 XLWDA0100 0.8859 mul def /YLWDA0089 YLWDA0100 0.8859 mul def /ZLWDA0089 ZLWDA0100 0.8859 mul def /XLN001 XLWDA0100 100 div def /YLN001 YLWDA0100 100 div def /ZLN001 ZLWDA0100 100 div def %achromatic (P4000) colours to be corrected /XLWDP4100 109.85 def /YLWDP4100 100.00 def /ZLWDP4100 35.58 def /XLWDP4089 XLWDP4100 0.8859 mul def /YLWDP4089 YLWDP4100 0.8859 mul def /ZLWDP4089 ZLWDP4100 0.8859 mul def /XLN001 XLWDP4100 100 div def /YLN001 YLWDP4100 100 div def /ZLN001 ZLWDP4100 100 div def 0 1 IM1 {/i exch def %i=0,57% /i30 i 3 mul def /i31 i 3 mul 1 add def /i32 i 3 mul 2 add def /XQ XYZrx089 i30 get XLWD65100 div def /YQ XYZrx089 i31 get YLWD65100 div def /ZQ XYZrx089 i32 get ZLWD65100 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 LAB*rx089 i30 YQ 0.008856 lt {903.3 YQ mul} {YQ 0.33333333 exp 116 mul 16 sub} ifelse put LAB*rx089 i31 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 LAB*rx089 i32 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,IM1 } bind def %END procedure XYZ*system54 %******************************************************************* /proc_rgb_dyF_LAB*'dyF {%BEG proc_rgb_dyF_LAB*'dyF /R01000 r_dyF 1000 mul def /G01000 g_dyF 1000 mul def /B01000 b_dyF 1000 mul def R01000 0.04045 le %equations of IEC 61966-2-1:2003 {/RsRGB R01000 12.92 div def} {/RsRGB R01000 0.001 mul 0.055 add 1.055 div 2.4 exp def} ifelse G01000 0.04045 le {/GsRGB G01000 12.92 div def} {/GsRGB G01000 0.001 mul 0.055 add 1.055 div 2.4 exp def} ifelse B01000 0.04045 le {/BsRGB B01000 12.92 div def} {/BsRGB B01000 0.001 mul 0.055 add 1.055 div 2.4 exp def} ifelse /X*'dyF 0.4124 RsRGB mul 0.3576 GsRGB mul add 0.1805 BsRGB mul add 88.59 mul def /Y*'dyF 0.2126 RsRGB mul 0.7152 GsRGB mul add 0.0722 BsRGB mul add 88.59 mul def /Z*'dyF 0.0193 RsRGB mul 0.1192 GsRGB mul add 0.9505 BsRGB mul add 88.59 mul def % achromatic (D65) colours /XLWD65100 95.04 def /YLWD65100 100.00 def /ZLWD65100 108.88 def /XQ X*'dyF XLWD65100 div def /YQ Y*'dyF YLWD65100 div def /ZQ Z*'dyF ZLWD65100 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*'dyF YQ 0.008856 lt {903.3 YQ mul} {YQ 0.33333333 exp 116 mul 16 sub} ifelse def /a*'dyF 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*'dyF 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 /C*'dyF a*'dyF dup mul b*'dyF dup mul add 0.0001 add sqrt def /h*'dyF b*'dyF a*'dyF 0.0001 add atan def } bind def %END proc_rgb_dyF_LAB*'dyF %******************************************************** /proc_rgb'*dyF_LAB'*dyF {%BEG proc_rgb'*dyF_LAB'*dyF /R01000 r'*dyF 1000 mul def /G01000 g'*dyF 1000 mul def /B01000 b'*dyF 1000 mul def R01000 0.04045 le %equations of IEC 61966-2-1:2003 {/RsRGB R01000 12.92 div def} {/RsRGB R01000 0.001 mul 0.055 add 1.055 div 2.4 exp def} ifelse G01000 0.04045 le {/GsRGB G01000 12.92 div def} {/GsRGB G01000 0.001 mul 0.055 add 1.055 div 2.4 exp def} ifelse B01000 0.04045 le {/BsRGB B01000 12.92 div def} {/BsRGB B01000 0.001 mul 0.055 add 1.055 div 2.4 exp def} ifelse /X'*dyF 0.4124 RsRGB mul 0.3576 GsRGB mul add 0.1805 BsRGB mul add 88.59 mul def /Y'*dyF 0.2126 RsRGB mul 0.7152 GsRGB mul add 0.0722 BsRGB mul add 88.59 mul def /Z'*dyF 0.0193 RsRGB mul 0.1192 GsRGB mul add 0.9505 BsRGB mul add 88.59 mul def % achromatic (D65) colours /XLWD65100 95.04 def /YLWD65100 100.00 def /ZLWD65100 108.88 def /XQ X'*dyF XLWD65100 div def /YQ Y'*dyF YLWD65100 div def /ZQ Z'*dyF ZLWD65100 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'*dyF YQ 0.008856 lt {903.3 YQ mul} {YQ 0.33333333 exp 116 mul 16 sub} ifelse def /a'*dyF 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'*dyF 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 /C'*dyF a'*dyF dup mul b'*dyF dup mul add 0.0001 add sqrt def /h'*dyF b'*dyF a'*dyF 0.0001 add atan def } bind def %END proc_rgb'*dyF_LAB'*dyF %************************************************************* /proc_LAB*ioL {%BEG Procedure proc_LAB*ioL %requires ISRL*ioL=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* 132 array def %12x3=36 including N,W + 16x3=48 elementary system + 16x3=48 device system /LAB*a 132 array def /LAB*Hx 13 array def %0_to_6 8_to_12 for device and elemetary colours /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 /LAB*TE %used in file and frame [(ORS18) (TLS00) (FRS06) (TSL18) (NLS00) (NLS18) (SRS18) (TLS70) (TLS00) (TLS06) (TLS11) (TLS18) (TLS27) (TLS38) (TLS52) (TLS70) (OLS00) (OLS06) (OLS11) (OLS18) (OLS27) (OLS38) (OLS52) (OLS70)] def %FRS09_92.DAT: measured data are not dapated here; 55 lines, 141:195 ISRL*ioL 0 eq { %ISRL*ioL=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 %ZE45N_CM_OF_080602_1080.TXT, 1080 colours, 20080602, Matching OFF $ (FRS09_92) %100 x LAB* %#1000 x (r g b c m y 0) %nr. pos $ %0035.06 0060.53 0039.66 %#1000 0000 0000 0000 1000 1000 0000 %0648 S19 %O1 0 $ %0083.77 -004.50 0103.15 %#1000 1000 0000 0000 0000 1000 0000 %0720 a19 %Y1 1 $ %0044.13 -062.11 0043.56 %#0000 1000 0000 1000 0000 1000 0000 %0072 I01 %L1 2 $ %0052.66 -028.56 -036.99 %#0000 1000 1000 1000 0000 0000 0000 %0080 I09 %C1 3 $ %0014.15 0050.78 -062.60 %#0000 0000 1000 1000 1000 0000 0000 %0008 A09 %V1 4 $ %0037.37 0079.18 -037.93 %#1000 0000 1000 0000 1000 0000 0000 %0656 S27 %M1 5 $ %0008.58 0000.46 -003.35 %#0000 0000 0000 1000 1000 1000 0000 %0000 A01 %N1 6 $ %0092.02 0000.69 -006.48 %#1000 1000 1000 0000 0000 0000 0000 %0728 a27 %W1 7 $ %$ %0035.87 0060.76 0039.80 %#1000 0000 0000 0000 1000 1000 0000 %0801 j01 %O2 0 $ %0083.76 -004.64 0102.56 %#1000 1000 0000 0000 0000 1000 0000 %0882 j10 %Y2 1 $ %0043.65 -062.07 0043.08 %#0000 1000 0000 1000 0000 1000 0000 %0963 j19 %L2 2 $ %0052.82 -028.73 -036.80 %#0000 1000 1000 1000 0000 0000 0000 %0737 b09 %C2 3 $ %0013.33 0052.23 -063.40 %#0000 0000 1000 1000 1000 0000 0000 %0818 b18 %V2 4 $ %0037.56 0079.25 -037.75 %#1000 0000 1000 0000 1000 0000 0000 %0899 b27 %M2 5 $ %0008.16 0000.62 -003.84 %#0000 0000 0000 1000 1000 1000 0000 %0809 j09 %N2 6 $ %0092.07 0000.62 -006.26 %#1000 1000 1000 0000 0000 0000 0000 %0729 b01 %W2 7 $ %$ %ZE45N_CM_OF_080602_1080.TXT, 1080 colours, 20080602, Matching OFF $ (FRS09_92a) %100 x LAB*a %#1000 x (r g b c m y 0) %nr. pos $ %0035.06 0059.99 0044.01 %#1000 0000 0000 0000 1000 1000 0000 %0648 S19 %O1 0 $ %0083.77 -005.16 0109.32 %#1000 1000 0000 0000 0000 1000 0000 %0720 a19 %Y1 1 $ %0044.13 -062.67 0048.25 %#0000 1000 0000 1000 0000 1000 0000 %0072 I01 %L1 2 $ %0052.66 -029.15 -031.98 %#0000 1000 1000 1000 0000 0000 0000 %0080 I09 %C1 3 $ %0014.15 0050.30 -059.03 %#0000 0000 1000 1000 1000 0000 0000 %0008 A09 %V1 4 $ %0037.37 0078.64 -033.49 %#1000 0000 1000 0000 1000 0000 0000 %0656 S27 %M1 5 $ %0008.58 0000.00 0000.00 %#0000 0000 0000 1000 1000 1000 0000 %0000 A01 %N1 6 $ %0092.02 0000.00 0000.00 %#1000 1000 1000 0000 0000 0000 0000 %0728 a27 %W1 7 $ %$ %0035.87 0060.13 0044.44 %#1000 0000 0000 0000 1000 1000 0000 %0801 j01 %O2 0 $ %0083.76 -005.27 0108.59 %#1000 1000 0000 0000 0000 1000 0000 %0882 j10 %Y2 1 $ %0043.65 -062.69 0047.95 %#0000 1000 0000 1000 0000 1000 0000 %0963 j19 %L2 2 $ %0052.82 -029.35 -031.67 %#0000 1000 1000 1000 0000 0000 0000 %0737 b09 %C2 3 $ %0013.33 0051.60 -059.41 %#0000 0000 1000 1000 1000 0000 0000 %0818 b18 %V2 4 $ %0037.56 0078.62 -033.06 %#1000 0000 1000 0000 1000 0000 0000 %0899 b27 %M2 5 $ %0008.16 0000.00 0000.00 %#0000 0000 0000 1000 1000 1000 0000 %0809 j09 %N2 6 $ %0092.07 0000.00 0000.00 %#1000 1000 1000 0000 0000 0000 0000 %0729 b01 %W2 7 $ %$ ] 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 (FRS06. FUJI) 32.57 61.14 43.72 %8-0-0 O-W 0 olv* setrgbcolor 64 82.73 -3.51 109.24 %8-8-0 Y-W 1 olv* setrgbcolor 32 39.43 -62.87 42.80 %0-8-0 L-W 2 olv* setrgbcolor 80 47.86 -27.73 -37.62 %0-8-8 C-W 3 olv* setrgbcolor 0 actual printer 10.16 53.56 -62.92 %0-0-8 V-W 4 olv* setrgbcolor 96 34.50 79.53 -36.77 %8-0-8 M-W 5 olv* setrgbcolor 16 06.25 -1.63 -1.73 %0-0-0 N-W 6 olv* setrgbcolor 48 91.97 -0.18 -5.11 %8-8-8 A-W 7 olv* setrgbcolor ] 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*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 %sISO=0,11 /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 { %FRS06/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 %Definition 8 to 11 (24 to 35=33+2) /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 LAB*a i30 LAB* i30 get put LAB*a i31 LAB* i31 get put LAB*a i32 LAB* i32 get put } ifelse } for %sISO=0,11 % possible change of LAB*a according to reduced gamut %LAB* = 20 for Black N %LAB* = 95 for White W %cfakt = (95 - 20)/(95.41 - 18.01) = 0.969 %LAB*L*Nn = 20 for Black N instead of LAB*L*N = 18,01 %LAB*L*Wn = 95 for White W instead of LAB*L*W = 95,41 %LAB*L*Zn = 20+(95-20)/2=57,5 for Grey Z instead of %LAB*L*Z = 18,01+(95,41-18,01)/2=56,71 %L*neu = L*alt + (1 - cfakt %For achromatic %deltaLmean = 57,5 (1-c*neu); 56,71 (1-c*alt) %deltaLmimu = 20,0 (1-c*neu); 18,01 (1-c*alt) %deltaLplus = 95,0 (1-c*neu); 95,41 (1-c*alt) %For chromatic M %deltaLmean = L*Ma,neu; L*Ma,alt = known %C*Ma,alt known, C*Ma,neu known /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 /L*Wioref L*Wio def /L*Nioref L*Nio def /cfakt 1 def %/cfakt L*Wioref L*Nioref sub L*Wio L*Nio sub div def cfakt 1 ne {%cfakt#1 %change of lightness for Maximum colour /l*CIEN L*Nioref L*Nio sub L*Wio L*Nio sub div def /l*CIEW L*Wioref L*Nio sub L*Wio L*Nio sub div def %LAB* 18 L*Nioref put %defined change of lightness and chroma a*,b* for N LAB* 19 A*Nio A*Wio A*Nio sub l*CIEN mul add put LAB* 20 B*Nio B*Wio B*Nio sub l*CIEN mul add put %LAB* 21 L*Wioref put %defined change of lightness and chroma a*,b* for W LAB* 22 A*Nio A*Wio A*Nio sub l*CIEW mul add put LAB* 23 B*Nio B*Wio B*Nio sub l*CIEW mul add put %change of chroma by factor cfakt 0 1 07 {/iISO exch def /i30 iISO 3 mul def /i31 i30 1 add def /i32 i30 2 add def /l*CIEL LAB* i30 get L*Nio sub L*Wio L*Nio sub div def LAB* i30 L*Nioref L*Wioref L*Nioref sub l*CIEL mul add put LAB* i31 LAB* i31 get cfakt mul put LAB* i32 LAB* i32 get cfakt mul put } for } if %cfakt#1 /L*Nior LAB* 18 get def %r=reference for reverse transform /A*Nior LAB* 19 get def /B*Nior LAB* 20 get def /L*Wior LAB* 21 get def /A*Wior LAB* 22 get def /B*Wior LAB* 23 get def 0 1 7 {/iISO exch def %iISO=0,7 /i30 iISO 3 mul def /i31 i30 1 add def /i32 i30 2 add def /l*CIE LAB* i30 get L*Nior sub L*Wior L*Nior sub div def /a*sr A*Wior A*Nior sub l*CIE mul def /b*sr B*Wior B*Nior sub l*CIE mul def LAB*a i30 LAB* i30 get put LAB*a i31 LAB* i31 get A*Nior sub a*sr sub put LAB*a i32 LAB* i32 get B*Nior sub b*sr sub put } for /L*Nio LAB*a 18 get def %=18.01 /A*Nio LAB*a 19 get def %=0 /B*Nio LAB*a 20 get def %=0 /L*Wio LAB*a 21 get def %=95.41 /A*Wio LAB*a 22 get def %=0 /B*Wio LAB*a 23 get def %=0 /A*Dio A*Wio A*Nio sub def %=0 /B*Dio B*Wio B*Nio sub def %=0 /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 %6+1 hue angles for 6 device colour (index 0 to 06) %4+1 hue angles for 4 elementary colours (index 8 to 12) %no. 6 and 7 originaly achromatic 0 1 11 {/iHx exch def /i1x iHx 3 mul 1 add def /i2x i1x 1 add def LAB*Hx iHx LAB*a i2x get LAB*a i1x get 0.000001 add atan put } for LAB*Hx 06 LAB*Hx 00 get 360 add put LAB*Hx 12 LAB*Hx 08 get 360 add put %6 Hue angles of elementary and intermediate colours e=RJGCgbBMbr /LAB*He 7 array def LAB*He 0 LAB*Hx 08 get put %R LAB*He 1 LAB*Hx 09 get put %J LAB*He 2 LAB*Hx 10 get put %G LAB*He 3 LAB*Hx 10 get LAB*Hx 11 get add 0.5 mul put %Cgb LAB*He 4 LAB*Hx 11 get put %B LAB*He 5 LAB*Hx 11 get LAB*Hx 08 get 360 add add 0.5 mul put %Mbr LAB*He 6 LAB*Hx 08 get 360 add put %R(+360) %6 Hue angles of device and intermediate colours d=OYLCVMO /LAB*Hd 7 array def LAB*Hd 0 LAB*Hx 00 get put %O LAB*Hd 1 LAB*Hx 01 get put %Y LAB*Hd 2 LAB*Hx 02 get put %L LAB*Hd 3 LAB*Hx 03 get put %C LAB*Hd 4 LAB*Hx 04 get put %V LAB*Hd 5 LAB*Hx 05 get put %M LAB*Hd 6 LAB*Hx 00 get 360 add put %O(+360) /COLhNam16 16 array def /COLhNam16 [(R00Y) (R25Y) (R50Y) (R75Y) (Y00G) (Y25G) (Y50G) (Y75G) (G00B) (G25B) (G50B) (G75B) (B00R) (B25R) (B50R) (B75R) ] def } bind def %END Procedure proc_LAB*ioL %*********************************************************** %%EndProlog gsave /lanind 1 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 /showea {1 lanind ge {show} {pop} ifelse} bind def /nshow {iyt /Times-ISOL1 FS show} def /nishow {-30 -50 rmoveto iyt 50 sub /Times-ISOL1 FS show 30 50 rmoveto} def /nishow0 {-00 -50 rmoveto iyt 20 sub /Times-ISOL1 FS show 00 50 rmoveto} def /nishowx {-00 -50 rmoveto iyt 50 sub /Times-ISOL1 FS show 00 50 rmoveto} def /kshow {iyt /TimesI-ISOL1 FS show} def /bshow {iyt /TimesB-ISOL1 FS show} def /jshow {iyt /TimesBI-ISOL1 FS show} def /ishow {-30 -50 rmoveto iyt 50 sub /TimesB-ISOL1 FS show 30 50 rmoveto} def /ishow0 {-00 -50 rmoveto iyt 50 sub /TimesB-ISOL1 FS show 00 50 rmoveto} def /eshow { 00 070 rmoveto iyt 50 sub /TimesB-ISOL1 FS show 00 -070 rmoveto} def /neshow { 00 070 rmoveto iyt 50 sub /Times-ISOL1 FS show 00 -070 rmoveto} def /F25col00 75 array def %24+1x3 0 1 24 {/i exch def %i=0,24 /j i 2 mul def /i30 i 3 mul def /i31 i30 1 add def /i32 i30 2 add def /j30 j 3 mul def /j31 j30 1 add def /j32 j30 2 add def F25col00 i30 F49col00 j30 get put F25col00 i30 1 add F49col00 j31 get put F25col00 i30 2 add F49col00 j32 get put } for %i=0,24 /F17col00 51 array def %16+1x3 0 1 7 {/i exch def %i=0,7 /i30 i 3 mul def /i31 i30 1 add def /i32 i30 2 add def F17col00 i30 F25col00 i30 get put F17col00 i31 F25col00 i31 get put F17col00 i32 F25col00 i32 get put } for %i=0,7 8 2 24 {/i exch def %i=8,24 /j 8 i 8 sub 2 idiv add def /i30 i 3 mul def /i31 i30 1 add def /i32 i30 2 add def /j30 j 3 mul def /j31 j30 1 add def /j32 j30 2 add def F17col00 j30 F25col00 i30 get put F17col00 j31 F25col00 i31 get put F17col00 j32 F25col00 i32 get put } for %i=8,24 /RGB54CC17_L 17 array def /RGB54CC17_L [%high chromatic series: %relative hue h*, brillance i*, and chroma c*, range 0 ... 100 (R00Y_100_100) 1.00 0.00 0.00 %00 (R25Y_100_100) 1.00 0.25 0.00 %01 (R50Y_100_100) 1.00 0.50 0.00 %02 (R75Y_100_100) 1.00 0.75 0.00 %03 (Y00G_100_100) 1.00 1.00 0.00 %04 (Y25G_100_100) 0.75 1.00 0.00 %05 (Y50G_100_100) 0.50 1.00 0.00 %06 (Y75G_100_100) 0.25 1.00 0.00 %07 (G00B_100_100) 0.00 1.00 0.00 %08 (G25B_100_100) 0.00 1.00 0.50 %09 (G50B_100_100) 0.00 1.00 1.00 %10 (G75B_100_100) 0.00 0.50 1.00 %11 (B00R_100_100) 0.00 0.00 1.00 %12 (B25R_100_100) 0.50 0.00 1.00 %13 (B50R_100_100) 1.00 0.00 1.00 %14 (B75R_100_100) 1.00 0.00 0.50 %15 (R00Y_100_100) 1.00 0.00 0.00 %16 repeat for circle ] def /LAB*ee 12 array def %2x3=12 Lab* for D65 /LAB*ee [39.92 58.74 27.99 %0 00_04 R CIE No.09 elementary in LAB 81.26 -2.89 71.56 %1 05_09 J CIE No.10 52.23 -42.42 13.60 %2 10_14 G CIE No.11 30.57 1.41 -46.47 %3 20_24 B CIE No.12 ] def /rgb_12 12 array def %RYGCBMd, NWd,e, RYGBe /rgb_12 [1.0 0.0 0.0 1.0 1.0 0.0 0.0 1.0 0.0 %RYGd 0.0 1.0 1.0 0.0 0.0 1.0 1.0 0.0 1.0 %CBMd 0.0 0.0 0.0 1.0 1.0 1.0 %NWd,e 1.0 0.0 0.0 1.0 1.0 0.0 0.0 1.0 0.0 0.0 0.0 1.0 %RYGBe ] def %************************************************************ /proc_CIELAB_D {%BEG proc_CIELAB_D 25 setlinewidth 1.0 setgray 0 0 moveto 2800 0 rlineto 0 2800 rlineto -2800 0 rlineto closepath fill 0.0 setgray 0 0 moveto 2800 0 rlineto 0 2800 rlineto -2800 0 rlineto closepath stroke 1200 1300 translate -1000 0 moveto 1000 0 lineto stroke 0 -1000 moveto 0 1000 lineto stroke 1100 0 moveto (a*) kshow (a) ishow 0 1100 moveto (b*) kshow (a) ishow /rx 774 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*x 1 def /g*x 0 def /b*x 0 def r*x g*x b*x setrgbcolor rx 030 cos mul rx 030 sin mul 100 0 360 arc fill /r*x 1 def /g*x 1 def /b*x 0 def r*x g*x b*x setrgbcolor 0 rx 100 0 360 arc fill /r*x 0 def /g*x 1 def /b*x 0 def r*x g*x b*x setrgbcolor rx 150 cos mul rx 150 sin mul 100 0 360 arc fill /r*x 0 def /g*x 1 def /b*x 1 def r*x g*x b*x setrgbcolor rx 210 cos mul rx 210 sin mul 100 0 360 arc fill /r*x 0 def /g*x 0 def /b*x 1 def r*x g*x b*x setrgbcolor 0 rx neg 100 0 360 arc fill /r*x 1 def /g*x 0 def /b*x 1 def r*x g*x b*x setrgbcolor rx 330 cos mul rx 330 sin mul 100 0 360 arc fill %plot hexagon in device (d) space 45 setlinewidth 0 setgray 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 10 mul B*Ma 10 mul moveto} {A*Ma 10 mul B*Ma 10 mul lineto} ifelse i 5 eq {closepath stroke} if } for %i=0,5 xchart 1 ge {%xchart>=1, always only for device space %plot hexagon in actual device (d) space 45 setlinewidth /deintpd deintp def %attention change of deintp to device d! /deintp 0 def %draws allways device space gamut! 0 1 5 {/i exch def %i=0,5 /r*x r*dd08M i get def /g*x g*dd08M i get def /b*x b*dd08M i get def r*x g*x b*x setrgbcolor %default for calculation of LAB* /LAB*axF LAB*adyF def /LAB*bxF LAB*bdyF def /A*Ma LAB*axF def /B*Ma LAB*bxF def 1 0 0 setrgbcolor i 0 eq {A*Ma 10 mul B*Ma 10 mul moveto} {A*Ma 10 mul B*Ma 10 mul lineto} ifelse i 5 eq {closepath stroke} if } for %i=0,5 /deintp deintpd def %change back to deintp! } if %xchart>=1 %plot line of actual hue 50 setlinewidth xcharts 0 eq {/r*x 1 def /g*x 0 def /b*x 0 def} if xcharts 1 eq {/r*x 1 def /g*x 1 def /b*x 0 def} if xcharts 2 eq {/r*x 0 def /g*x 1 def /b*x 0 def} if xcharts 3 eq {/r*x 0 def /g*x 1 def /b*x 1 def} if xcharts 4 eq {/r*x 0 def /g*x 0 def /b*x 1 def} if xcharts 5 eq {/r*x 1 def /g*x 0 def /b*x 1 def} if xcharts 5 le {%xcharts<=5 r*x g*x b*x setrgbcolor 0 0 moveto /A*Ma LAB*a xcharts 3 mul 1 add get def /B*Ma LAB*a xcharts 3 mul 2 add get def A*Ma 10 mul B*Ma 10 mul lineto stroke } if %xcharts<=5 xcharts 6 ge {%xcharts>=6 xchart 0 eq {%xchart=0,>0 xcharts 9 eq {/i1 0 def /i2 5 def i1 1 i2 {/i exch def %i=i1,i2 /L*Ma0 LAB*a i 3 mul 0 add get def %produces ORS18 /A*Ma0 LAB*a i 3 mul 1 add get def /B*Ma0 LAB*a i 3 mul 2 add get def rgb_12 i 3 mul 0 add get rgb_12 i 3 mul 1 add get rgb_12 i 3 mul 2 add get setrgbcolor 0 0 moveto A*Ma0 10 mul B*Ma0 10 mul lineto stroke A*Ma0 10 mul B*Ma0 10 mul moveto -100 -100 rlineto 200 200 rlineto stroke A*Ma0 10 mul B*Ma0 10 mul moveto -100 100 rlineto 200 -200 rlineto stroke } for %i=i1,i2 } if %one or 6 lines xcharts 10 ge xcharts 25 le and {%xcharts>=10,<=25 %16 measured data, see PE54L0NP.pdf, page 11/24 %PE540-72, Page 11/24 HIC*Fd rgb*Fd LabCh*Fd /LAB*a48 432 array def %48x9=432 /LAB*a48 [%HIC rgb LabCh nr (R00Y_100_100d) 1.000 0.000 0.000 48.4 66.1 40.2 77.4 31.3 %00 (R13Y_100_100d) 1.000 0.116 0.000 52.5 57.3 45.5 73.2 38.4 %01 (R25Y_100_100d) 1.000 0.233 0.000 56.8 48.0 50.5 69.8 46.4 %02 (R38Y_100_100d) 1.000 0.366 0.000 62.5 36.5 57.1 67.8 57.3 %03 (R50Y_100_100d) 1.000 0.500 0.000 68.6 25.0 63.9 68.7 68.6 %04 (R63Y_100_100d) 1.000 0.633 0.000 74.9 14.1 71.1 72.5 78.7 %05 (R75Y_100_100d) 1.000 0.766 0.000 80.6 4.8 77.2 77.4 86.4 %06 (R88Y_100_100d) 1.000 0.883 0.000 85.4 -2.5 82.3 82.3 91.7 %07 (Y00G_100_100d) 1.000 1.000 0.000 90.2 -9.6 88.2 88.7 96.2 %08 (Y13G_100_100d) 0.883 1.000 0.000 86.7 -14.2 83.5 84.7 99.6 %09 (Y25G_100_100d) 0.766 1.000 0.000 83.2 -18.4 79.9 82.0 102.9 %10 (Y38G_100_100d) 0.633 1.000 0.000 77.9 -25.1 69.5 74.0 109.8 %11 (Y50G_100_100d) 0.500 1.000 0.000 73.3 -31.7 62.7 70.3 116.8 %12 (Y63G_100_100d) 0.366 1.000 0.000 68.2 -39.5 55.9 68.5 125.2 %13 (Y75G_100_100d) 0.233 1.000 0.000 62.0 -49.7 43.2 65.9 138.9 %14 (Y88G_100_100d) 0.116 1.000 0.000 59.1 -57.1 38.5 68.9 145.9 %15 (G00C_100_100d) 0.000 1.000 0.000 55.8 -65.2 33.8 73.5 152.5 %16 (G13C_100_100d) 0.000 1.000 0.116 56.6 -62.9 24.0 67.3 159.0 %17 (G25C_100_100d) 0.000 1.000 0.233 57.4 -59.7 13.9 61.3 166.8 %18 (G38C_100_100d) 0.000 1.000 0.366 58.5 -54.9 1.5 55.0 178.4 %19 (G50C_100_100d) 0.000 1.000 0.500 59.3 -50.3 -9.0 51.1 190.2 %20 (G63C_100_100d) 0.000 1.000 0.633 60.1 -45.6 -18.7 49.3 202.3 %21 (G75C_100_100d) 0.000 1.000 0.766 61.1 -40.3 -27.8 49.0 214.6 %22 (G88C_100_100d) 0.000 1.000 0.883 62.0 -35.8 -34.7 49.9 224.0 %23 (C00B_100_100d) 0.000 1.000 1.000 63.0 -30.5 -42.0 51.9 234.0 %24 (C13B_100_100d) 0.000 0.883 1.000 59.4 -25.3 -42.7 49.7 239.2 %25 (C25B_100_100d) 0.000 0.766 1.000 55.8 -20.3 -43.2 47.7 244.7 %26 (C38B_100_100d) 0.000 0.633 1.000 50.8 -13.3 -43.9 45.9 253.0 %27 (C50B_100_100d) 0.000 0.500 1.000 45.7 -5.7 -44.6 45.0 262.6 %28 (C63B_100_100d) 0.000 0.366 1.000 40.4 2.6 -45.2 45.2 273.3 %29 (C75B_100_100d) 0.000 0.233 1.000 36.0 10.1 -46.1 47.2 282.3 %30 (C88B_100_100d) 0.000 0.116 1.000 32.1 17.3 -46.7 49.8 290.3 %31 (B00M_100_100d) 0.000 0.000 1.000 27.5 25.9 -47.3 54.0 298.7 %32 (B13M_100_100d) 0.116 0.000 1.000 29.5 33.4 -43.1 54.6 307.7 %33 (B25M_100_100d) 0.233 0.000 1.000 31.0 39.9 -38.5 55.5 315.9 %34 (B38M_100_100d) 0.366 0.000 1.000 35.1 44.5 -34.7 56.5 322.0 %35 (B50M_100_100d) 0.500 0.000 1.000 38.3 52.6 -28.5 59.9 331.5 %36 (B63M_100_100d) 0.633 0.000 1.000 41.2 59.3 -22.0 63.3 339.6 %37 (B75M_100_100d) 0.766 0.000 1.000 45.2 63.8 -18.2 66.4 344.0 %38 (B88M_100_100d) 0.883 0.000 1.000 47.5 68.6 -13.8 69.9 348.5 %39 (M00R_100_100d) 1.000 0.000 1.000 49.5 73.5 -9.0 74.1 352.9 %40 (M13R_100_100d) 1.000 0.000 0.883 49.4 72.4 -4.0 72.5 356.7 %41 (M25R_100_100d) 1.000 0.000 0.766 49.3 71.4 0.4 71.4 0.3 %42 (M38R_100_100d) 1.000 0.000 0.633 49.3 69.8 6.6 70.1 5.4 %43 (M50R_100_100d) 1.000 0.000 0.500 48.9 69.3 12.9 70.5 10.5 %44 (M63R_100_100d) 1.000 0.000 0.366 48.9 68.1 19.6 70.9 16.1 %45 (M75R_100_100d) 1.000 0.000 0.233 48.8 67.1 27.9 72.7 22.6 %46 (M88R_100_100d) 1.000 0.000 0.116 48.6 66.5 34.1 74.8 27.1 %47 ] def /indFa16 16 array def /indFa16 [%0 1 2 3 4 5 6 7 %0=R and xchart4=1, 4=Y and xchart4=5 00 02 04 06 08 10 12 14 %8 9 10 11 12 13 14 15 %8=G and xchart4=9, 12=B and xchart4=13 16 20 24 28 32 36 40 44] def /ix xchart4 1 sub def %i=0,15 /indx indFa16 ix get def /i90 indx 9 mul 4 add def /i91 i90 1 add def /i92 i90 2 add def /A*Ma0 LAB*a48 i91 get def /B*Ma0 LAB*a48 i92 get def /i90r indx 9 mul 1 add def /i91r i90r 1 add def /i92r i90r 2 add def /r_*Ma LAB*a48 i90r get def /g_*Ma LAB*a48 i91r get def /b_*Ma LAB*a48 i92r get def r_*Ma g_*Ma b_*Ma setrgbcolor 0 0 moveto A*Ma0 10 mul B*Ma0 10 mul lineto stroke A*Ma0 10 mul B*Ma0 10 mul moveto -100 -100 rlineto 200 200 rlineto stroke A*Ma0 10 mul B*Ma0 10 mul moveto -100 100 rlineto 200 -200 rlineto stroke } if %xcharts>=10,<=25 }%xchart=0 {%xchart>0 xcharts 9 eq {/i1 0 def /i2 15 def} %one or 16 lines {/i1 xcharts 10 sub def /i2 i1 def} ifelse i1 1 i2 {/i exch def %i=i1,i2 /r*x r*dd18M i get def /g*x g*dd18M i get def /b*x b*dd18M i get def r*x g*x b*x setrgbcolor %default to create data %setrgbcolor calculates data for output in "FF_LM_de_setrgbcolor_F" %colorm=0 calculates: rgb_dyF, rgb*dyF, LAB*dyF, ,cmyk*dyF and more %colorm=1 calculates: rgb_dyF, rgb*dyF, LAB*dyF', rgb'*dyF, cmyk*dyF and more /LAB*LxF LAB*LdyF def /LAB*axF LAB*adyF def /LAB*bxF LAB*bdyF def /A*Ma0 LAB*axF def /B*Ma0 LAB*bxF def r*x g*x b*x setrgbcolor 0 0 moveto A*Ma0 10 mul B*Ma0 10 mul lineto stroke A*Ma0 10 mul B*Ma0 10 mul moveto -100 -100 rlineto 200 200 rlineto stroke A*Ma0 10 mul B*Ma0 10 mul moveto -100 100 rlineto 200 -200 rlineto stroke } for %i=i1,i2 } ifelse %xchart=0,>0 } if %xcharts>=6 -1200 -1300 translate } bind def %END proc_CIELAB_D %************************************************************ /proc_CIELAB_T16 {%BEG proc_CIELAB_T16 /yhoe 6300 def ibild 0 eq {/xmi0 0 def /ymi0 -50 def} {/xmi0 700 def /ymi0 -1400 def} ifelse 15 setlinewidth 1.0 setgray 0 ymi0 moveto 5300 xmi0 add 0 rlineto 0 4800 ymi0 sub rlineto -5300 xmi0 sub 0 rlineto closepath fill 0.0 setgray 0 ymi0 moveto 5300 xmi0 add 0 rlineto 0 4800 ymi0 sub rlineto -5300 xmi0 sub 0 rlineto closepath stroke /nshow {300 /Times-ISOL1 FS show} bind def /kshow {300 /TimesI-ISOL1 FS show} bind def /bshow {300 /TimesB-ISOL1 FS show} bind def /jshow {300 /TimesBI-ISOL1 FS show} bind def /sshow {300 /Symbol FS show} bind def /ishow {220 /Times-ISOL1 FS -00 -50 rmoveto show 00 50 rmoveto} bind def /eshow {220 /Times-ISOL1 FS 0 100 rmoveto show 0 -100 rmoveto} bind def /yd 340 def %y-Zeilenabstand %Spalten /S1 20 def /S2 450 def /S3 1550 def /S4 2650 def /S5 3750 def /S6 4800 def /yu1 4650 def /yu2 3800 def 0 4100 moveto ibild 0 eq {5300}{6000} ifelse 0 rlineto stroke %Titeltext S1t 4550 moveto xchart 0 eq {ibild 1 eq {(ORS20a) bshow}{TSYSIOa bshow} ifelse} {Devicea bshow} ifelse (;) bshow xcharti 12 lt ibild 0 ne or {TBM0 ( adapted (a) CIELAB data) showen ( adaptierte CIELAB\255Daten) showde ( datos adaptados CIELAB (a)) showes ( donn\351es CIELAB (a) adapt\351es) showfr ( dati atti CIELAB (a)) showit ( adapted (a) CIELAB data) showjp } if ibild 0 eq {%BEG ibild=0 S11 4250 moveto TM0 (Name) showde (name) showen (name) showes (nom) showfr (name) showit (name) showjp () kshow S21 200 sub 4250 moveto (L*=L*) kshow xcharti 12 lt ibild 0 ne or {(a) ishow} if S31 4250 moveto (a*) kshow xcharti 12 lt ibild 0 ne or {(a) ishow} if S41 4250 moveto (b*) kshow xcharti 12 lt ibild 0 ne or {(a) ishow} if S51 100 sub 4250 moveto (C*) kshow (ab) ishow xcharti 12 lt ibild 0 ne or {(,a) ishow} if S61 100 sub 4250 moveto (h*) kshow (ab) ishow xcharti 12 lt ibild 0 ne or {(,a) ishow} if 0 1 11 {/i exch def %i=0,11 /ya yu2 yd i mul sub def S11 ya moveto ColNames i get nshow Fxx ishow (,) ishow i 8 ge {(CIE) ishow} {(M) ishow xcharti 12 lt {(a) ishow} if} ifelse ( ) nshow xcharti 12 lt {%xcharti<=12,>12 i 7 le {%i<=7 xchart 0 eq {%xchart=0,1 /L*Fax LAB*a i 3 mul get def /A*Fax LAB*a i 3 mul 1 add get def /B*Fax LAB*a i 3 mul 2 add get def /C*Fax A*Fax dup mul B*Fax dup mul add sqrt def /H*Fax B*Fax A*Fax 0.0001 add atan def }%xchart=0 {%xchart=1 /r*x r*dd08M i get def /g*x g*dd08M i get def /b*x b*dd08M i get def r*x g*x b*x setrgbcolor %default to create data %setrgbcolor calculates data for output in "FF_LM_de_setrgbcolor_F" %colorm=0 calculates: rgb_dyF, rgb*dyF, LAB*dyF, ,cmyk*dyF and more %colorm=1 calculates: rgb_dyF, rgb*dyF, LAB*dyF', rgb'*dyF, cmyk*dyF and more /LAB*LxF LAB*LdyF def /LAB*axF LAB*adyF def /LAB*bxF LAB*bdyF def /L*Fax LAB*LxF def /A*Fax LAB*axF def /B*Fax LAB*bxF def } ifelse %xchart=0,1 } if %i<=7 i 8 ge {%i>=8 TYGB /L*Fax LAB*ee i 8 sub 3 mul get def /A*Fax LAB*ee i 8 sub 3 mul 1 add get def /B*Fax LAB*ee i 8 sub 3 mul 2 add get def } if %i>=8 /C*Fax A*Fax dup mul B*Fax dup mul add sqrt def /H*Fax B*Fax A*Fax 0.0001 add atan def 0 setgray S21 ya moveto L*Fax cvsshow1 S31 ya moveto A*Fax cvsshow1 S41 ya moveto B*Fax cvsshow1 S51 ya moveto C*Fax cvsshow1 S61 ya moveto H*Fax cvishow }%xcharti<=12 {%xcharti>12 xchart 0 eq {%xchart=0,1 /L*Fax LAB*a i 3 mul get def /A*Fax LAB*a i 3 mul 1 add get def /B*Fax LAB*a i 3 mul 2 add get def /C*Fax A*Fax dup mul B*Fax dup mul add sqrt def /H*Fax B*Fax A*Fax 0.0001 add atan def }%xchart=0 {%xchart=1 /L*Fax LAB*Ldd08M i get def /A*Fax LAB*add08M i get def /B*Fax LAB*bdd08M i get def } ifelse %xchart=0,1 /C*Fax A*Fax dup mul B*Fax dup mul add sqrt def /H*Fax B*Fax A*Fax 0.0001 add atan def 0 setgray S21 ya moveto L*Fax cvsshow1 S31 ya moveto A*Fax cvsshow1 S41 ya moveto B*Fax cvsshow1 S51 ya moveto C*Fax cvsshow1 S61 ya moveto H*Fax cvishow /L*Fx LAB* i 3 mul get def /A*Fx LAB* i 3 mul 1 add get def /B*Fx LAB* i 3 mul 2 add get def /C*Fx A*Fx dup mul B*Fx dup mul add sqrt def /H*Fx B*Fx A*Fx 0.0001 add atan def S2 350 add ya moveto L*Fx cvsshow2 S3 100 add ya moveto A*Fx cvsshow2 S4 100 add ya moveto B*Fx cvsshow2 S5 ya moveto C*Fx cvsshow2 S6 ya moveto H*Fx cvishow } ifelse %xcharti=12,#12 } for %i=0,11 }%END ibild=0 {%BEG ibild=1 S1t 4250 moveto (H*) kshow Fxx ishow () nshow S2t 200 sub 4250 moveto (L*=L*) kshow xcharti 12 lt ibild 0 ne or {(a) ishow} if S3t 4250 moveto (a*) kshow xcharti 12 lt ibild 0 ne or {(a) ishow} if S4t 4250 moveto (b*) kshow xcharti 12 lt ibild 0 ne or {(a) ishow} if S5t 150 sub 4250 moveto (C*) kshow (ab) ishow xcharti 12 lt ibild 0 ne or {(,a) ishow} if S6t 150 sub 4250 moveto (h*) kshow (ab) ishow xcharti 12 lt ibild 0 ne or {(,a) ishow} if %16 measured data, see PE54L0NP.pdf, page 11/24 %PE540-72, Page 11/24 HIC*Fd rgb*Fd LabCh*Fd /LAB*a48 432 array def %48x9=432 /LAB*a48 [%HIC rgb LabCh nr (R00Y_100_100d) 1.000 0.000 0.000 48.4 66.1 40.2 77.4 31.3 %00 (R13Y_100_100d) 1.000 0.116 0.000 52.5 57.3 45.5 73.2 38.4 %01 (R25Y_100_100d) 1.000 0.233 0.000 56.8 48.0 50.5 69.8 46.4 %02 (R38Y_100_100d) 1.000 0.366 0.000 62.5 36.5 57.1 67.8 57.3 %03 (R50Y_100_100d) 1.000 0.500 0.000 68.6 25.0 63.9 68.7 68.6 %04 (R63Y_100_100d) 1.000 0.633 0.000 74.9 14.1 71.1 72.5 78.7 %05 (R75Y_100_100d) 1.000 0.766 0.000 80.6 4.8 77.2 77.4 86.4 %06 (R88Y_100_100d) 1.000 0.883 0.000 85.4 -2.5 82.3 82.3 91.7 %07 (Y00G_100_100d) 1.000 1.000 0.000 90.2 -9.6 88.2 88.7 96.2 %08 (Y13G_100_100d) 0.883 1.000 0.000 86.7 -14.2 83.5 84.7 99.6 %09 (Y25G_100_100d) 0.766 1.000 0.000 83.2 -18.4 79.9 82.0 102.9 %10 (Y38G_100_100d) 0.633 1.000 0.000 77.9 -25.1 69.5 74.0 109.8 %11 (Y50G_100_100d) 0.500 1.000 0.000 73.3 -31.7 62.7 70.3 116.8 %12 (Y63G_100_100d) 0.366 1.000 0.000 68.2 -39.5 55.9 68.5 125.2 %13 (Y75G_100_100d) 0.233 1.000 0.000 62.0 -49.7 43.2 65.9 138.9 %14 (Y88G_100_100d) 0.116 1.000 0.000 59.1 -57.1 38.5 68.9 145.9 %15 (G00C_100_100d) 0.000 1.000 0.000 55.8 -65.2 33.8 73.5 152.5 %16 (G13C_100_100d) 0.000 1.000 0.116 56.6 -62.9 24.0 67.3 159.0 %17 (G25C_100_100d) 0.000 1.000 0.233 57.4 -59.7 13.9 61.3 166.8 %18 (G38C_100_100d) 0.000 1.000 0.366 58.5 -54.9 1.5 55.0 178.4 %19 (G50C_100_100d) 0.000 1.000 0.500 59.3 -50.3 -9.0 51.1 190.2 %20 (G63C_100_100d) 0.000 1.000 0.633 60.1 -45.6 -18.7 49.3 202.3 %21 (G75C_100_100d) 0.000 1.000 0.766 61.1 -40.3 -27.8 49.0 214.6 %22 (G88C_100_100d) 0.000 1.000 0.883 62.0 -35.8 -34.7 49.9 224.0 %23 (C00B_100_100d) 0.000 1.000 1.000 63.0 -30.5 -42.0 51.9 234.0 %24 (C13B_100_100d) 0.000 0.883 1.000 59.4 -25.3 -42.7 49.7 239.2 %25 (C25B_100_100d) 0.000 0.766 1.000 55.8 -20.3 -43.2 47.7 244.7 %26 (C38B_100_100d) 0.000 0.633 1.000 50.8 -13.3 -43.9 45.9 253.0 %27 (C50B_100_100d) 0.000 0.500 1.000 45.7 -5.7 -44.6 45.0 262.6 %28 (C63B_100_100d) 0.000 0.366 1.000 40.4 2.6 -45.2 45.2 273.3 %29 (C75B_100_100d) 0.000 0.233 1.000 36.0 10.1 -46.1 47.2 282.3 %30 (C88B_100_100d) 0.000 0.116 1.000 32.1 17.3 -46.7 49.8 290.3 %31 (B00M_100_100d) 0.000 0.000 1.000 27.5 25.9 -47.3 54.0 298.7 %32 (B13M_100_100d) 0.116 0.000 1.000 29.5 33.4 -43.1 54.6 307.7 %33 (B25M_100_100d) 0.233 0.000 1.000 31.0 39.9 -38.5 55.5 315.9 %34 (B38M_100_100d) 0.366 0.000 1.000 35.1 44.5 -34.7 56.5 322.0 %35 (B50M_100_100d) 0.500 0.000 1.000 38.3 52.6 -28.5 59.9 331.5 %36 (B63M_100_100d) 0.633 0.000 1.000 41.2 59.3 -22.0 63.3 339.6 %37 (B75M_100_100d) 0.766 0.000 1.000 45.2 63.8 -18.2 66.4 344.0 %38 (B88M_100_100d) 0.883 0.000 1.000 47.5 68.6 -13.8 69.9 348.5 %39 (M00R_100_100d) 1.000 0.000 1.000 49.5 73.5 -9.0 74.1 352.9 %40 (M13R_100_100d) 1.000 0.000 0.883 49.4 72.4 -4.0 72.5 356.7 %41 (M25R_100_100d) 1.000 0.000 0.766 49.3 71.4 0.4 71.4 0.3 %42 (M38R_100_100d) 1.000 0.000 0.633 49.3 69.8 6.6 70.1 5.4 %43 (M50R_100_100d) 1.000 0.000 0.500 48.9 69.3 12.9 70.5 10.5 %44 (M63R_100_100d) 1.000 0.000 0.366 48.9 68.1 19.6 70.9 16.1 %45 (M75R_100_100d) 1.000 0.000 0.233 48.8 67.1 27.9 72.7 22.6 %46 (M88R_100_100d) 1.000 0.000 0.116 48.6 66.5 34.1 74.8 27.1 %47 ] def /indFa16 16 array def /indFa16 [00 02 04 06 08 10 12 14 16 20 24 28 32 36 40 44] def 0 1 15 {/i exch def %i=0,15 /ya yu2 yd i mul sub def xchart 0 eq {%xchart=0,>0 /indx indFa16 i get def /i90 indx 9 mul 4 add def /i91 i90 1 add def /i92 i90 2 add def /L*Ma LAB*a48 i90 get def /A*Ma LAB*a48 i91 get def /B*Ma LAB*a48 i92 get def /C*Ma A*Ma dup mul B*Ma dup mul add 0.0001 add sqrt def /H*Ma B*Ma A*Ma 0.0001 add atan def }%xchart=0 {%xchart>0 /r*x r*dd18M i get def /g*x g*dd18M i get def /b*x b*dd18M i get def r*x g*x b*x setrgbcolor %default to create data %setrgbcolor calculates data for output in "FF_LM_de_setrgbcolor_F" %colorm=0 calculates: rgb_dyF, rgb*dyF, LAB*dyF, ,cmyk*dyF and more %colorm=1 calculates: rgb_dyF, rgb*dyF, LAB*dyF', rgb'*dyF, cmyk*dyF and more /r*xF r*dyF def /g*xF g*dyF def /b*xF b*dyF def /LAB*LxF LAB*LdyF def /LAB*axF LAB*adyF def /LAB*bxF LAB*bdyF def /LAB*CxF LAB*adyF dup mul LAB*bdyF dup mul add 0.0001 add sqrt def /LAB*hxF LAB*bdyF LAB*adyF 0.0001 add atan def /L*Ma LAB*LxF def /A*Ma LAB*axF def /B*Ma LAB*bxF def /C*Ma LAB*CxF def /H*Ma LAB*hxF def } ifelse %xchart=0,>0 0 setgray S1t ya moveto () nshow S1t ya moveto RGB54CC17_L i 4 mul get show Fxx ishow () nshow S2t 60 add ya moveto L*Ma cvsshow1 S3t ya moveto A*Ma cvsshow1 S4t ya moveto B*Ma cvsshow1 S5t ya moveto C*Ma cvsshow1 S6t ya moveto H*Ma cvishow } for %i=0,15 } ifelse %END ibild=1 } bind def %END proc_CIELAB_T16 %****************************************************************** /proc_CIELAB_G {%BEG CIELAB_G /u* 0 def /H*MGam 6 array def /C*MGam 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*MGama A*Ma dup mul B*Ma dup mul add sqrt def H*MGam i B*Ma A*Ma 0.0001 add atan put C*MGam i C*MGama put /u* u* C*MGama 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 1 1 1 setrgbcolor /xmtext 2200 def /xms 0 def xmtext xms sub 11500 moveto TBG0 (%Gamut) showen (%Umfang) showde (%Gama) showes (%Gamme) showfr (%Gamma) showit (%Gamut) showjp xmtext xms sub 11100 moveto TBG0 (u*) show TBM0 -20 -50 rmoveto (rel) show 0 50 rmoveto TBG0 ( = ) show u*r cvishow 0 1 4 {/i exch def %i=0,4 /H*dif H*MGam i 1 add get H*MGam i get sub def i 0 eq {/H*MGamin H*dif def /H*MGamax H*dif def} if H*dif H*MGamin lt {/H*MGamin H*dif def} if H*dif H*MGamax gt {/H*MGamax H*dif def} if } for %i=0,4 /g*Hr H*MGamin H*MGamax div 100 mul def xmtext xms sub 10700 moveto TBG0 (%Regularity) showen (%Regularit\344t) showde (%Regularidad) showes (%R\351gularit\351) showfr (%Regularit\340) showit (%Regularity) showjp xmtext 10300 moveto TBG0 (g*) show TBM0 -20 -50 rmoveto (H,rel) show 0 50 rmoveto TBG0 ( = ) show g*Hr cvishow 0 1 4 {/i exch def %i=0,4 /C*akt C*MGam i get def i 0 eq {/C*MGamin C*akt def /C*MGamax C*akt def} if C*akt C*MGamin lt {/C*MGamin C*akt def} if C*akt C*MGamax gt {/C*MGamax C*akt def} if } for %i=0,4 /g*Cr C*MGamin C*MGamax div 100 mul def xmtext 09900 moveto TBG0 (g*) show TBM0 -20 -50 rmoveto (C,rel) show 0 50 rmoveto TBG0 ( = ) show g*Cr cvishow } bind def %CIELAB_G %****************************************************************** /ilf 8 array def /ilf [0.00 0.25 0.50 1.00 2.00 4.00 8.00 16.00] def /Lrefl 11 array def /Lrefl [(0%) (0%) (0%) (0%) (0,6%) (1,2%) (2,5%) (5%) (10%) (20%) (40%)] def /cvishowb {cvi 6 string cvs show ( ) show} def /cvsshow1b {10 mul cvi 0.1 mul 7 string cvs show ( ) show} def /cvsshow2b {100 mul cvi 0.01 mul 7 string cvs show ( ) show} def /cvsshow3b {1000 mul cvi 0.001 mul 7 string cvs show ( ) show} def /cvsshow1r {0.05 add 10 mul cvi 0.1 mul 7 string cvs show} def /cvsshow2r {0.005 add 100 mul cvi 0.01 mul 7 string cvs show} def /cvsshow3r {0.0005 add 1000 mul cvi 0.001 mul 7 string cvs show} def /cvsshow1br {0.05 add 10 mul cvi 0.1 mul 7 string cvs show ( ) show} def /cvsshow2br {0.005 add 100 mul cvi 0.01 mul 7 string cvs show ( ) show} def /cvsshow3br {0.0005 add 1000 mul cvi 0.001 mul 7 string cvs show ( ) show} def /cvi100 {100 mul cvi /xi exch def xi 0 lt {/vorz -1 def} {/vorz 1 def} ifelse /xia xi abs def vorz -1 eq {(\255) show} {(0) show} ifelse xia 0 ge xia 9 le {(0000) show} if xia 10 ge xia 99 le and {(000) show} if xia 100 ge xia 999 le and {(00) show} if xia 1000 ge xia 9999 le and {(0) show} if xia cvishow } bind def %************************************************ %******BEG RGB_48_16_6.PS default rgb data for 48/16/6 steps for device colours /r*dd64M 64 array def /r*dd64M [1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %R 1.000 0.875 0.750 0.625 0.500 0.375 0.250 0.125 %J 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %G 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %C 0.000 0.125 0.250 0.375 0.500 0.625 0.750 0.875 %B 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %M 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %R 1.000 0.875 0.750 0.625 0.500 0.375 0.250 0.125 %J ] def /g*dd64M 64 array def /g*dd64M [0.000 0.125 0.250 0.375 0.500 0.625 0.750 0.875 %R 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %J 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %G 1.000 0.875 0.750 0.625 0.500 0.375 0.250 0.125 %C 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %B 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %M 0.000 0.125 0.250 0.375 0.500 0.625 0.750 0.875 %R 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %J ] def /b*dd64M 64 array def /b*dd64M [0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %R 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %J 0.000 0.125 0.250 0.375 0.500 0.625 0.750 0.875 %G 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %C 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 %B 1.000 0.875 0.750 0.625 0.500 0.375 0.250 0.125 %M 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %R 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 %J ] def %calculate all data of 16+1=17 step elementary colour circle /ind64M 17 array def /ind64M %R00Y R25Y R50Y R75Y Y00G Y25G Y50G Y75G [0 2 4 6 8 10 12 14 %G00B G25B G50B G75G B00R B25R B50R B75R R00Y 16 20 24 28 32 36 40 44 0 ] def %actual 16 step device circle + N + W /r*dd18M 18 array def /g*dd18M 18 array def /b*dd18M 18 array def 0 1 15 {/i exch def %i=0,15 /indi ind64M i get def r*dd18M i r*dd64M indi get put %16 device colours g*dd18M i g*dd64M indi get put b*dd18M i b*dd64M indi get put } for %i=0,15 r*dd18M 16 0 put %N g*dd18M 16 0 put b*dd18M 16 0 put r*dd18M 17 1 put %W g*dd18M 17 1 put b*dd18M 17 1 put %actual 6 step device circle + N + W /r*dd08M 08 array def /g*dd08M 08 array def /b*dd08M 08 array def 0 1 5 {/i exch def %i=0,5 r*dd08M i r*dd64M i 8 mul get put %6 device colours g*dd08M i g*dd64M i 8 mul get put b*dd08M i b*dd64M i 8 mul get put } for %i=0,5 r*dd08M 6 0 put %N g*dd08M 6 0 put b*dd08M 6 0 put r*dd08M 7 1 put %W g*dd08M 7 1 put b*dd08M 7 1 put %******END RGB_48_16_6.PS default rgb data for 48/16/6 steps for device colours /lanind1 3 def /lanind2 3 def /lanindd 01 def /colorm1 00 def /colorm2 00 def /colormd 01 def /deintp1 00 def /deintp2 00 def /deintpd 01 def /xcolor1 00 def /xcolor2 00 def /xcolord 01 def /xchart1 00 def /xchart2 00 def /xchartd 01 def /pchart1 00 def /pchart2 00 def /pchartd 01 def /colsep1 00 def /colsep2 00 def /colsepd 01 def /pmetam1 00 def /pmetam2 00 def /pmetamd 01 def /lanindg where {pop /lanind1 lanindg def /lanind2 lanindg def /lanindd laninddg def} if /colormg where {pop /colorm1 colormg def /colorm2 colormg def /colormd colormdg def} if /deintpg where {pop /deintp1 deintpg def /deintp2 deintpg def /deintpd deintpdg def} if /xcolorg where {pop /xcolor1 xcolorg def /xcolor2 xcolorg def /xcolord xcolordg def} if /xchartg where {pop /xchart1 xchartg def /xchart2 xchartg def /xchartd xchartdg def} if /pchartg where {pop /pchart1 pchartg def /pchart2 pchartg def /pchartd pchartdg def} if /colsepg where {pop /colsep1 colsepg def /colsep2 colsepg def /colsepd colsepdg def} if /pmetamg where {pop /pmetam1 pmetamg def /pmetam2 pmetamg def /pmetamd pmetamdg def} if /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} if /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} if /deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def /deintpd deintpdf def} if /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} if /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 0 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 9 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} if /colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def /colsepd colsepdf def} if /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} if %only for editorial change of the following loops %/lanind lanind1 def % %/colorm colorm1 def % %/deintp deintp1 def % %/xcolor xcolor1 def % %/xchart xchart1 def % %/pchart pchart1 def % %/colsep colsep1 def % %/pmetam pmetam1 def % /lanind lanind1 def %lanind1 lanindd lanind2 {/lanind exch def %output showpage /colorm colorm1 def %colorm1 colormd colorm2 {/colorm exch def %output showpage /deintp deintp1 def %deintp1 deintpd deintp2 {/deintp exch def %output showpage /xcolor xcolor1 def %xcolor1 xcolord xcolor2 {/xcolor exch def %output showpage /xchart xchart1 def %xchart1 xchartd xchart2 {/xchart exch def %output showpage /pchart pchart1 def %pchart1 pchartd pchart2 {/pchart exch def %output showpage /colsep colsep1 def %colsep1 colsepd colsep2 {/colsep exch def %output showpage /pmetam pmetam1 def %pmetam1 pmetamd pmetam2 {/pmetam exch def %output showpage %pmetam 0 eq {/colsep 0 def} %cmyn5* % {/colsep 1 def} ifelse %cmy0* XYZ*system54 /Devicea (TLS00a) def xchart 0 eq {/ISRL*ioL 0 def /ISIO*ioL 0 def} if %Offset ORS18 xchart 1 ge {/ISRL*ioL 0 def /ISIO*ioL 1 def} if %Television TLS00 ISRL*ioL 0 eq {%ISRL*ioL=0 ISIO*ioL 0 eq {/TSYSIOa (ORS18a) def /TSYSIO (ORS18) def /TSYSIOen (Offset Reflective System ) def /TSYSIOde (Offset\255Reflektiv\255System ) def /TSYSIOes (Offset Reflective System ) def /TSYSIOfr (Syst\350me Offset Reflective ) def /TSYSIOit (Offset Reflective System ) def /TSYSIOjp (Offset Reflective System ) def } if ISIO*ioL 1 eq {/TSYSIOa (TLS00a) def /TSYSIOen (Television Luminous System ) def /TSYSIOde (Fernseh\255Lichtfarben\255System ) def /TSYSIOes (Television Luminous System ) def /TSYSIOfr (Syst\350me T\351l\351vision Lumicie ) def /TSYSIOit (Television Luminous System ) def /TSYSIOjp (Television Luminous System ) def } if ISIO*ioL 2 eq {/TSYSIOa (FRS06a) def /TSYSIOen (Printer Reflective System ) def /TSYSIOde (Drucker\255Reflektiv\255System ) def /TSYSIOes (Printer Reflective System ) def /TSYSIOfr (Syst\350me Printer Reflective ) def /TSYSIOit (Printer Reflective System ) def /TSYSIOjp (Printer Reflective System ) def } if ISIO*ioL 3 eq {/TSYSIOa (TLS18a) def /TSYSIOen (Television Luminous System ) def /TSYSIOde (Fernseh\255Lichtfarben\255System ) def /TSYSIOes (Television Luminous System ) def /TSYSIOfr (Syst\350me T\351l\351vision Lumicie ) def /TSYSIOit (Television Luminous System ) def /TSYSIOjp (Television Luminous System ) def } if ISIO*ioL 4 eq {/TSYSIOa (NLS00a) def /TSYSIOen (Natural Luminous System ) def /TSYSIOde (Nat\374rliches\255Lichtfarben\255System ) def /TSYSIOes (Natural Luminous System ) def /TSYSIOfr (Syst\350me Natural Lumicie ) def /TSYSIOit (Natural Luminous System ) def /TSYSIOjp (Natural Luminous System ) def } if ISIO*ioL 5 eq {/TSYSIOa (NRS18a) def /TSYSIOen (Natural Reflective System ) def /TSYSIOde (Nat\374rliches\255Reflektiv\255System ) def /TSYSIOes (Natural Reflective System ) def /TSYSIOfr (Syst\350me Natural Reflective ) def /TSYSIOit (Natural Reflective System ) def /TSYSIOjp (Natural Reflective System ) def } if ISIO*ioL 6 eq {/TSYSIOa (SRS18a) def /TSYSIOen (Standard Reflective System ) def /TSYSIOde (Standard\255Reflektiv\255System ) def /TSYSIOes (Standard Reflective System ) def /TSYSIOfr (Syst\350me Standard Reflective) def /TSYSIOit (Standard Reflective System ) def /TSYSIOjp (Standard Reflective System ) def } if ISIO*ioL 7 eq {/TSYSIOa (TLS70a) def /TSYSIOen (Television Luminous System ) def /TSYSIOde (Fernseh\255Lichtfarben\255System ) def /TSYSIOes (Television Luminous System ) def /TSYSIOfr (Syst\350me T\351l\351vision Lumicie ) def /TSYSIOit (Television Luminous System ) def /TSYSIOjp (Television Luminous System ) def } if } if %ISRL*ioL=0 ISRL*ioL 1 eq {%ISRL*ioL=1 ISIO*ioL 0 eq {/TSYSIOa (TLS00a) def} if ISIO*ioL 1 eq {/TSYSIOa (TLS06a) def} if ISIO*ioL 2 eq {/TSYSIOa (TLS11a) def} if ISIO*ioL 3 eq {/TSYSIOa (TLS18a) def} if ISIO*ioL 4 eq {/TSYSIOa (TLS27a) def} if ISIO*ioL 5 eq {/TSYSIOa (TLS38a) def} if ISIO*ioL 6 eq {/TSYSIOa (TLS52a) def} if ISIO*ioL 7 eq {/TSYSIOa (TLS70a) def} if /TSYSIOen (Television Luminous System ) def /TSYSIOde (Fernseh\255Lichtfarben\255System ) def /TSYSIOes (Television Luminous System ) def /TSYSIOfr (Syst\350me T\351l\351vision Lumicie ) def /TSYSIOit (Television Luminous System ) def /TSYSIOjp (Television Luminous System ) def } if %ISRL*ioL=1 ISRL*ioL 2 eq {%ISRL*ioL=2 ISIO*ioL 0 eq {/TSYSIOa (OLS00a) def} if ISIO*ioL 1 eq {/TSYSIOa (OLS06a) def} if ISIO*ioL 2 eq {/TSYSIOa (OLS11a) def} if ISIO*ioL 3 eq {/TSYSIOa (OLS18a) def} if ISIO*ioL 4 eq {/TSYSIOa (OLS27a) def} if ISIO*ioL 5 eq {/TSYSIOa (OLS38a) def} if ISIO*ioL 6 eq {/TSYSIOa (OLS52a) def} if ISIO*ioL 7 eq {/TSYSIOa (OLS70a) def} if /TSYSIOen (Offset Reflective System ) def /TSYSIOde (Offset\255Reflektiv\255System ) def /TSYSIOes (Offset Reflective System ) def /TSYSIOfr (Syst\350me Offset Reflective ) def /TSYSIOit (Offset Reflective System ) def /TSYSIOjp (Offset Reflective System ) def } if %ISRL*ioL=2 proc_LAB*ioL 7 /Times-ISOL1 FS 130 83 moveto lanind cvishow (-) show colorm cvishow deintp cvishow xcolor cvishow xchart cvishow pchart cvishow colsep cvishow (-L) show pmetam cvishow 180 83 moveto (QF720-7) show xchart 0 eq {(N) show} {deintp colorm 2 mul add cvishow} ifelse 72 90 translate /xt 1 def xchart 1 eq {/xt 1 def} if xt 0 eq {0.010 MM} {0.010 MM} ifelse dup scale /xchart3P0 xchart3 0 add def /xchart3P11 xchart3 11 add def pmetam 0 eq {%pmetam=0 40 setlinewidth xchart xchart3P0 le {0.5 setgray} {1 setgray} ifelse 0 0 moveto 25000 0 rlineto 0 17220 rlineto -25000 0 rlineto closepath fill 0 setgray 0 0 moveto 25000 0 rlineto 0 17220 rlineto -25000 0 rlineto closepath stroke } if %pmetam=0 colorm 0 eq deintp 0 eq and {/Txx (d) def /Fxx (d) def} if %colorm=0, deintp=0 colorm 0 eq deintp 1 eq and {/Txx (e) def /Fxx (e) def} if %colorm=0, deintp=1 colorm 1 eq deintp 0 eq and {/Txx (dd) def /Fxx (d) def} if %colorm=1, deintp=0 colorm 1 eq deintp 1 eq and {/Txx (de) def /Fxx (e) def} if %colorm=1, deintp=1 xchart 0 eq {/Txx (-) def /Fxx (-) def} if /xcharts 9 xchart4 add def %************************************************************** xchart xchart3P0 le {%BEG LOOP0: xchart<=xchart3P0 %two pages for xchart=0,1 /ColNames 17 array def /ColNames [(R) (Y) (G) (C) (B) (M) (N) (W) (R) (Y) (G) (B) ] def /AngsTabt 68 array def /AngsTabt [%31 angles = 360/22,5 + 1 = 16 + 1 000.0 1.00 0.00 0.00 %r00j 022.5 1.00 0.25 0.00 045.0 1.00 0.50 0.00 %r50j 067.5 1.00 0.75 0.00 090.0 1.00 1.00 0.00 %j00g 112.5 0.75 1.00 0.00 135.0 0.50 1.00 0.00 %j50g 157.5 0.25 1.00 0.00 180.0 0.00 1.00 0.00 %g00b 202.5 0.00 1.00 0.50 225.0 0.00 1.00 1.00 %g50b 247.5 0.00 0.50 1.00 270.0 0.00 0.00 1.00 %b00r 292.5 0.50 0.00 1.00 315.0 1.00 0.00 1.00 %b50r 337.5 1.00 0.00 0.50 360.0 1.00 0.00 0.00 %r00j ] 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.15 mul def /y ys 12.0 mul def /xd 800 def /yd 800 def /xd5x xs5x 200 sub def /yd5x ys5x 200 sub def /j 0 def /i 0 def /xds 600 def /xmin 0000 def /xmax 10000 def /ymin 0000 def /ymax 10000 def %Spalten /S11 0020 def %code /S21 1300 def %L* /S31 2100 def %a* /S41 2900 def %b* /S51 3800 def %C* /S61 4650 def %h* /S1t 0020 def %code /S2t 2200 def %L* /S3t 3000 def %a* /S4t 3800 def %b* /S5t 4650 def %C* /S6t 5450 def %h* /xcharti pchart def %************************************************************************** 0 1 1 {/ibild exch def %ibild=0,1 xcharts 9 eq {%xcharts=9 %BEG CIELAB_09 xchart=09 ibild 0 eq { 1900 1700 translate} if ibild 1 eq {13800 1700 translate} if %BEG CIELAB_09 Top Text Hue Circles ibild 0 eq {%ibild=0 1 setgray TBG0 /xtext0 -1700 def /xtext1 -1200 def /cfakt 1.0 def xtext0 15000 moveto (Input and Output: ) showen (Ein\255 und Ausgabe: ) showde (Entrada i salida: ) showes (Entr\351e et sortie: ) showfr (Immetere y uscita: ) showit (Input and Output: ) showjp TSYSIOen showen TSYSIOde showde TSYSIOes showes TSYSIOfr showfr TSYSIOit showit TSYSIOjp showjp TSYSIOa show TBG0 xtext0 14500 moveto (Data for any device (d) or) showen (Daten f\374r jede Ger\344te\255 (d) oder) showde (Datos del dispositivo (d) o) showes (Donn\351es de couleurs p\351riph\351riques (d)) showfr (Dati del dispositivo (d) o) showit (Data for any device (d) or) showjp xtext0 14100 moveto (elementary (e) colour:) showen (Elementarfarbe (e):) showde (elemental (e) color:) showes (ou \351l\351mentaires (e):) showfr (colori elementari (e):) showit (elementary (e) colour:) showjp xtext1 13700 moveto TBIG0 (HIC*) show TBM0 -20 -50 rmoveto Fxx show 0 50 rmoveto TBG0 xtext0 13300 moveto TBG0 (hue code for the colours) showen (Bunttoncode f\374r die Farben) showde (c\363digo de tono para les colores) showes (code de teinte pour les cou\255) showfr (codice di tonalit\340 per i colori) showit (hue text for the colours) showjp xtext0 12900 moveto (of this page: ) showen (dieser Seite: ) showde (esta p\341gina: ) showes (leurs de cette p\341ge: ) showfr (questa pagina: ) showit (of this page: ) showjp xtext1 12500 moveto TBIG0 (H*) show -20 -50 rmoveto TBM0 Fxx show 0 50 rmoveto TBG0 ( = ) show TBG0 COLhNam16 00 get show 0 -50 rmoveto TBM0 Fxx show 0 50 rmoveto(, ) show TBG0 COLhNam16 01 get show 0 -50 rmoveto TBM0 Fxx show 0 50 rmoveto(, ..., ) show TBG0 COLhNam16 15 get show 0 -50 rmoveto TBM0 Fxx show 0 50 rmoveto TBG0 %cfakt 1 ne {%cfakt#1 %xtext0 12100 moveto TBG0 %(contrast reduction factor: ) showen (Kontrastreduzierungsfaktor: ) showde %xtext1 11600 moveto %TBIG0 (c) show TBM0 0 -130 rmoveto (R) show 0 130 rmoveto %TBG0 ( = ) show %cfakt cvsshow2 %} if %cfakt#1 } if %ibild=0 %END CIELAB_09 Top Text Hue Circle %*********************************************************** %BEG CIELAB_09 Hue Circle -1200 -1500 translate %transfer for colour circle /xym 4 def 25 setlinewidth /xd2 xd 0.8 mul def ibild 0 eq {0.5 0.5 0.5 setrgbcolor} {1.0 1.0 1.0 setrgbcolor} ifelse 0 0 moveto 2800 xym mul 0 rlineto 0 2800 xym mul rlineto -2800 xym mul 0 rlineto closepath fill 0.0 setgray 0 0 moveto 2800 xym mul 0 rlineto 0 2800 xym mul rlineto -2800 xym mul 0 rlineto closepath stroke 1400 xym mul 1400 xym mul translate %cero at center -600 xym mul 0 moveto 600 xym mul 0 lineto stroke 0 -750 xym mul moveto 0 750 xym mul lineto stroke /rx 774 xym mul 1.56 mul def %standard hexagon gamut 0 0 0 setrgbcolor 0 0 rx 0 360 arc stroke /xs3 1400 def /xd3 xs3 2 div def CBKK 0 1 15 {/j exch def %j=0,15 /xpos rx AngsTabt j 4 mul get cos mul def /ypos rx AngsTabt j 4 mul get sin mul def /xa xpos xd3 sub def /ya ypos xd3 sub def /r_x AngsTabt j 4 mul 1 add get def /g_x AngsTabt j 4 mul 2 add get def /b_x AngsTabt j 4 mul 3 add get def /tLAB 1 def r_x g_x b_x setrgbcolor xa ya xs3 xs3 rec fill 1 r_x sub 1 g_x sub 1 b_x sub 0 setcmykcolor xa ya xs3 0.5 mul dup rem fill } for %j=0,15 TBG0 0 0 0 setrgbcolor 2100 1300 moveto (yellowish) showen (gelblich) showde (amarillento) showes (jaun\342tre) showfr (giallastro) showit (yellowish) showjp -3600 1300 moveto (yellowish) showen (gelblich) showde (amarillento) showes (jaun\342tre) showfr (giallastro) showit (yellowish) showjp 2300 -1450 moveto ( bluish) showen (bl\344ulich) showde (azulado) showes (blue\342tre) showfr (bluastro) showit ( bluish) showjp -3600 -1450 moveto ( bluish) showen (bl\344ulich) showde (azulado) showes (blue\342tre) showfr (bluastro) showit ( bluish) showjp -2000 3300 moveto (greenish) showen (gr\374nlich) showde ( verdoso) showes (verd\342tre) showfr (verdastro) showit (greenish) showjp -2000 -3500 moveto (greenish) showen (gr\374nlich) showde ( verdoso) showes (verd\342tre) showfr (verdastro) showit (greenish) showjp 900 3300 moveto ( redish) showen (r\366tlich) showde ( rojizo) showes (rouge\342tre) showfr (rossastro) showit ( redish) showjp 900 -3500 moveto ( redish) showen (r\366tlich) showde ( rojizo) showes (rouge\342tre) showfr (rossastro) showit ( redish) showjp -4000 -100 moveto (Green) showen (Gr\374n) showde (Green) showes (Vert) showfr (Verde) showit (Green) showjp TBIG0 ( G) show TBM0 0 -30 rmoveto Fxx show 0 30 rmoveto TBG0 2600 -100 moveto (Red) showen (Rot) showde (Rojo) showes (Rouge) showfr (Rosso) showit (Red) showjp TBIG0 ( R) show TBM0 0 -30 rmoveto Fxx show 0 30 rmoveto TBG0 -500 3700 moveto (Yellow) showen (Gelb) showde (Amarillo) showes (Jaune) showfr (Giallo) showit (Yellow) showjp TBIG0 ( Y) show TBM0 0 -30 rmoveto Fxx show 0 30 rmoveto TBG0 -400 -3900 moveto (Blue) showen (Blau) showde (Azul) showes (Bleu) showfr (Blu) showit (Blue) showjp TBIG0 ( B) show TBM0 0 -30 rmoveto Fxx show 0 30 rmoveto TBG0 -1400 xym mul -1400 xym mul translate 1200 1500 translate %END CIELAB_09 Hue Circle %**************************************************************************** %CIELAB_09-T16 /xdev 11000 def /xele -09250 def /xtop 600 def ibild 0 eq {5600 xdev add }{4700 xele add} ifelse 9600 xtop add translate proc_CIELAB_T16 ibild 0 eq {-5600 xdev sub}{-4700 xele sub} ifelse -9600 xtop sub translate %END CIELAB_09 Table %**************************************************************************** %BEG CIELAB_09 Diagram ibild 0 eq { %ibild=0 2600 xdev add 11600 xtop add translate proc_CIELAB_D -2600 xdev sub -11600 xtop sub translate } if %ibild=0 %END CIELAB_09 Diagram %**************************************************************************** %BEG CIELAB_09 Gamut ibild 1 eq { %ibild=1 proc_CIELAB_G } if %ibild=1 %END CIELAB_09 Diagram ibild 0 eq { 1900 neg 1700 neg translate} if ibild 1 eq {13800 neg 1700 neg translate} if } if %xcharts=9 %END CIELAB_09 xchart=09 %***************************************************************************** xcharts 10 ge xcharts 25 le and {%xcharts=10,25 %BEG CIELAB_10,25 xcharts=10,25 %BEG CIELAB_10 Top Text Hue Triangles ibild 0 eq { 1900 1700 translate} if ibild 1 eq {13800 1700 translate} if 1.0 setgray 25 setlinewidth -200 000 moveto 10500 0 rlineto stroke 000 -200 moveto 0 11800 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 09700 -450 sub 000 150 add moveto 450 -150 rlineto -450 -150 rlineto closepath fill 000 150 sub 11000 -450 sub moveto 150 450 rlineto 150 -450 rlineto closepath fill TM0 %C*, C* ibild 0 eq { %ibild=0,1 /iy0 -600 def 0 200 sub iy0 moveto (000) show 2500 200 sub iy0 moveto (025) show 5000 200 sub iy0 moveto (050) show 7500 200 sub iy0 moveto (075) show 10000 200 sub iy0 moveto (100) show } { /iy0 -600 def 0 200 sub iy0 moveto (000) show 2000 200 sub iy0 moveto (020) show 4000 200 sub iy0 moveto (040) show 6000 200 sub iy0 moveto (060) show 8000 200 sub iy0 moveto (080) show 10000 200 sub iy0 moveto (100) show } ifelse %ibild=0,1 TM0 %T*, L* ibild 0 eq { %ibild=0,1 /ix0 -1750 def /iy0 200 def ix0 0 iy0 sub moveto (000) show ix0 2500 iy0 sub moveto (025) show ix0 5000 iy0 sub moveto (050) show ix0 7500 iy0 sub moveto (075) show ix0 10000 iy0 sub moveto (100) show } { /ix0 -0900 def /iy0 200 def ix0 0 iy0 sub moveto (000) show ix0 2500 iy0 sub moveto (025) show % ix0 5000 iy0 sub moveto (050) show ix0 7500 iy0 sub moveto (075) show ix0 10000 iy0 sub moveto (100) show } ifelse %ibild=0,1 TM0 i%* ibild 0 eq {%ibild=0,1 /iy0 1550 def 10000 400 sub 5000 iy0 sub moveto TIM0 (I*) show TM0 ( = 100) show 7500 400 sub 3750 iy0 sub moveto TIM0 (I*) show TM0 ( = 075) show 5000 400 sub 2500 iy0 sub moveto TIM0 (I*) show TM0 ( = 050) show 2500 400 sub 1250 iy0 sub moveto TIM0 (I*) show TM0 ( = 025) show 000 400 sub 00 iy0 sub moveto TIM0 (I*) show TM0 ( = 000) show }%ibild=0 {%ibild=1 /iy0 700 def 10000 500 sub 4700 iy0 sub moveto TIM0 (I*) show TM0 (=100) show 8000 200 sub 4000 iy0 sub moveto TIM0 (I*) show TM0 (=080) show 6000 200 sub 3000 iy0 sub moveto TIM0 (I*) show TM0 (=060) show 4000 200 sub 2000 iy0 sub moveto TIM0 (I*) show TM0 (=040) show 2000 200 sub 1000 iy0 sub moveto TIM0 (I*) show TM0 (=020) show 000 200 sub -300 iy0 sub moveto TIM0 (I*) show TM0 (=000) show } ifelse %ibild=0,1 ibild 0 eq {/iy0 2400 def} {/iy0 1400 def} ifelse 09000 0500 sub 4300 iy0 sub moveto 1000 500 rlineto stroke 10000 0500 sub 4800 iy0 sub moveto -450 -50 rlineto 150 -300 rlineto closepath fill 10000 2600 sub 3800 iy0 sub moveto TBG0 (brilliance) showen (Brillantheit) showde (brillo) showes (brillance) showfr (brillantezza) showit (brilliance) showjp TBIG0 ( I*) show 7200 -1100 moveto TBG0 (chroma) showen (Buntheit) showde (chroma) showes (chroma) showfr (croma) showit (chroma) showjp TBIG0 ( C*) show TBG0 /xtext0 -1700 def /xtext1 -1200 def ibild 0 eq { %ibild=0 TBG0 xtext0 14500 moveto (Data for any device (d) or) showen (Daten f\374r jede Ger\344te\255 (d) oder) showde (Datos del dispositivo (d) o) showes (Donn\351es de couleurs p\351riph\351riques (d)) showfr (Dati del dispositivo (d) o) showit (Data for any device (d) or) showjp xtext0 14100 moveto (elementary (e) colour:) showen (Elementarfarbe (e):) showde (elemental (e) color:) showes (ou \351l\351mentaires (e):) showfr (colori elementari (e):) showit (elementary (e) colour:) showjp xtext1 13700 moveto TBIG0 (HIC*) show TBM0 -20 -50 rmoveto Fxx show 0 50 rmoveto TBG0 xtext0 13300 moveto TBG0 (hue text for the colours) showen (Bunttontext f\374r die Farben) showde (c\363digo de tono para les colores) showes (code de teinte pour les cou\255) showfr (codice di tonalit\340 per i colori) showit (hue text for the colours) showjp xtext0 12900 moveto (of this page: ) showen (dieser Seite: ) showde (esta p\341gina: ) showes (leurs de cette p\341ge: ) showfr (questa pagina: ) showit (of this page: ) showjp xtext1 12500 moveto TBIG0 (H*) show -20 -50 rmoveto TBM0 Fxx show 0 50 rmoveto TBG0 ( = ) show TBG0 COLhNam16 xchart4 1 sub get show 0 -50 rmoveto TBM0 Fxx show 0 50 rmoveto %Equal data text for top right page in black 0 setgray 20000 14900 moveto TBIG0 (H*) show TBM0 -20 -50 rmoveto Fxx show 0 50 rmoveto TBG0 ( = ) show TBG0 COLhNam16 xchart4 1 sub get show 0 -50 rmoveto TBM0 Fxx show 0 50 rmoveto 1 setgray cfakt 1 ne {%cfakt#1 xtext0 12900 moveto TBG0 (factor of contrast reduction: ) showen (Faktor der Kontrast\255Reduzierung: ) showde (factor de reducci\363n del contraste: ) showes (facteur de contraste r\351duction: ) showfr (fattore di riduzione di contrasto: ) showit (factor of contrast reduction: ) showjp xtext1 12500 moveto TBIG0 (c) show TBM0 0 -130 rmoveto (R) show 0 130 rmoveto TBG0 ( = ) show cfakt cvsshow2 } if %cfakt#1 xtext1 12000 moveto TBG0 (triangle lightness) showen (Dreiecks\255Helligkeit) showde (tri\340ngulo claridad) showes (triangle de luminosit\351) showfr (triangulo chiarezza) showit (triangle lightness) showjp TBIG0 ( T*) show /ixt 12500 def /iyt 000 def TBG0 -1200 ixt add 12000 iyt add moveto TBG0 (triangle lightness) showen (Dreiecks\255Helligkeit) showde (tri\340ngulo claridad) showes (triangle de luminosit\351) showfr (triangulo chiarezza) showit (triangle lightness) showjp TBIG0 ( T*) show TBG0 -1200 ixt add 14500 iyt add moveto (Data for maximum colour (Ma): ) showen (Daten f\374r Maximalfarbe (Ma): ) showde (Los datos de color m\341ximo (Ma): ) showes (Les donn\351es de couleur maximale (Ma): ) showfr (Il dati per il massimo colore (Ma): ) showit (Data for maximum colour (Ma): ) showjp TBIG0 -1200 ixt add 14000 iyt add moveto (LabCh*) show TBM0 -20 -50 rmoveto Fxx show (,Ma) show 0 50 rmoveto TBG0 (: ) show /i xcharts 10 sub def i 8 le {/i1 i def}{/i1 i 1 add def} ifelse %dup at no. 10 /i30 i1 3 mul def /i31 i30 1 add def /i32 i30 2 add def xchart 0 eq {%xchart=0,>0 %16 measured data, see PE54L0NP.pdf, page 11/24 %PE540-72, Page 11/24 HIC*Fd rgb*Fd LabCh*Fd /LAB*a48 432 array def %48x9=432 /LAB*a48 [%HIC rgb LabCh nr (R00Y_100_100d) 1.000 0.000 0.000 48.4 66.1 40.2 77.4 31.3 %00 (R13Y_100_100d) 1.000 0.116 0.000 52.5 57.3 45.5 73.2 38.4 %01 (R25Y_100_100d) 1.000 0.233 0.000 56.8 48.0 50.5 69.8 46.4 %02 (R38Y_100_100d) 1.000 0.366 0.000 62.5 36.5 57.1 67.8 57.3 %03 (R50Y_100_100d) 1.000 0.500 0.000 68.6 25.0 63.9 68.7 68.6 %04 (R63Y_100_100d) 1.000 0.633 0.000 74.9 14.1 71.1 72.5 78.7 %05 (R75Y_100_100d) 1.000 0.766 0.000 80.6 4.8 77.2 77.4 86.4 %06 (R88Y_100_100d) 1.000 0.883 0.000 85.4 -2.5 82.3 82.3 91.7 %07 (Y00G_100_100d) 1.000 1.000 0.000 90.2 -9.6 88.2 88.7 96.2 %08 (Y13G_100_100d) 0.883 1.000 0.000 86.7 -14.2 83.5 84.7 99.6 %09 (Y25G_100_100d) 0.766 1.000 0.000 83.2 -18.4 79.9 82.0 102.9 %10 (Y38G_100_100d) 0.633 1.000 0.000 77.9 -25.1 69.5 74.0 109.8 %11 (Y50G_100_100d) 0.500 1.000 0.000 73.3 -31.7 62.7 70.3 116.8 %12 (Y63G_100_100d) 0.366 1.000 0.000 68.2 -39.5 55.9 68.5 125.2 %13 (Y75G_100_100d) 0.233 1.000 0.000 62.0 -49.7 43.2 65.9 138.9 %14 (Y88G_100_100d) 0.116 1.000 0.000 59.1 -57.1 38.5 68.9 145.9 %15 (G00C_100_100d) 0.000 1.000 0.000 55.8 -65.2 33.8 73.5 152.5 %16 (G13C_100_100d) 0.000 1.000 0.116 56.6 -62.9 24.0 67.3 159.0 %17 (G25C_100_100d) 0.000 1.000 0.233 57.4 -59.7 13.9 61.3 166.8 %18 (G38C_100_100d) 0.000 1.000 0.366 58.5 -54.9 1.5 55.0 178.4 %19 (G50C_100_100d) 0.000 1.000 0.500 59.3 -50.3 -9.0 51.1 190.2 %20 (G63C_100_100d) 0.000 1.000 0.633 60.1 -45.6 -18.7 49.3 202.3 %21 (G75C_100_100d) 0.000 1.000 0.766 61.1 -40.3 -27.8 49.0 214.6 %22 (G88C_100_100d) 0.000 1.000 0.883 62.0 -35.8 -34.7 49.9 224.0 %23 (C00B_100_100d) 0.000 1.000 1.000 63.0 -30.5 -42.0 51.9 234.0 %24 (C13B_100_100d) 0.000 0.883 1.000 59.4 -25.3 -42.7 49.7 239.2 %25 (C25B_100_100d) 0.000 0.766 1.000 55.8 -20.3 -43.2 47.7 244.7 %26 (C38B_100_100d) 0.000 0.633 1.000 50.8 -13.3 -43.9 45.9 253.0 %27 (C50B_100_100d) 0.000 0.500 1.000 45.7 -5.7 -44.6 45.0 262.6 %28 (C63B_100_100d) 0.000 0.366 1.000 40.4 2.6 -45.2 45.2 273.3 %29 (C75B_100_100d) 0.000 0.233 1.000 36.0 10.1 -46.1 47.2 282.3 %30 (C88B_100_100d) 0.000 0.116 1.000 32.1 17.3 -46.7 49.8 290.3 %31 (B00M_100_100d) 0.000 0.000 1.000 27.5 25.9 -47.3 54.0 298.7 %32 (B13M_100_100d) 0.116 0.000 1.000 29.5 33.4 -43.1 54.6 307.7 %33 (B25M_100_100d) 0.233 0.000 1.000 31.0 39.9 -38.5 55.5 315.9 %34 (B38M_100_100d) 0.366 0.000 1.000 35.1 44.5 -34.7 56.5 322.0 %35 (B50M_100_100d) 0.500 0.000 1.000 38.3 52.6 -28.5 59.9 331.5 %36 (B63M_100_100d) 0.633 0.000 1.000 41.2 59.3 -22.0 63.3 339.6 %37 (B75M_100_100d) 0.766 0.000 1.000 45.2 63.8 -18.2 66.4 344.0 %38 (B88M_100_100d) 0.883 0.000 1.000 47.5 68.6 -13.8 69.9 348.5 %39 (M00R_100_100d) 1.000 0.000 1.000 49.5 73.5 -9.0 74.1 352.9 %40 (M13R_100_100d) 1.000 0.000 0.883 49.4 72.4 -4.0 72.5 356.7 %41 (M25R_100_100d) 1.000 0.000 0.766 49.3 71.4 0.4 71.4 0.3 %42 (M38R_100_100d) 1.000 0.000 0.633 49.3 69.8 6.6 70.1 5.4 %43 (M50R_100_100d) 1.000 0.000 0.500 48.9 69.3 12.9 70.5 10.5 %44 (M63R_100_100d) 1.000 0.000 0.366 48.9 68.1 19.6 70.9 16.1 %45 (M75R_100_100d) 1.000 0.000 0.233 48.8 67.1 27.9 72.7 22.6 %46 (M88R_100_100d) 1.000 0.000 0.116 48.6 66.5 34.1 74.8 27.1 %47 ] def /indFa16 16 array def /indFa16 [00 02 04 06 08 10 12 14 16 20 24 28 32 36 40 44] def /indx indFa16 i get def /i90 indx 9 mul 4 add def /i91 i90 1 add def /i92 i90 2 add def /L*Ma LAB*a48 i90 get def /A*Ma LAB*a48 i91 get def /B*Ma LAB*a48 i92 get def /C*Ma A*Ma dup mul B*Ma dup mul add 0.0001 add sqrt def /H*Ma B*Ma A*Ma 0.0001 add atan def /i90 indx 9 mul 1 add def /i91 i90 1 add def /i92 i90 2 add def /r*xF LAB*a48 i90 get def /g*xF LAB*a48 i91 get def /b*xF LAB*a48 i92 get def }%xchart=0 {%xchart>0 /r*x r*dd18M i get def /g*x g*dd18M i get def /b*x b*dd18M i get def r*x g*x b*x setrgbcolor %default to create data %setrgbcolor calculates data for output in "FF_LM_de_setrgbcolor_F" %colorm=0 calculates: rgb_dyF, rgb*dyF, LAB*dyF, ,cmyk*dyF and more %colorm=1 calculates: rgb_dyF, rgb*dyF, LAB*dyF', rgb'*dyF, cmyk*dyF and more /r_xF r_dyF def /g_xF g_dyF def /b_xF b_dyF def /i_xF i_dyF def /c_xF c_dyF def /t_xF t_dyF def /r*xF r*dyF def /g*xF g*dyF def /b*xF b*dyF def /LAB*LxF LAB*LdyF def /LAB*axF LAB*adyF def /LAB*bxF LAB*bdyF def /LAB*CxF LAB*adyF dup mul LAB*bdyF dup mul add 0.0001 add sqrt def /LAB*hxF LAB*bdyF LAB*adyF 0.0001 add atan def colorm 0 eq {%colorm=0 %proc_rgb_dyF_LAB*'dyF uses rgb_dyF by default %calculates output data according to IEC 61966-2-1 proc_rgb_dyF_LAB*'dyF /LAB*'LxF L*'dyF def /LAB*'axF a*'dyF def /LAB*'bxF b*'dyF def /LAB*'CxF C*'dyF def /LAB*'hxF h*'dyF def } if %colorm=0 colorm 1 eq {%colorm=1 /r'*xF r'*dyF def /g'*xF g'*dyF def /b'*xF b'*dyF def %calculates output data according to IEC 61966-2-1 proc_rgb'*dyF_LAB'*dyF /LAB'*LxF L'*dyF def /LAB'*axF a'*dyF def /LAB'*bxF b'*dyF def /LAB'*CxF C'*dyF def /LAB'*hxF h'*dyF def } if %colorm=1 %colorm 0 eq {%colorm=0 % /L*Ma LAB*'LxF def % /A*Ma LAB*'axF def % /B*Ma LAB*'bxF def % /C*Ma LAB*'CxF def % /H*Ma LAB*'hxF def % }%colorm=0 % {%colorm=1 % /L*Ma LAB'*LxF def % /A*Ma LAB'*axF def % /B*Ma LAB'*bxF def % /C*Ma LAB'*CxF def % /H*Ma LAB'*hxF def % } ifelse %colorm=0,1 /L*Ma LAB*LxF def /A*Ma LAB*axF def /B*Ma LAB*bxF def /C*Ma LAB*CxF def /H*Ma LAB*hxF def } ifelse %xchart=0,>0 1 setgray L*Ma cvishow ( ) show A*Ma cvishow ( ) show B*Ma cvishow ( ) show C*Ma cvishow ( ) show H*Ma cvishow ( ) show %calculation of i*xF, c*xF, and t*xF /maxd r*xF def g*xF maxd gt {/maxd g*xF def} if b*xF maxd gt {/maxd b*xF def} if /mind r*xF def g*xF mind lt {/mind g*xF def} if b*xF mind lt {/mind b*xF def} if /i*xF maxd def /c*xF maxd mind sub def /t*xF i*xF c*xF 0.5 mul sub def TBIG0 -1200 ixt add 13500 iyt add moveto (HIC*) show TBM0 -20 -50 rmoveto Fxx show (,Ma) show 0 50 rmoveto TBG0 (: ) show TBG0 COLhNam16 i get show (_) show /I*xF i*xF 100 mul cvi def I*xF 09 le {(00) show} if %filling cero I*xF 09 gt I*xF 99 le and {(0) show} if %range 0..100 I*xF 6 string cvs show (_) show /C*xF c*xF 100 mul cvi def C*xF 09 le {(00) show} if %filling cero C*xF 09 gt C*xF 99 le and {(0) show} if %range 0..100 C*xF 6 string cvs show TBM0 00 -50 rmoveto Fxx show 0 50 rmoveto TBIG0 -1200 ixt add 13000 iyt add moveto (rgbic*) show TBM0 -20 -50 rmoveto Fxx show (,Ma) show 0 50 rmoveto TBG0 (: ) show -1200 ixt add 12500 iyt add moveto r*xF cvsshow2 ( ) show g*xF cvsshow2 ( ) show b*xF cvsshow2 ( ) show i*xF cvsshow2 ( ) show c*xF cvsshow2 ( ) show } if %ibild=0 ibild 0 eq { %ibild=0 xtext0 15000 moveto (Input and Output: ) showen (Ein\255 und Ausgabe: ) showde (Entrada i salida: ) showes (Entr\351e et sortie: ) showfr (Immetere y uscita: ) showit (Input and Output: ) showjp TSYSIOen showen TSYSIOde showde TSYSIOes showes TSYSIOfr showfr TSYSIOit showit TSYSIOjp showjp TSYSIOa show /i xcharts 10 sub def TBG0 ( for relative CIELAB hue) showen ( f\374r relativen CIELAB\255Buntton) showde ( for relative CIELAB hue) showes ( pour la teinte CIELAB relative) showfr ( for relative CIELAB hue) showit ( for relative CIELAB hue) showjp TBIG0 ( h) show TBM0 0 -50 rmoveto (ab,a,rel) show 0 50 rmoveto TBG0 ( = ) show TBIG0 ( h) show TBM0 -20 -50 rmoveto (ab) show 0 50 rmoveto TBG0 (/360 = ) show H*Ma cvishow (/360 = ) show H*Ma 360 div cvsshow2 } if %ibild=0 %END CIELAB_10 Top Text Hue Triangles %*********************************************************************** %BEG CIELAB_10 Hue Triangle left 5 steps 0.0 setgray CBM0 ibild 0 eq { %ibild=0 /Tabfakt 0.82 def /anz 5 def /xs 10000 anz 3 add div def /ys xs def /x9 xs 1.8 mul def /xd xs 2 mul def /yd xs def 1 1 1 setrgbcolor %n* 1 1 3 {/j exch def /x1 xmin def /y1 ymax yd j 2 mul mul sub def /x2 xmin xd 4 j sub mul add def /y2 ymin yd 4 j sub mul add def x1 y1 moveto x2 y2 lineto stroke } for %c* 1 1 3 {/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 xcharts 6 ge {/i xcharts 10 sub def /r*xsi r*dd18M i get def /g*xsi g*dd18M i get def /b*xsi b*dd18M i get def } if /id 1 4 div def 0 1 04 {/j exch def %j=0,4 /im 4 j sub def 0 1 im {/i exch def %i=0,4 im 0 eq %im=0 {/r*x 0 def /g*x 0 def /b*x 0 def} %im=0 {/ia 1 id j mul sub def /argb ia def /brgb ia i id mul sub def xcharts 0 eq {/r*x argb def /g*x brgb def /b*x brgb def} if xcharts 1 eq {/r*x argb def /g*x argb def /b*x brgb def} if xcharts 2 eq {/r*x brgb def /g*x argb def /b*x brgb def} if xcharts 3 eq {/r*x brgb def /g*x argb def /b*x argb def} if xcharts 4 eq {/r*x brgb def /g*x brgb def /b*x argb def} if xcharts 5 eq {/r*x argb def /g*x brgb def /b*x argb def} if xcharts 6 ge {%xcharts>=6 /ib 1 im div def %im#0 /ic 1 ib i mul sub def /ie 1 ic sub def /r*x 1 ia mul ic mul r*xsi ia mul ie mul add def /g*x 1 ia mul ic mul g*xsi ia mul ie mul add def /b*x 1 ia mul ic mul b*xsi ia mul ie mul add def } if %xcharts>=6 } ifelse %im=0 r*x g*x b*x setrgbcolor %only to calculate olv'*3, cmyn'*4 /xa xmin xd i mul add 0.5 xd mul sub def /iad j 2 mul def /ya ymax yd i iad add mul sub 1.0 yd mul sub def r*x g*x b*x setrgbcolor xa ya xd xd rec fill xcharti 5 le {1 r*x sub 1 g*x sub 1 b*x sub 0 setcmykcolor xa ya xd 0.5 mul dup rem fill} if xcharti 0 eq {%xcharti=0 [100 300] 0 setdash r*x 0 eq g*x 0 eq and b*x 0 eq and {1 setgray} {0 setgray} ifelse xa ya xd 0.5 mul dup rem stroke [ ] 0 setdash } if %xcharti=0 } for %i=0,4 } for %j=0,4 /i 2 def %mean grey stroke of 5 steps /xa xmin 0.5 xd mul sub def /ya ymax yd i mul 2 mul sub 1.0 yd mul sub def 1 1 1 setrgbcolor xa ya xd xd rec stroke } if %ibild=0 %END CIELAB_10 Hue Triangle left 5 steps %******************************************************************* %BEG CIELAB_10 Hue Triangle right 16 steps ibild 1 eq { %ibild=1 CBK0 /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 1 1 1 setrgbcolor %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 xcharts 6 ge {/i xcharts 10 sub def /r*xsi r*dd18M i get def /g*xsi g*dd18M i get def /b*xsi b*dd18M i get def } if /id 1 15 div def 0 1 15 {/j exch def %j=0,14 /im 15 j sub def 0 1 im {/i exch def %i=0,15 im 0 eq %im=0 {/r*x 0 def /g*x 0 def /b*x 0 def} %im=0 {/ia 1 id j mul sub def /argb ia def /brgb ia i id mul sub def xcharts 0 eq {/r*x argb def /g*x brgb def /b*x brgb def} if xcharts 1 eq {/r*x argb def /g*x argb def /b*x brgb def} if xcharts 2 eq {/r*x brgb def /g*x argb def /b*x brgb def} if xcharts 3 eq {/r*x brgb def /g*x argb def /b*x argb def} if xcharts 4 eq {/r*x brgb def /g*x brgb def /b*x argb def} if xcharts 5 eq {/r*x argb def /g*x brgb def /b*x argb def} if xcharts 6 ge {%xcharts>=6 /ib 1 im div def %im#0 /ic 1 ib i mul sub def /ie 1 ic sub def /r*x 1 ia mul ic mul r*xsi ia mul ie mul add def /g*x 1 ia mul ic mul g*xsi ia mul ie mul add def /b*x 1 ia mul ic mul b*xsi ia mul ie mul add def } if %xcharts>=6 } ifelse %im=0 r*x g*x b*x setrgbcolor %only to calculate olv'*3, cmyn'*4 /xa xmin xd i mul add 0.5 xd mul sub def /iad j 2 mul def /ya ymax yd i iad add mul sub 1.0 yd mul sub def r*x g*x b*x setrgbcolor xa ya xd xd rec fill xcharti 5 le {1 r*x sub 1 g*x sub 1 b*x sub 0 setcmykcolor xa ya xd 0.5 mul dup rem fill} if xcharti 0 eq {%xcharti=0 [100 300] 0 setdash r*x 0 eq g*x 0 eq and b*x 0 eq and {1 setgray} {0 setgray} ifelse xa ya xd 0.5 mul dup rem stroke [ ] 0 setdash } if %xcharti=0 } for %i=0,15 } for %j=0,15 xcharti 5 le {%xchart=0,5 %mean grey stroke of steps 7 and 8 7 1 8 {/i exch def %i=7,8 /xa xmin xd 0.5 mul sub def /ya ymax yd i mul 2 mul sub xd 0.5 mul sub def 1 1 1 setrgbcolor xa ya xd xd rec stroke } for %i=7,8 } if %xchart=0,5 } if %ibild=1 %END CIELAB_10 Hue Triangle right %******************************************************************* %BEG CIELAB_10 Table ibild 0 eq {5600}{4500} ifelse 9600 translate proc_CIELAB_T16 ibild 0 eq {-5600}{-4500} ifelse -9600 translate %END CIELAB_10 Table %******************************************************************** %BEG CIELAB_10 Diagram ibild 0 eq { %ibild=0 2700 11600 translate proc_CIELAB_D -2700 -11600 translate } if %ibild=0 %END CIELAB_10 Diagram %***************************************************************** %BEG CIELAB_10 Gamut ibild 1 eq { %ibild=1 proc_CIELAB_G } if %ibild=1 %END CIELAB_10 Gamut %***************************************************************** ibild 1 eq {-13800 -1700 translate} if ibild 0 eq { -1900 -1700 translate} if } if %xcharts=10,25 %END CIELAB_10,25 xchart=10,25 %***************************************************************************** } for %ibild=0,1 %***************************************************************************** xcharts 26 eq {%BEG CIELAB_26 xcharts=26 % Data for 1080 colour test chart /nr1 27 array def /tx1 52 array def /nr1 [(01) (02) (03) (04) (05) (06) (07) (08) (09) (10) (11) (12) (13) (14) (15) (16) (17) (18) (19) (20) (21) (22) (23) (24) (25) (26) (27)] def /tx1 [(A) (B) (C) (D) (E) (F) (G) (H) (I) (J) (K) (L) (M) (N) (O) (P) (Q) (R) (S) (T) (U) (V) (W) (X) (Y) (Z) (a) (b) (c) (d) (e) (f) (g) (h) (i) (j) (k) (l) (m) (n) (o) (p) (q) (r) (s) (t) (u) (v) (w) (x) (y) (z)] def /fakt 1 def /iyt 32 fakt mul def %text size /iyd 35 fakt mul def %line difference 180 /Times-ISOL1 FS 0 0 0 setrgbcolor 9000 -180 moveto (Test chart G with 40x27=1080 colours) showea (Pr\374fvorlage G mit 40x27=1080 Farben) showde (; digital equidistant 9 or 16 step colour scales;) showea (; digital gleichabst\344ndige 9 oder 16stufige Farbreihen;) showde ( Farbdaten in Spalte (A-n):) showde ( Colour data in column (A-n):) showea 180 /TimesB-ISOL1 FS xchart 0 eq {( rgb + cmy0 (A_j + k26_n27)) show (, 000n (k), w (l), nnn0 (m), www (n)) show} if xchart 1 eq {( rgb (A_n)) show} if /xs 900 3 div 2 mul def /ys xs def /d2 xs 2 div def /d8 xs 8 div def (, 3D = ) show colorm cvishow %(, colsep = ) show colsep cvishow %colorm 1 eq {(, cmyn4*) show} if %/xchartg where {pop /faktg xchartg 1 ge {1.10} {1.00} ifelse def} % {/faktg 1.10 def} ifelse %0.01 MM faktg mul dup scale /xmin 650 3 div 2.2 mul def /ymax 15800 def xchart 0 eq {/xd 800 3 div 2 mul def /yd 800 3 div 2 mul def} {/xd 900 3 div 2 mul def /yd 900 3 div 2 mul def} ifelse /xsd xs xd sub 0.5 mul def /ysd xs xd sub 0.5 mul def /xd2 xd 0.50 mul def /xd4 xd 0.25 mul def 20 setlinewidth 500 3 div 2 mul /Times-ISOL1 FS 0 0 0 setrgbcolor 1 1 27 {/i exch def %i=1,27 /x xs 0.15 mul def /y 27.6 ys mul ys i mul sub def x y moveto nr1 i 1 sub get show } for %i=1,27 1 1 40 {/i exch def %i=1,36 /x xs i mul 000 add def /y 27.5 ys mul def x y moveto tx1 i 1 sub get show } for %i=1,36 /RGB*R0 1080 array def /RGB*G0 1080 array def /RGB*B0 1080 array def /IMODE 0 def %input rgb for output LAB* %row no.1 and 2: 9xrgb /imax 08 def /jmax 08 def /kmax 08 def /TKK2 {200 3 div 2 mul /Times-ISOL1 FS} bind def TKK2 0 1 kmax {/k exch def %beg k=0,08 /k0 k 3 idiv def /k1 k k0 3 mul sub def /xadd k1 xs 9 mul mul def /yadd k0 xs 9 mul mul def 0 1 jmax {/j exch def %beg j=0,jmax 0 1 imax {/i exch def %beg i=0,imax /n1079 i j 9 mul add k 81 mul add def /xa xmin j xs mul add xadd add xsd add def /ya ymax i ys mul sub yadd sub ysd add def /r k kmax div def /g j jmax div def /b i imax div def RGB*R0 n1079 r put RGB*G0 n1079 g put RGB*B0 n1079 b put r g b setrgbcolor xa ya xd dup rec fill 1 r sub 1 g sub 1 b sub 0 setcmykcolor xa xd4 add ya xd4 add xd2 dup rec fill } for %end i=0,jmax } for %end j=0,jmax } for %end k=0,kmax %3x rgbcmy /id 1 8 div def /rijn 81 array def %for intermediate storage /gijn 81 array def /bijn 81 array def /lmax 2 def /n1079 728 def 0 1 lmax {/l exch def %beg k=0,kmax /xadd 3 xs 9 mul mul def /yadd l ys 9 mul mul def %for intermediate storage of l=0,lmax 0 1 01 {/jchart exch def %jchart=0,1 /xchartj l jchart 3 mul add def 0 1 08 {/j exch def %j=0,7 /im 8 j sub def jchart 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 xchartj 0 eq {/r argb def /g brgb def /b brgb def} if xchartj 1 eq {/r argb def /g argb def /b brgb def} if xchartj 2 eq {/r brgb def /g argb def /b brgb def} if xchartj 3 eq {/r brgb def /g argb def /b argb def} if xchartj 4 eq {/r brgb def /g brgb def /b argb def} if xchartj 5 eq {/r argb def /g brgb def /b argb def} if jchart 0 eq {/in i j add def /jn j def} {/in j def /jn i j add def} ifelse rijn in 9 mul jn add r put gijn in 9 mul jn add g put bijn in 9 mul jn add b put } for %i=0,7 } for %j=0,8 } for %jchart=0,1 %for output of l=0,lmax 0 1 08 {/j exch def %j=0,8 0 1 08 {/i exch def %i=0,8 /n1079 n1079 1 add def /r rijn i j 9 mul add get def /g gijn i j 9 mul add get def /b bijn i j 9 mul add get def /xa xmin xs j mul add xadd add xsd add def /ya ymax xs i mul sub yadd sub ysd add def r g b setrgbcolor xa ya xd dup rec fill 1 r sub 1 g sub 1 b sub 0 setcmykcolor xa xd4 add ya xd4 add xd2 dup rec fill } for %i=0,7 } for %j=0,8 } for %end l=0,lmax %6wrgbcmy /n1079 971 def /lmax 03 def %4 rows with geys /kmax 1 def %9 or 16 steps 0 1 kmax {/k exch def % k 0 eq {/jmax 08 def} {/jmax 15 def} ifelse 0 1 lmax {/l exch def %beg l=0,lmax /xadd 36 l add xs mul def /yadd k 9 xs mul mul def /j1 l 36 add def /j1$ tx1 j1 get def 0 1 jmax {/j exch def %j=0,08 /n1079 n1079 1 add def /i1 j k 9 mul add 1 add def %9 steps, 16 steps /argb j jmax div def /xa xmin xadd add xsd add def /ya ymax xs j mul sub yadd sub ysd add def /r argb def /g argb def /b argb def r g b setrgbcolor xa ya xd dup rec fill 1 r sub 1 g sub 1 b sub 0 setcmykcolor xa xd4 add ya xd4 add xd2 dup rec fill } for %j=0,jmax } for %l=0,lmax } for %k=0,kmax %basic colours 1072 - 1080 /basrgb 24 array def /basrgb [0 0 0 1 1 1 1 0 0 0 1 1 1 1 0 0 0 1 0 1 0 1 0 1 ] def /n1079 1071 def 0 1 07 {/i exch def %i=0,7 /n1079 n1079 1 add def /i3 i 3 mul def /xadd 36 xs mul def /yadd 25 xs mul def i 0 eq {/l 0 def /j 0 def /j1$ (k) def /i1 26 def} if i 1 eq {/l 0 def /j 1 def /j1$ (k) def /i1 27 def} if i 2 eq {/l 1 def /j 0 def /j1$ (l) def /i1 26 def} if i 3 eq {/l 1 def /j 1 def /j1$ (l) def /i1 27 def} if i 4 eq {/l 2 def /j 0 def /j1$ (m) def /i1 26 def} if i 5 eq {/l 2 def /j 1 def /j1$ (m) def /i1 27 def} if i 6 eq {/l 3 def /j 0 def /j1$ (n) def /i1 26 def} if i 7 eq {/l 3 def /j 1 def /j1$ (n) def /i1 27 def} if /xa xmin xs l mul add xadd add xsd add def /ya ymax xs j mul sub yadd sub ysd add def /r basrgb i3 get def /g basrgb i3 1 add get def /b basrgb i3 2 add get def r g b setrgbcolor xa ya xd dup rec fill 1 r sub 1 g sub 1 b sub 0 setcmykcolor xa xd4 add ya xd4 add xd2 dup rec fill } for %i=0,7 %*************************************************************************** %} for %pmetam=0,1 } if %END CIELAB_26 xcharts=26 } if %END LOOP0: xchart<=xchart3P0 two pages %***************************************************************************** %used for tables in the rest /xchart3P1 xchart3 1 add def /xchart3P2 xchart3 2 add def /xchart3P3 xchart3 3 add def xchart xchart3P1 ge {%BEG LOOPtables: xchart>=xchart3P1 /xcharti pchart def xcharti 0 eq {/Xprint 0 def /FileData (LAB*rc) def} if xcharti 1 eq {/Xprint 1 def /FileData (LAB*ra) def} if xcharti 2 eq {/Xprint 1 def /FileData (LAB*na) def} if xcharti 3 eq {/Xprint 1 def /FileData (LAB*la0) def} if xcharti 4 eq {/Xprint 1 def /FileData (LAB*la1) def} if xcharti 5 eq {/Xprint 1 def /FileData (LAB*la2) def} if xcharti 6 eq {/Xprint 1 def /FileData (LAB*la3) def} if xcharti 7 eq {/Xprint 1 def /FileData (LAB*la4) def} if xcharti 8 eq {/Xprint 1 def /FileData (LAB*la5) def} if xcharti 9 eq {/Xprint 1 def /FileData (LAB*la6) def} if xcharti 10 eq {/Xprint 1 def /FileData (LAB*la7) def} if TK1 0 setgray 5500 -200 moveto FileData show xcharti 3 ge {(, YN=) show Lrefl xcharti get show} if (, XYZnw=) show Xj 000 get cvsshow1r (, ) show Yj 000 get cvsshow1r (, ) show Zj 000 get cvsshow1r (, ) show Xj 728 get cvsshow1r (, ) show Yj 728 get cvsshow1r (, ) show Zj 728 get cvsshow1r (, LAB*nw=) show LAB*Lja 000 get cvsshow1r (, ) show LAB*aja 000 get cvsshow1r (, ) show LAB*bja 000 get cvsshow1r (, ) show LAB*Lja 728 get cvsshow1r (, ) show LAB*aja 728 get cvsshow1r (, ) show LAB*bja 728 get cvsshow1r TK1 18500 -200 moveto (Output: ) showen (Ausgabe: ) showde (salida: ) showes (sortie: ) showfr (uscita: ) showit (output: ) showjp FileDaten showen FileDatde showde FileDaten showes FileDaten showfr FileDaten showit FileDaten showjp (, Seite ) showde (, page ) showen (, p\341gina ) showes (, page ) showfr (, pagina ) showit (, page ) showjp xchart 1 add cvishow (/) show xchartm cvishow TBK1 /xi 000 def xi 100 add 16700 moveto (Data of Maximum color M in colorimetric system ) showen (Daten der Maximalfarbe M im Farbmetrik\255Sytem ) showde (Data of Maximum color M in colorimetric system ) showes (Couleur maximale dans le syst\350me colorimetrique : ) showfr (Data of Maximum color M in colorimetric system ) showit (Data of Maximum color M in colorimetric system ) showjp FileDaten showen FileDatde showde FileDaten showes FileDaten showfr FileDaten showit FileDaten showjp ( for input or output; ) showen ( f\374r Ein\255 oder Ausgabe; ) showde ( for input or output; ) showes ( pour l'entr\351e et sortie; ) showfr ( for input or output; ) showit ( for input or output; ) showjp (Six hue angles of the 60 degree standard colours) showen (Sechs Bunttonwinkel der 60\255Grad Standardfarben) showde (Six hue angles of the 60 degree standard colours) showes (Six angles de teinte \340 60 degr\350s couleurs standard ) showfr (Six hue angles of the 60 degree standard colours) showit (Six hue angles of the 60 degree standard colours) showjp TBIK1 ( RYGCBM) show TBS1 0 -50 rmoveto (s) show 0 50 rmoveto TBK1 (:) show TBIK1 ( h) show TBS1 0 -50 rmoveto (ab,ds) show 0 50 rmoveto TBK1 ( = ) show LAB*Hs 0 get cvsshow1r (, ) show LAB*Hs 1 get cvsshow1r (, ) show LAB*Hs 2 get cvsshow1r (, ) show LAB*Hs 3 get cvsshow1r (, ) show LAB*Hs 4 get cvsshow1r (, ) show LAB*Hs 5 get cvsshow1r (; ) show xi 100 add 16400 moveto (Six hue angles of the device colours) showen (Sechs Bunttonwinkel der Ger\344tefarben) showde (Six hue angles of the device colours) showes (Six angles de teinte des couleurs p\351riph\351riques) showfr (Six hue angles of the device colours) showit (Six hue angles of the device colours) showjp TBIK1 ( RYGCBM) show TBS1 0 -50 rmoveto (d) show 0 50 rmoveto TBK1 (:) show TBIK1 ( h) show TBS1 0 -50 rmoveto (ab,d) show 0 50 rmoveto TBK1 ( = ) show LAB*hdd64M 00 get cvsshow1r (, ) show LAB*hdd64M 08 get cvsshow1r (, ) show LAB*hdd64M 16 get cvsshow1r (, ) show LAB*hdd64M 24 get cvsshow1r (, ) show LAB*hdd64M 32 get cvsshow1r (, ) show LAB*hdd64M 40 get cvsshow1r (; ) show (Six hue angles of the elementary colours) showen (Sechs Bunttonwinkel der Elementarfarben) showde (Six hue angles of the elementary colours) showes (Six angles de teinte des couleurs \351l\351mentaires) showfr (Six hue angles of the elementary colours) showit (Six hue angles of the elementary colours) showjp TBIK1 ( RYGCBM) show TBS1 0 -50 rmoveto (e) show 0 50 rmoveto TBK1 (:) show TBIK1 ( h) show TBS1 0 -50 rmoveto (ab,e) show 0 50 rmoveto TBK1 ( = ) show LAB*He 0 get cvsshow1r (, ) show LAB*He 1 get cvsshow1r (, ) show LAB*He 2 get cvsshow1r (, ) show LAB*He 3 get cvsshow1r (, ) show LAB*He 4 get cvsshow1r (, ) show LAB*He 5 get cvsshow1r xchart xchart3P1 le {%BEG LOOP1: xchart<=xchart3P1 /ToutenN0 (Colorimetric data of Natural Colour System NCS) def /ToutdeN0 (Farbmetrische Daten des Nat\374rliches Farbsystems NCS) def /ToutenL0 (Colorimetric data of Natural Luminous System NLS) def /ToutdeL0 (Farbmetrische Daten des Nat\374rliches\255Lichtfarbensystem NLS) def 8 /Times-ISOL1 FS 72 82.5 moveto ( QF720-72, ) show xchart 8 le {ToutdeN0 showde ToutenN0 showea} {ToutdeL0 showde ToutenL0 showea} ifelse /yhoe 8500 def /xhoe 12300 def % 0 1 2 3 4 5 /Dcol [(O=R) (J=Y) (L=G) (C=C) (V=B) (M=M) ] def /Dcolen [(orange\255red) (Yellow) (leaf\255green) (cyan\255blue) (violet\255blue) (magenta\255red)] def /Dcolde [(Orangerot) (Gelb) (Laubgr\374n) (Cyanblau) (Violettblau) (Magentarot)] def /xshifd [ 2800 -4000 -5400 -5100 2800 2900 ] def /yshifd [ 2500 3700 1800 -1000 -2600 -0850 ] def /Ecol [(R) (Y) (G) (C) (B) (M) ] def /Ecolen [(red) (yellow) (green) (blue\255green) (blue) (blue\255red)] def /Ecolde [(Rot) (Gelb) (Gr\374n) (Blaugr\374n) (Blau) (Blaurot)] def /xshife [ 2800 -3000 -5400 -5100 -3000 2900 ] def /yshife [ 2000 3700 1800 -1000 -2600 -0850 ] def /Scol [(R) (Y) (G) (C) (B) (M) ] def /Scolen [(red) (yellow) (green) (blue\255green) (blue) (blue\255red)] def /Scolde [(Rot) (Gelb) (Gr\374n) (Blaugr\374n) (Blau) (Blaurot)] def /xshifs [ 2800 -3000 -5400 -5100 -3000 2900 ] def /yshifs [ 2000 3700 1800 -1000 -2600 -0850 ] def 2500 8200 moveto 20000 0 rlineto stroke 12500 2000 moveto 0 13000 rlineto stroke 0 1 3 {/ibild exch def %ibild=0,3 ibild 0 eq {xhoe 0.5 mul 600 sub yhoe 1.47 mul 400 sub translate} if ibild 1 eq {xhoe 1.1 mul yhoe 0.0 mul translate} if ibild 2 eq {xhoe 1.1 mul neg yhoe 0.97 mul neg translate} if ibild 3 eq {xhoe 1.1 mul yhoe 0.0 mul translate} if ibild 2 le {%ibild<=2 0 setgray -4000 0 moveto 8000 0 rlineto stroke 0 -3500 moveto 0 7500 rlineto stroke 3800 70 moveto 200 -70 rlineto -200 -70 rlineto closepath fill -70 3800 moveto 70 200 rlineto 70 -200 rlineto closepath fill /fak0 28 def /fakt 25 def 0 1 48 {/i exch def %i=0,48 LAB*add64M i get fakt mul LAB*bdd64M i get fakt mul moveto LAB*add64M i 1 add get fakt mul LAB*bdd64M i 1 add get fakt mul lineto stroke newpath r*dd64M i get g*dd64M i get b*dd64M i get setrgbcolor LAB*add64M i get fakt mul LAB*bdd64M i get fakt mul 100 0 360 arc fill } for %i=0,48 0 setgray 0 8 48 {/i exch def %i=0,8,48 RJGCBMd 0 0 moveto LAB*add64M i get fak0 mul LAB*bdd64M i get fak0 mul rlineto stroke } for %i=0,8,48 } if %ibild<=2 ibild 0 eq {%ibild=0 %device (d) 0 setgray 0300 3900 moveto TBIK1 (device ) showea (Ger\344te\255) showde TBK1 (CIELAB) show TBIK1 ( \050 a*) show TBS1 0 -50 rmoveto (d) show 0 50 rmoveto TBIK1 (, b*) show TBS1 0 -50 rmoveto (d) show 0 50 rmoveto TBIK1 (\051) show TBK1 ( chroma diagram) showea (\255Diagramm) showde TBIK1 3500 0150 moveto (a*) show TBS1 0 -50 rmoveto (d) show 0 50 rmoveto -500 4000 moveto (b*) show TBS1 0 -50 rmoveto (d) show 0 50 rmoveto 0 8 40 {/kn exch def %kn=0,8,40 0 setgray /kn8 kn 8 idiv def xshifd kn8 get yshifd kn8 get moveto TBIK1 Dcol kn8 get show TBS1 0 -50 rmoveto (d) show 0 50 rmoveto TBK1 ( ) show Dcolen kn8 get showea Dcolde kn8 get showde TIK1 xshifd kn8 get yshifd kn8 get 350 sub moveto (LCH*) show TK1 -30 -50 rmoveto (d) show 0 50 rmoveto TK1 ( = ) show LAB*Ldd64M kn get cvsshow1 ( ) show LAB*Cdd64M kn get cvsshow1 ( ) show LAB*hdd64M kn get cvsshow1 TIK1 xshifd kn8 get yshifd kn8 get 700 sub moveto (LAB*) show TK1 -30 -50 rmoveto (d) show 0 50 rmoveto TK1 ( = ) show LAB*Ldd64M kn get cvsshow1 ( ) show LAB*add64M kn get cvsshow1 ( ) show LAB*bdd64M kn get cvsshow1 TIK1 xshifd kn8 get yshifd kn8 get 1050 sub moveto (rgb*) show TK1 -30 -50 rmoveto (d) show 0 50 rmoveto TK1 ( = ) show r*dd64M kn get cvsshow3 ( ) show g*dd64M kn get cvsshow3 ( ) show b*dd64M kn get cvsshow3 0 8 48 {/i exch def %i=0,8,48 RYGCBMd 0 1 8 {/l exch def %l=0,8 newpath /alpha l 0.125 mul def /beta 1 alpha sub def 1.0 beta mul r*dd362Mi i 7.5 mul cvi get alpha mul add 1.0 beta mul g*dd362Mi i 7.5 mul cvi get alpha mul add 1.0 beta mul b*dd362Mi i 7.5 mul cvi get alpha mul add setrgbcolor LAB*add362Mi i 7.5 mul cvi get fakt mul alpha mul LAB*bdd362Mi i 7.5 mul cvi get fakt mul alpha mul 100 0 360 arc fill } for %l=0,8 l 0 eq {%l=0 0 setgray LAB*add362Mi i 7.5 mul cvi get fakt mul alpha mul LAB*bdd362Mi i 7.5 mul cvi get fakt mul alpha mul 100 0 360 arc stroke } if %l=0 } for %i=0,8,48 } for %kn=0,8,40 } if %ibild=0 ibild 1 eq {%ibild=1 %elementary (e) 0 setgray 0300 3900 moveto TBIK1 (elementary ) showea (Elementar\255) showde TBK1 (CIELAB) show TBIK1 ( \050 a*) show TBS1 0 -50 rmoveto (e) show 0 50 rmoveto TBIK1 (, b*) show TBS1 0 -50 rmoveto (e) show 0 50 rmoveto TBIK1 (\051) show TBK1 ( chroma diagram) showea (\255Diagramm) showde TBIK1 3500 0150 moveto (a*) show TBS1 0 -50 rmoveto (e) show 0 50 rmoveto -500 4000 moveto (b*) show TBS1 0 -50 rmoveto (e) show 0 50 rmoveto 0 setgray 0 8 40 {/kn exch def %kn=0,8,40 /kn8 kn 8 idiv def xshife kn8 get yshife kn8 get moveto TBIK1 Ecol kn8 get show TBS1 0 -50 rmoveto (e) show 0 50 rmoveto TBK1 ( ) show Ecolen kn8 get showea Ecolde kn8 get showde /i362e hab*de64M kn get round cvi def i362e 360 ge {/i362e i362e 360 sub def} if TIK1 xshife kn8 get yshife kn8 get 350 sub moveto (LCH*) show TK1 -30 -50 rmoveto (e) show 0 50 rmoveto TK1 ( = ) show LAB*Lde362Mi kn 7.5 mul cvi get cvsshow1 ( ) show LAB*Cde362Mi kn 7.5 mul cvi get cvsshow1 ( ) show LAB*hde362Mi kn 7.5 mul cvi get cvsshow1 TIK1 xshife kn8 get yshife kn8 get 700 sub moveto (LAB*) show TK1 -30 -50 rmoveto (e) show 0 50 rmoveto TK1 ( = ) show LAB*Lde362Mi kn 7.5 mul cvi get cvsshow1 ( ) show LAB*ade362Mi kn 7.5 mul cvi get cvsshow1 ( ) show LAB*bde362Mi kn 7.5 mul cvi get cvsshow1 TIK1 xshife kn8 get yshife kn8 get 1050 sub moveto (rgb*) show TK1 -30 -50 rmoveto (de) show 0 50 rmoveto TK1 ( = ) show r*de362Mi kn 7.5 mul cvi get cvsshow3 ( ) show g*de362Mi kn 7.5 mul cvi get cvsshow3 ( ) show b*de362Mi kn 7.5 mul cvi get cvsshow3 } for %kn=0,8,40 0 8 48 {/i exch def %i=0,8,48 RYGCBMe r*de362Mi i 7.5 mul cvi get g*de362Mi i 7.5 mul cvi get b*de362Mi i 7.5 mul cvi get setrgbcolor 0 0 moveto LAB*ade362Mi i 7.5 mul cvi get fakt mul LAB*bde362Mi i 7.5 mul cvi get fakt mul rlineto stroke 0 1 8 {/l exch def %l=0,8 newpath /alpha l 0.125 mul def /beta 1 alpha sub def 1.0 beta mul r*de362Mi i 7.5 mul cvi get alpha mul add 1.0 beta mul g*de362Mi i 7.5 mul cvi get alpha mul add 1.0 beta mul b*de362Mi i 7.5 mul cvi get alpha mul add setrgbcolor LAB*ade362Mi i 7.5 mul cvi get fakt mul alpha mul LAB*bde362Mi i 7.5 mul cvi get fakt mul alpha mul 100 0 360 arc fill } for %l=0,8 } for %i=0,8,48 } if %ibild=1 ibild 2 eq {%ibild=2 %standard (s) 0 setgray 0300 3900 moveto TBIK1 (standard ) showea (Standard\255) showde TBK1 (CIELAB) show TBIK1 ( \050 a*) show TBS1 0 -50 rmoveto (s) show 0 50 rmoveto TBIK1 (, b*) show TBS1 0 -50 rmoveto (s) show 0 50 rmoveto TBIK1 (\051) show TBK1 ( chroma diagram) showea (\255Diagramm) showde TBIK1 3500 0150 moveto (a*) show TBS1 0 -50 rmoveto (s) show 0 50 rmoveto -500 4000 moveto (b*) show TBS1 0 -50 rmoveto (s) show 0 50 rmoveto 0 setgray 0 8 40 {/kn exch def %kn=0,8,40 /kn8 kn 8 idiv def xshifs kn8 get yshifs kn8 get moveto TBIK1 Scol kn8 get show TBS1 0 -50 rmoveto (s) show 0 50 rmoveto TBK1 ( ) show Scolen kn8 get showea Scolde kn8 get showde TIK1 xshifs kn8 get yshifs kn8 get 350 sub moveto (LCH*) show TK1 -30 -50 rmoveto (s) show 0 50 rmoveto TK1 ( = ) show LAB*Lds362Mi kn 7.5 mul cvi get cvsshow1 ( ) show LAB*Cds362Mi kn 7.5 mul cvi get cvsshow1 ( ) show LAB*hds362Mi kn 7.5 mul cvi get cvsshow1 TIK1 xshifs kn8 get yshifs kn8 get 700 sub moveto (LAB*) show TK1 -30 -50 rmoveto (s) show 0 50 rmoveto TK1 ( = ) show LAB*Lds362Mi kn 7.5 mul cvi get cvsshow1 ( ) show LAB*ads362Mi kn 7.5 mul cvi get cvsshow1 ( ) show LAB*bds362Mi kn 7.5 mul cvi get cvsshow1 TIK1 xshifs kn8 get yshifs kn8 get 1050 sub moveto (rgb*) show TK1 -30 -50 rmoveto (ds) show 0 50 rmoveto TK1 ( = ) show r*ds362Mi kn 7.5 mul cvi get cvsshow3 ( ) show g*ds362Mi kn 7.5 mul cvi get cvsshow3 ( ) show b*ds362Mi kn 7.5 mul cvi get cvsshow3 } for %kn=0,8,40 0 8 40 {/i exch def %i=0,8,48 RYGCBMs r*ds362Mi i 7.5 mul cvi get g*ds362Mi i 7.5 mul cvi get b*ds362Mi i 7.5 mul cvi get setrgbcolor 0 0 moveto LAB*ads362Mi i 7.5 mul cvi get fakt mul LAB*bds362Mi i 7.5 mul cvi get fakt mul rlineto stroke 0 1 8 {/l exch def %l=0,8 newpath /alpha l 0.125 mul def /beta 1 alpha sub def 1.0 beta mul r*ds362Mi i 7.5 mul cvi get alpha mul add 1.0 beta mul g*ds362Mi i 7.5 mul cvi get alpha mul add 1.0 beta mul b*ds362Mi i 7.5 mul cvi get alpha mul add setrgbcolor LAB*ads362Mi i 7.5 mul cvi get fakt mul alpha mul LAB*bds362Mi i 7.5 mul cvi get fakt mul alpha mul 100 0 360 arc fill } for %l=0,8 } for %i=0,8,48 } if %ibild=2 ibild 3 eq {%ibild=3 0 setgray -6500 3900 moveto TBK1 (Notes to the CIELAB chroma diagrams) showea (Anmerkung zu den CIELAB\255Buntheits\255Diagrammen) showde TBIK1 ( \050 a*) show TBS1 -30 -50 rmoveto (d) show 0 50 rmoveto TBIK1 (, b*) show TBS1 -30 -50 rmoveto (d) show 0 50 rmoveto TBIK1 ( \051, ) show TBIK1 ( \050 a*) show TBS1 -30 -50 rmoveto (s) show 0 50 rmoveto TBIK1 (, b*) show TBS1 -30 -50 rmoveto (s) show 0 50 rmoveto TBIK1 ( \051, ) show TBIK1 ( \050 a*) show TBS1 -30 -50 rmoveto (e) show 0 50 rmoveto TBIK1 (, b*) show TBS1 -30 -50 rmoveto (e) show 0 50 rmoveto TBIK1 ( \051) show -6500 3400 moveto TK1 (1. For the) showea (1. F\374r die) showde TIK1 ( rgb*) show TS -30 -50 rmoveto (d) show 0 50 rmoveto TK1 (\255input values the CIELAB data) showea (\255Eingabedaten wurden die CIELAB-Daten) showde TIK1 ( LCH*) show TS -30 -50 rmoveto (d) show 0 50 rmoveto TK1 ( and) showea ( und) showde TIK1 ( LAB*) show TS -30 -50 rmoveto (d) show 0 50 rmoveto TK1 ( have been calculated.) showea ( berechnet.) showde -6500 3000 moveto TK1 (2. For the calculation of the standard hue angle ) showea TIK1 (h) show TS -30 -50 rmoveto (ab,s) show 0 50 rmoveto TK1 ( use for any device values) showea TIK1 ( rgb*) show TS -30 -50 rmoveto (d) show 0 50 rmoveto TK1 ( the equation:) showea -6000 2650 moveto TBIK1 (h) show TBS1 -30 -50 rmoveto (ab,s) show 0 50 rmoveto TBK1 ( = ) show TBIK1 (atan) show TBK1 ( [ ) show TBIK1 (r*) show TBS1 -30 -50 rmoveto (d) show 0 50 rmoveto TBIK1 ( cos(30)) show TBK1 ( + ) show TBIK1 (g*) show TBS1 -30 -50 rmoveto (d) show 0 50 rmoveto TBIK1 ( cos(150)) show TBK1 ( ] / [ ) show TBIK1 (r*) show TBS1 -30 -50 rmoveto (d) show 0 50 rmoveto TBIK1 ( sin(30)) show TBK1 ( + ) show TBIK1 (g*) show TBS1 -30 -50 rmoveto (d) show 0 50 rmoveto TBIK1 ( sin(150)) show TBK1 ( + ) show TBIK1 (b*) show TBS1 -30 -50 rmoveto (d) show 0 50 rmoveto TBIK1 ( sin(270)) show TBK1 ( ] ) show 5000 2650 moveto TK1 ((1)) show -6500 2200 moveto TK1 (3. For the 48 or 360 equally spaced standard hue angles ) showea (3. F\374r die 48 oder 360 gleichabst\344ndig gestuften Standard\255Bunttonwinkel ) showde TIK1 (h) show TS -30 -50 rmoveto (ab,s) show 0 50 rmoveto TK1 ( of the colours of maximum chroma use) showea ( der Farben von maximaler Buntheit benutze) showde -6250 1900 moveto (the seven hue angles of the 60 degree colours) showea (die sieben Bunttonwinkel der 60\Grad\255Farben) showde TIK1 ( s: h) show TS 0 -50 rmoveto (ab,si) show 0 50 rmoveto TK1 ( = ) show LAB*Hs 0 get cvsshow1r (, ) show LAB*Hs 1 get cvsshow1r (, ) show LAB*Hs 2 get cvsshow1r (, ) show LAB*Hs 3 get cvsshow1r (, ) show LAB*Hs 4 get cvsshow1r (, ) show LAB*Hs 5 get cvsshow1r (, ) show LAB*Hs 6 get cvsshow1r ( (i=0,6) ) show -6250 1600 moveto (and the equations for a 48 and 360 step hue circle: ) showea (und die Gleichungen f\374r einen 48\255 und 360\255stufigen Bunttonkreis: ) showde -6000 1250 moveto TBIK1 (h) show TBS1 0 -50 rmoveto (48ab,sij) show 0 50 rmoveto TBK1 ( = ) show TBIK1 (h) show TBS1 0 -50 rmoveto (ab,si) show 0 50 rmoveto ( + ) show TBIK1 (j) show TBK1 ( [) show TBIK1 (h) show TBS1 0 -50 rmoveto (ab,si+1) show 0 50 rmoveto ( - ) show TBIK1 (h) show TBS1 0 -50 rmoveto (ab,si) show 0 50 rmoveto TBK1 ( ] /8 \050 ) show TBIK1 (i) show TBK1 ( = 0, 1, ..., 5; ) show TBIK1 (j) show TBK1 ( = 0, 1, ..., 7\051) show 5000 1250 moveto TK1 ((2)) show -6000 0850 moveto TBIK1 (h) show TBS1 0 -50 rmoveto (360ab,sij) show 0 50 rmoveto TBK1 ( = ) show TBIK1 (h) show TBS1 0 -50 rmoveto (ab,si) show 0 50 rmoveto ( + ) show TBIK1 (j) show TBK1 ( [) show TBIK1 (h) show TBS1 0 -50 rmoveto (ab,si+1) show 0 50 rmoveto ( - ) show TBIK1 (h) show TBS1 0 -50 rmoveto (ab,si) show 0 50 rmoveto TBK1 ( ] /60 \050 ) show TBIK1 (i) show TBK1 ( = 0, 1, ..., 5; ) show TBIK1 (j) show TBK1 ( = 0, 1, ..., 59\051) show 5000 0850 moveto TK1 ((3)) show -6500 0400 moveto TK1 (4. For the 48 or 360 elementary hue angles ) showea (4. F\374r die 48 oder 360 Elementar\255Bunttonwinkel ) showde TIK1 (h) show TS -30 -50 rmoveto (ab,e) show 0 50 rmoveto TK1 ( of the colours of maximum chroma use) showea ( der Farben von maximaler Buntheit benutze) showde -6250 0100 moveto (the seven hue angles of the elementary colours) showea (die sieben Bunttonwinkel der Elementarfarben) showde TIK1 ( e: h) show TS 0 -50 rmoveto (ab,ei) show 0 50 rmoveto TK1 ( = ) show LAB*He 0 get cvsshow1r (, ) show LAB*He 1 get cvsshow1r (, ) show LAB*He 2 get cvsshow1r (, ) show LAB*He 3 get cvsshow1r (, ) show LAB*He 4 get cvsshow1r (, ) show LAB*He 5 get cvsshow1r (, ) show LAB*He 6 get cvsshow1r ( (i=0,6) ) show -6250 -200 moveto (and the equations for a 48 and 360 step elementary hue circle: ) showea (und die Gleichungen f\374r einen 48\255 und 360\255stufigen Elementar\255Bunttonkreis: ) showde -6000 -550 moveto TBIK1 (h) show TBS1 0 -50 rmoveto (48ab,eij) show 0 50 rmoveto TBK1 ( = ) show TBIK1 (h) show TBS1 0 -50 rmoveto (ab,ei) show 0 50 rmoveto ( + ) show TBIK1 (j) show TBK1 ( [) show TBIK1 (h) show TBS1 0 -50 rmoveto (ab,ei+1) show 0 50 rmoveto ( - ) show TBIK1 (h) show TBS1 0 -50 rmoveto (ab,ei) show 0 50 rmoveto TBK1 ( ] /8 \050 ) show TBIK1 (i) show TBK1 ( = 0, 1, ..., 5; ) show TBIK1 (j) show TBK1 ( = 0, 1, ..., 7\051) show 5000 -550 moveto TK1 ((4)) show -6000 -0950 moveto TBIK1 (h) show TBS1 0 -50 rmoveto (360ab,eij) show 0 50 rmoveto TBK1 ( = ) show TBIK1 (h) show TBS1 0 -50 rmoveto (ab,ei) show 0 50 rmoveto ( + ) show TBIK1 (j) show TBK1 ( [) show TBIK1 (h) show TBS1 0 -50 rmoveto (ab,ei+1) show 0 50 rmoveto ( - ) show TBIK1 (h) show TBS1 0 -50 rmoveto (ab,ei) show 0 50 rmoveto TBK1 ( ] /60 \050 ) show TBIK1 (i) show TBK1 ( = 0, 1, ..., 5; ) show TBIK1 (j) show TBK1 ( = 0, 1, ..., 59\051) show 5000 -950 moveto TK1 ((5)) show -6500 -1400 moveto TK1 (5. For any elementary hue angle ) showea (5. F\374r jeden Elementar\255Bunttonwinkel ) showde TIK1 (h) show TS -30 -50 rmoveto (ab,e) show 0 50 rmoveto TK1 ( there is a well defined device hue angle ) showea ( gibt es einem genau definierten Ger\344te\255Bunttonwinkel ) showde TIK1 (h) show TS -30 -50 rmoveto (ab,d) show 0 50 rmoveto -6250 -1700 moveto TK1 (see the following tables, columns 1 to 5 or 1 to 4.) showea (siehe die folgenden Tabellen, Spalten 1 bis 5 oder 1 bis 4.) showde -6500 -2100 moveto TK1 (6. The values ) showea (6. Die Werte ) showde TIK1 (rgb*) show TS -30 -50 rmoveto (de) show 0 50 rmoveto TK1 ( produce the output of the device\255independent elementary hues) showea ( erzeugen die Ausgabe der ger\344teunabh\344ngigen Elemetar\255Buntt\366ne) showde } if %ibild=3 } for %ibild=0,3 }%LOOP1: xchart<=xchart3P1 {%LOOP1: xchart>xchart3P1 /x0x 0000 def /x1x 5700 def /x2x 13300 def /x01 2200 def %rgb /x02 2850 def /x03 3500 def /x04 4150 def %LabCh /x05 4800 def /x06 5450 def /x07 6100 def /x08 6800 def /x09 7700 def /x10 8400 def /x11 9100 def /xd0 0100 def /xs0 0800 def /xe0 1500 def /xd1 23050 def /xs1 23700 def /xe1 24350 def /xax 5400 def /xbx 10500 def /xcx 15600 def /ymax 16100 def TBIK1 xd0 ymax moveto (h) show TBK1 -00 -80 rmoveto (ab,d) show 00 80 rmoveto TBIK1 xs0 ymax moveto (h) show TBK1 -00 -80 rmoveto (ab,s) show 00 80 rmoveto TBIK1 xe0 ymax moveto (h) show TBK1 -00 -80 rmoveto (ab,e) show 00 80 rmoveto TBIK1 xchart xchart3P2 eq xchart xchart3P3 eq or {%BEG LOOP3: xchart=xchart3P2/3 x0x x01 add ymax moveto (rgb*) show TBK1 -00 -80 rmoveto (dd64M) show 00 80 rmoveto TBIK1 x0x x04 add ymax moveto (LAB*) show TBK1 -00 -80 rmoveto (ddx64M (x=LabCh)) show 00 80 rmoveto TBIK1 xchart xchart3P2 eq {%xchart=xchart3P2 xax x01 add ymax moveto (rgb*) show TBK1 -00 -80 rmoveto (ddx361M) show 00 80 rmoveto TBIK1 xax x04 add ymax moveto (LAB*) show TBK1 -00 -80 rmoveto (ddx361M (x=LabCh)) show 00 80 rmoveto TBIK1 xbx x01 add ymax moveto (rgb*) show TBK1 -00 -80 rmoveto (dsx361M) show 00 80 rmoveto TBIK1 xbx x04 add ymax moveto (LAB*) show TBK1 -00 -80 rmoveto (dsx361M (x=LabCh)) show 00 80 rmoveto TBIK1 } if %xchart=xchart3P2 xcx x01 add ymax moveto (rgb*) show TBK1 -00 -80 rmoveto (dex361M) show 00 80 rmoveto TBIK1 xcx x04 add ymax moveto (LAB*) show TBK1 -00 -80 rmoveto (dex361M) show 00 80 rmoveto }%LOOP3: xchart=xchart3P2/3 {%LOOP3: xchart>xchart3P3 x0x x01 add ymax moveto (rgb*) show TBK1 -00 -80 rmoveto (dd361M) show 00 80 rmoveto TBIK1 x0x x04 add ymax moveto (LAB*) show TBK1 -00 -80 rmoveto (ddx361Mi (x=LabCh)) show 00 80 rmoveto TBIK1 x1x x01 add ymax moveto (rgb*) show TBK1 -00 -80 rmoveto (ds361Mi) show 00 80 rmoveto TBIK1 x1x x04 add ymax moveto (LAB*) show TBK1 -00 -80 rmoveto (dsx361Mi (x=LabCh)) show 00 80 rmoveto TBIK1 x1x x09 add ymax moveto (rgb*) show TBK1 -00 -80 rmoveto (dd361Mi) show 00 80 rmoveto TBIK1 x2x x01 add ymax moveto (rgb*) show TBK1 -00 -80 rmoveto (de361Mi) show 00 80 rmoveto TBIK1 x2x x04 add ymax moveto (LAB*) show TBK1 -00 -80 rmoveto (dex361Mi (x=LabCh)) show 00 80 rmoveto TBIK1 x2x x09 add ymax moveto (rgb*) show TBK1 -00 -80 rmoveto (dd361Mi) show 00 80 rmoveto TBIK1 } ifelse %END LOOP3: xchart>xchart3P3 xd1 ymax moveto (rgb*) show TBK1 -100 -100 rmoveto (dd) show 100 100 rmoveto TBIK1 xs1 ymax moveto (rgb*) show TBK1 -100 -100 rmoveto (ds) show 100 100 rmoveto TBIK1 xe1 ymax moveto (rgb*) show TBK1 -100 -100 rmoveto (de) show 100 100 rmoveto TBIK1 /ymax 15700 def /ydel0 310 def /ydel1 345 def /ys 50 def /RJGCBMs 9 array def /RJGCBMs [( ) (R) (Y) (G) (C) (C) (B) (M) (R)] def /RJGCBM 7 array def /RJGCBM [(R) (Y) (G) (C) (B) (M) (R)] def xchart xchart3P2 eq xchart xchart3P3 eq or {%BEG LOOP4: xchart=xchart3P2/3 x0x x01 add 30 sub 0 moveto 0 16200 rlineto stroke xax x01 add 30 sub 0 moveto 0 16200 rlineto stroke xbx x01 add 30 sub 0 moveto 0 16200 rlineto stroke xcx x01 add 30 sub 0 moveto 0 16200 rlineto stroke TK1 0 1 48 {/i exch def %i=0,48 xchart xchart3P2 eq {%xchart=xchart3P2 /i8 i 8 idiv def} {/i8 0 def} ifelse /yi ymax i ydel0 mul sub i8 ydel0 0.4 mul mul sub def xd0 yi moveto hab*dd64M i get cvsshow1 %all floating point xs0 yi moveto hab*ds64M i get cvsshow1 xe0 yi moveto hab*de64M i get cvsshow1 x0x x01 add yi moveto r*dd64M i get cvsshow3 x0x x02 add yi moveto g*dd64M i get cvsshow3 x0x x03 add yi moveto b*dd64M i get cvsshow3 x0x x04 add yi moveto LAB*Ldd64M i get cvsshow1 x0x x05 add yi moveto LAB*add64M i get cvsshow1 x0x x06 add yi moveto LAB*bdd64M i get cvsshow1 x0x x07 add yi moveto LAB*Cdd64M i get cvsshow1 x0x x08 add yi moveto LAB*hdd64M i get cvsshow1 xchart xchart3P2 eq {%xchart=xchart3P2 xax x01 add yi moveto r*dd362Mi i 7.5 mul cvi get cvsshow3r xax x02 add yi moveto g*dd362Mi i 7.5 mul cvi get cvsshow3r xax x03 add yi moveto b*dd362Mi i 7.5 mul cvi get cvsshow3r xax x04 add yi moveto LAB*Ldd362Mi i 7.5 mul cvi get cvsshow1r xax x05 add yi moveto LAB*add362Mi i 7.5 mul cvi get cvsshow1r xax x06 add yi moveto LAB*bdd362Mi i 7.5 mul cvi get cvsshow1r xax x07 add yi moveto LAB*Cdd362Mi i 7.5 mul cvi get cvsshow1r xax x08 add yi moveto hab*dd362Fi i 7.5 mul cvi get cvishow xbx x01 add yi moveto r*ds362Mi i 7.5 mul cvi get cvsshow3r xbx x02 add yi moveto g*ds362Mi i 7.5 mul cvi get cvsshow3r xbx x03 add yi moveto b*ds362Mi i 7.5 mul cvi get cvsshow3r xbx x04 add yi moveto LAB*Lds362Mi i 7.5 mul cvi get cvsshow1r xbx x05 add yi moveto LAB*ads362Mi i 7.5 mul cvi get cvsshow1r xbx x06 add yi moveto LAB*bds362Mi i 7.5 mul cvi get cvsshow1r xbx x07 add yi moveto LAB*Cds362Mi i 7.5 mul cvi get cvsshow1r xbx x08 add yi moveto hab*ds362Mi i 7.5 mul cvi get cvishow } if %xchart=xchart3P2 xcx x01 add yi moveto r*de362Mi i 7.5 mul cvi get cvsshow3r xcx x02 add yi moveto g*de362Mi i 7.5 mul cvi get cvsshow3r xcx x03 add yi moveto b*de362Mi i 7.5 mul cvi get cvsshow3r xcx x04 add yi moveto LAB*Lde362Mi i 7.5 mul cvi get cvsshow1r xcx x05 add yi moveto LAB*ade362Mi i 7.5 mul cvi get cvsshow1r xcx x06 add yi moveto LAB*bde362Mi i 7.5 mul cvi get cvsshow1r xcx x07 add yi moveto LAB*Cde362Mi i 7.5 mul cvi get cvsshow1r xcx x08 add yi moveto hab*de382Fi i 7.5 mul cvi get cvishow xchart xchart3P3 eq {%xchart=xchart3P3 0 1 46 {/kk exch def %kk LAB*hdd64M i get hab*de382Fi kk 7.5 mul cvi get gt LAB*hdd64M i get hab*de382Fi kk 1 add 7.5 mul cvi get le and {/ykkd LAB*hdd64M i get hab*de382Fi kk 7.5 mul cvi get sub hab*de382Fi kk 1 add 7.5 mul cvi get hab*de382Fi kk 7.5 mul cvi get sub 0.0001 add div def /i8 0 def /yi ymax i ydel0 mul sub i8 ydel0 0.4 mul mul sub def /kk8 0 def /ykk ymax kk ykkd add ydel0 mul sub kk8 ydel0 0.4 mul mul sub def xax x01 add yi moveto LAB*hdd64M i get cvsshow1 xbx x08 add 100 sub ykk moveto LAB*hdd64M i get cvsshow1 xax x01 add yi moveto xcx x01 add ykk lineto stroke} if } for %kk } if %xchart=xchart3P3 r*dd362Mi i 7.5 mul cvi get g*dd362Mi i 7.5 mul cvi get b*dd362Mi i 7.5 mul cvi get setrgbcolor xd1 yi ys sub moveto 600 0 rlineto 0 ydel0 rlineto -600 0 rlineto closepath fill r*ds362Mi i 7.5 mul cvi get g*ds362Mi i 7.5 mul cvi get b*ds362Mi i 7.5 mul cvi get setrgbcolor xs1 yi ys sub moveto 600 0 rlineto 0 ydel0 rlineto -600 0 rlineto closepath fill i 16 le { r*de362Mi i 7.5 mul cvi get g*de362Mi i 7.5 mul cvi get b*de362Mi i 7.5 mul cvi get setrgbcolor xe1 yi ys sub moveto 600 0 rlineto 0 ydel0 rlineto -600 0 rlineto closepath fill } if i 16 gt i i 2 idiv 2 mul eq and { r*de362Mi i 7.5 mul cvi get g*de362Mi i 7.5 mul cvi get b*de362Mi i 7.5 mul cvi get setrgbcolor xe1 yi ys sub moveto 600 0 rlineto 0 ydel0 rlineto -600 0 rlineto closepath fill } if 0 setgray xd1 yi ys sub moveto 600 0 rlineto 0 ydel0 rlineto -600 0 rlineto closepath stroke xs1 yi ys sub moveto 600 0 rlineto 0 ydel0 rlineto -600 0 rlineto closepath stroke xe1 yi ys sub moveto 600 0 rlineto 0 ydel0 rlineto -600 0 rlineto closepath stroke } for %i=0,48 xtesthuea 0 ge {600 /TimesB-ISOL1 FS 8000 2100 moveto 30 rotate 0 setgray (no continues hue change of device near ) showea (keine kontinuiertliche Buntton\344nderung nahe ) showde 600 /TimesBI-ISOL1 FS (h) show 500 /TimesB-ISOL1 FS 0 -100 rmoveto (ab,d) show 0 100 rmoveto 600 /TimesB-ISOL1 FS ( = ) show 0 1 xtesthuea {/in exch def %in=0,xtesthuea LAB*hdd64M xtesthuei in get get cvishow in xtesthuea ne {(, ) show} if } for %in=0,xtesthuea -30 rotate 8000 1100 moveto 30 rotate (or ) showea ( oder ) showde 600 /TimesBI-ISOL1 FS (rgb*) show 500 /TimesBI-ISOL1 FS 0 -100 rmoveto (d) show 0 100 rmoveto 600 /TimesB-ISOL1 FS ( = ) show 0 1 xtesthuea {/in exch def %in=0,xtesthuea r*dd64M xtesthuei in get get cvsshow3r (, ) show g*dd64M xtesthuei in get get cvsshow3r (, ) show b*dd64M xtesthuei in get get cvsshow3r in xtesthuea ne {(; ) show} if } for %in=0,xtesthuea -30 rotate 8000 0100 moveto 30 rotate 600 /TimesB-ISOL1 FS (appropriate correction done) showea (plausible Korrektur erfolgt) showde -30 rotate } if }%LOOP4: xchart=xchart3P2/3 {%LOOP4: xchart>xchart3P3 x0x x01 add 50 sub 0 moveto 0 16200 rlineto stroke x1x x01 add 50 sub 0 moveto 0 16200 rlineto stroke x2x x01 add 50 sub 0 moveto 0 16200 rlineto stroke TK1 00 1 45 {/i exch def %i=0,45 /ik45 xchart xchart3P3 1 add sub 45 mul i add def %range 0...359 /yi ymax i ydel1 mul sub def xd0 yi moveto hab*dd362Fi ik45 get cvishow %all integer xs0 yi moveto hab*ds362Mi ik45 get cvishow xe0 yi moveto hab*de382Fi ik45 get cvishow x0x x01 add yi moveto r*dd362Mi ik45 get cvsshow3 x0x x02 add yi moveto g*dd362Mi ik45 get cvsshow3 x0x x03 add yi moveto b*dd362Mi ik45 get cvsshow3 x0x x04 add yi moveto LAB*Ldd362Mi ik45 get cvsshow1 x0x x05 add yi moveto LAB*add362Mi ik45 get cvsshow1 x0x x06 add yi moveto LAB*bdd362Mi ik45 get cvsshow1 x0x x07 add yi moveto LAB*Cdd362Mi ik45 get cvsshow1 x0x x08 add yi moveto LAB*hdd362Mi ik45 get cvishow %integer x1x x01 add yi moveto r*ds362Mi ik45 get cvsshow3r x1x x02 add yi moveto g*ds362Mi ik45 get cvsshow3r x1x x03 add yi moveto b*ds362Mi ik45 get cvsshow3r x1x x04 add yi moveto LAB*Lds362Mi ik45 get cvsshow1r x1x x05 add yi moveto LAB*ads362Mi ik45 get cvsshow1r x1x x06 add yi moveto LAB*bds362Mi ik45 get cvsshow1r x1x x07 add yi moveto LAB*Cds362Mi ik45 get cvsshow1r x1x x08 add yi moveto LAB*hds362Mi ik45 get cvishow x1x x09 add yi moveto r*dd362Mi ik45 get cvsshow3r x1x x10 add yi moveto g*dd362Mi ik45 get cvsshow3r x1x x11 add yi moveto b*dd362Mi ik45 get cvsshow3r x2x x01 add yi moveto r*de362Mi ik45 get cvsshow3r x2x x02 add yi moveto g*de362Mi ik45 get cvsshow3r x2x x03 add yi moveto b*de362Mi ik45 get cvsshow3r x2x x04 add yi moveto LAB*Lde362Mi ik45 get cvsshow1r x2x x05 add yi moveto LAB*ade362Mi ik45 get cvsshow1r x2x x06 add yi moveto LAB*bde362Mi ik45 get cvsshow1r x2x x07 add yi moveto LAB*Cde362Mi ik45 get cvsshow1r x2x x08 add yi moveto LAB*hde362Mi ik45 get cvishow x2x x09 add yi moveto r*dd362Mi ik45 get cvsshow3r x2x x10 add yi moveto g*dd362Mi ik45 get cvsshow3r x2x x11 add yi moveto b*dd362Mi ik45 get cvsshow3r r*dd362Mi ik45 get g*dd362Mi ik45 get b*dd362Mi ik45 get setrgbcolor xd1 yi ys sub moveto 600 0 rlineto 0 ydel0 rlineto -600 0 rlineto closepath fill r*ds362Mi ik45 get g*ds362Mi ik45 get b*ds362Mi ik45 get setrgbcolor xs1 yi ys sub moveto 600 0 rlineto 0 ydel0 rlineto -600 0 rlineto closepath fill r*de362Mi ik45 get g*de362Mi ik45 get b*de362Mi ik45 get setrgbcolor xe1 yi ys sub moveto 600 0 rlineto 0 ydel0 rlineto -600 0 rlineto closepath fill 0 setgray xd1 yi ys sub moveto 600 0 rlineto 0 ydel0 rlineto -600 0 rlineto closepath stroke xs1 yi ys sub moveto 600 0 rlineto 0 ydel0 rlineto -600 0 rlineto closepath stroke xe1 yi ys sub moveto 600 0 rlineto 0 ydel0 rlineto -600 0 rlineto closepath stroke xchart xchart3P3 1 add eq ik45 000 eq and xchart xchart3P3 2 add eq ik45 060 eq and or xchart xchart3P3 3 add eq ik45 120 eq and or xchart xchart3P3 4 add eq ik45 180 eq and or xchart xchart3P3 5 add eq ik45 180 eq and or xchart xchart3P3 6 add eq ik45 240 eq and or xchart xchart3P3 7 add eq ik45 300 eq and or xchart xchart3P3 8 add eq ik45 360 eq and or {/ik 1 def} {/ik 0 def} ifelse ik 1 eq {x1x x01 add yi ydel1 0.7 mul add moveto x2x x11 add 600 add yi ydel1 0.7 mul add lineto stroke x1x x01 add yi ydel1 0.3 mul sub moveto x2x x11 add 600 add yi ydel1 0.3 mul sub lineto stroke} if ik 1 eq {TBIK1 x1x x08 add 400 add yi moveto RJGCBMs xchart xchart3P3 sub get show TBS1 0 -80 rmoveto (s) show 0 80 rmoveto TK1 TBIK1 x2x x08 add 400 add yi moveto RJGCBMs xchart xchart3P3 sub get show TBS1 0 -80 rmoveto (e) show 0 80 rmoveto TK1} if 0 8 48 {/it exch def %it=0,8,48 LAB*hdd64M it get LAB*hdd362Mi ik45 get ge LAB*hdd64M it get LAB*hdd362Mi ik45 1 add get lt and {x0x x01 add yi ydel1 0.3 mul sub moveto x1x x01 add yi ydel1 0.3 mul sub lineto stroke TBIK1 x1x x01 add 400 sub yi moveto RJGCBM it 8 idiv get show TBS1 0 -80 rmoveto (d) show 0 80 rmoveto TK1} if } for %it=0,8,48 } for i%=0,45 } ifelse %END LOOP4: xchart>xchart3P3 } ifelse %END LOOP2: xchart=xchart3P1,>xchart3P1 } if %END LOOPtables: xchart>=xchart3P1 showpage grestore %} for %xcharti=00,10 %} for %colsep=0,1 %} for %pchart=0,0 %} for %xchart=0,18 %} for %xcolor=3,3 %} for %deintp=0,1 %} for %colorm=0,1 %} for %lanind=0,0 %%Trailer %END INCLUDE TEST FILE at line 200 %*************************************** %%EndDocument EndEPSFF grestore gsave } if %xchart<=xchart3P11 %************************************************** xchart xchart3P11 gt {%BEG xchart>xchart3P11 /n00 xchart3P11 1 add def %rgb-LabCh*-tables at pages 3-12 /n01 n00 1 add def %DE*-tables for 1080 colours at pages 13-28 /n02 n00 2 add def xchart n00 eq {/n1 0 def /n2 57 def} if xchart n01 eq {/n1 0 def /n2 53 def} if xchart n02 ge {/n1 xchart n02 sub 81 mul def /n2 n1 80 add def n2 1079 ge {/n2 1079 def} if } if 72 90 translate 0.01 MM dup scale 0 0 0 setrgbcolor 0 0 moveto 24600 0 rlineto 0 17220 rlineto -24600 0 rlineto closepath stroke 240 /Times-ISOL1 FS 0 0 0 setrgbcolor 3600 -180 moveto (DM100-72, ) show lanind 0 eq {(Seite ) show} if lanind 1 ge {(Page ) show} if xchart 1 add cvishow (/) show xchartm cvishow (-F) show %pmetam cvishow /prog_rgb_dyF_LAB*'dyF {%BEG prog_rgb_dyF_LAB*'dyF /R01000 r_dyF 1000 mul def /G01000 g_dyF 1000 mul def /B01000 b_dyF 1000 mul def R01000 0.04045 le %equations of IEC 61966-2-1:2003 {/RsRGB R01000 12.92 div def} {/RsRGB R01000 0.001 mul 0.055 add 1.055 div 2.4 exp def} ifelse G01000 0.04045 le {/GsRGB G01000 12.92 div def} {/GsRGB G01000 0.001 mul 0.055 add 1.055 div 2.4 exp def} ifelse B01000 0.04045 le {/BsRGB B01000 12.92 div def} {/BsRGB B01000 0.001 mul 0.055 add 1.055 div 2.4 exp def} ifelse /X*'dyF 0.4124 RsRGB mul 0.3576 GsRGB mul add 0.1805 BsRGB mul add 88.59 mul def /Y*'dyF 0.2126 RsRGB mul 0.7152 GsRGB mul add 0.0722 BsRGB mul add 88.59 mul def /Z*'dyF 0.0193 RsRGB mul 0.1192 GsRGB mul add 0.9505 BsRGB mul add 88.59 mul def % achromatic (D65) colours /XLWD65100 95.04 def /YLWD65100 100.00 def /ZLWD65100 108.88 def /XQ X*'dyF XLWD65100 div def /YQ Y*'dyF YLWD65100 div def /ZQ Z*'dyF ZLWD65100 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*'dyF YQ 0.008856 lt {903.3 YQ mul} {YQ 0.33333333 exp 116 mul 16 sub} ifelse def /a*'dyF 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*'dyF 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 /C*'dyF a*'dyF dup mul b*'dyF dup mul add 0.0001 add sqrt def /h*'dyF b*'dyF a*'dyF 0.0001 add atan def } bind def %END prog_rgb_dyF_LAB*'dyF %************************************************ /prog_rgb'*dyF_LAB'*dyF {%BEG prog_rgb'*dyF_LAB'*dyF /R01000 r'*dyF 1000 mul def /G01000 g'*dyF 1000 mul def /B01000 b'*dyF 1000 mul def R01000 0.04045 le %equations of IEC 61966-2-1:2003 {/RsRGB R01000 12.92 div def} {/RsRGB R01000 0.001 mul 0.055 add 1.055 div 2.4 exp def} ifelse G01000 0.04045 le {/GsRGB G01000 12.92 div def} {/GsRGB G01000 0.001 mul 0.055 add 1.055 div 2.4 exp def} ifelse B01000 0.04045 le {/BsRGB B01000 12.92 div def} {/BsRGB B01000 0.001 mul 0.055 add 1.055 div 2.4 exp def} ifelse /X'*dyF 0.4124 RsRGB mul 0.3576 GsRGB mul add 0.1805 BsRGB mul add 88.59 mul def /Y'*dyF 0.2126 RsRGB mul 0.7152 GsRGB mul add 0.0722 BsRGB mul add 88.59 mul def /Z'*dyF 0.0193 RsRGB mul 0.1192 GsRGB mul add 0.9505 BsRGB mul add 88.59 mul def % achromatic (D65) colours /XLWD65100 95.04 def /YLWD65100 100.00 def /ZLWD65100 108.88 def /XQ X'*dyF XLWD65100 div def /YQ Y'*dyF YLWD65100 div def /ZQ Z'*dyF ZLWD65100 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'*dyF YQ 0.008856 lt {903.3 YQ mul} {YQ 0.33333333 exp 116 mul 16 sub} ifelse def /a'*dyF 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'*dyF 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 /C'*dyF a'*dyF dup mul b'*dyF dup mul add 0.0001 add sqrt def /h'*dyF b'*dyF a'*dyF 0.0001 add atan def } bind def %END prog_rgb'*dyF_LAB'*dyF %***************************************************** /fakt 1.0 def /fakt2 0.74 def %0.2 /iyt 250 fakt2 mul def %text size /iyd 277 fakt2 mul def %line difference /ixs0 00 fakt2 mul def /ixs1 -10 fakt2 mul def /ixs2 10 fakt2 mul def /iys1 -25 fakt2 mul def /iys2 25 fakt2 mul def /iys3 35 fakt2 mul def /iys4 -35 fakt2 mul def /iytie iyt 50 fakt2 mul sub def /nshow {iyt /Times-ISOL1 FS show} def /kshow {iyt /TimesI-ISOL1 FS show} def /bshow {iyt /TimesB-ISOL1 FS show} def /jshow {iyt /TimesBI-ISOL1 FS show} def /sshow {iyt /Symbol FS show} def /nishow {ixs1 iys1 rmoveto iytie /Times-ISOL1 FS show ixs2 iys2 rmoveto} def /nishow0 { 00 iys1 rmoveto iytie /Times-ISOL1 FS show 00 iys2 rmoveto} def /neshow {ixs1 iys3 rmoveto iytie /Times-ISOL1 FS show ixs2 iys4 rmoveto} def /neshow0 { 00 iys3 rmoveto iytie /Times-ISOL1 FS show 00 iys4 rmoveto} def /ishow {ixs1 iys1 rmoveto iytie /TimesB-ISOL1 FS show ixs2 iys2 rmoveto} def /ishow0 { 00 iys1 rmoveto iytie /TimesB-ISOL1 FS show 00 iys2 rmoveto} def /eshow { 00 iys3 rmoveto iytie /TimesB-ISOL1 FS show 00 iys4 rmoveto} def 0 0 0 setrgbcolor /imaxym 17220 def /iymax 16700 def /imaxy0 17000 def colorm 0 eq deintp 0 eq and {/Txx (d) def} if %colorm=0, deintp=0 colorm 0 eq deintp 1 eq and {/Txx (e) def} if %colorm=0, deintp=1 colorm 1 eq deintp 0 eq and {/Txx (dd) def} if %colorm=1, deintp=0 colorm 1 eq deintp 1 eq and {/Txx (de) def} if %colorm=1, deintp=1 xchart 0 eq {/Txx (d) def} if %always independent of intended output /RGB58M1_F 174 array def %58x3=174 /RGB58M1_F [%rgb data of 48+1 step colour circle + 9 step gray series = 58 1.000 0.000 0.000 %00 R00Y %R 1.000 0.125 0.000 %01 R13Y 1.000 0.250 0.000 %02 R25Y 1.000 0.375 0.000 %03 R38Y 1.000 0.500 0.000 %04 R50Y 1.000 0.625 0.000 %05 R63Y 1.000 0.750 0.000 %06 R75Y 1.000 0.875 0.000 %07 R88Y 1.000 1.000 0.000 %08 Y00G %Y 0.875 1.000 0.000 %09 Y13G 0.750 1.000 0.000 %10 Y25G 0.625 1.000 0.000 %11 Y38G 0.500 1.000 0.000 %12 Y50G 0.375 1.000 0.000 %13 Y63G 0.250 1.000 0.000 %14 Y75G 0.125 1.000 0.000 %15 Y88G 0.000 1.000 0.000 %16 G00C %G 0.000 1.000 0.125 %17 G13C 0.000 1.000 0.250 %18 G25C 0.000 1.000 0.375 %19 G38C 0.000 1.000 0.500 %20 G50C 0.000 1.000 0.625 %21 G63C 0.000 1.000 0.750 %22 G75C 0.000 1.000 0.875 %23 G88C 0.000 1.000 1.000 %24 C00B %C 0.000 0.875 1.000 %25 C13B 0.000 0.750 1.000 %26 C25B 0.000 0.625 1.000 %27 C38B 0.000 0.500 1.000 %28 C50B 0.000 0.375 1.000 %29 C63B 0.000 0.250 1.000 %30 C75B 0.000 0.125 1.000 %31 C88B 0.000 0.000 1.000 %32 B00M %B 0.125 0.000 1.000 %33 B13M 0.250 0.000 1.000 %34 B25M 0.375 0.000 1.000 %35 B38M 0.500 0.000 1.000 %36 B50M 0.625 0.000 1.000 %37 B63M 0.750 0.000 1.000 %38 B75M 0.875 0.000 1.000 %39 B88M 1.000 0.000 1.000 %40 M00R %M 1.000 0.000 0.875 %41 M13R 1.000 0.000 0.750 %42 M25R 1.000 0.000 0.625 %43 M38R 1.000 0.000 0.500 %44 M50R 1.000 0.000 0.375 %45 M63R 1.000 0.000 0.250 %46 M75R 1.000 0.000 0.125 %47 M88R 1.000 0.000 0.000 %48 R00Y %R 0.000 0.000 0.000 %49 N00Wd %ncolors 0.125 0.125 0.125 %50 N13Wd 0.250 0.250 0.250 %51 N25Md 0.375 0.375 0.375 %52 N38Wd 0.500 0.500 0.500 %53 N50Wd 0.625 0.625 0.625 %54 N63Wd 0.750 0.750 0.750 %55 N75Wd 0.875 0.875 0.875 %56 N88Wd 1.000 1.000 1.000 %57 W00Nd = W ] def /RGB58M1t_F 58 array def %48+1 step colour circle and 9 step grey steps = 58 /RGB58M1t_F [%high chromatic series: %relative hue h*, brillance i*, and chroma c* %range 0 ... 100 (R00Y_100_100) (R13Y_100_100) (R25Y_100_100) (R38Y_100_100) (R50Y_100_100) (R63Y_100_100) (R75Y_100_100) (R88Y_100_100) (Y00G_100_100) (Y13G_100_100) (Y25G_100_100) (Y38G_100_100) (Y50G_100_100) (Y63G_100_100) (Y75G_100_100) (Y88G_100_100) (G00C_100_100) (G13C_100_100) (G25C_100_100) (G38C_100_100) (G50C_100_100) (G63C_100_100) (G75C_100_100) (G88C_100_100) (C00B_100_100) (C13B_100_100) (C25B_100_100) (C38B_100_100) (C50B_100_100) (C63B_100_100) (C75B_100_100) (C88B_100_100) (B00M_100_100) (B13M_100_100) (B25M_100_100) (B38M_100_100) (B50M_100_100) (B63M_100_100) (B75M_100_100) (B88M_100_100) (M00R_100_100) (M13R_100_100) (M25R_100_100) (M38R_100_100) (M50R_100_100) (M63R_100_100) (M75R_100_100) (M88R_100_100) (R00Y_100_100) %gray series (NW_000) (NW_013) (NW_025) (NW_038) (NW_050) (NW_063) (NW_075) (NW_088) (NW_100) ] def /RGB54CR_F 162 array def %54x3=162 /RGB54CR_F [%54 colours of colour rendering (CR) test chart 1.000 0.000 0.000 %01 R00Yd %RGB54CR 1.000 0.250 0.000 %02 R25Yd 1.000 0.500 0.000 %03 R50Yd 1.000 0.750 0.000 %04 R75Yd 1.000 1.000 0.000 %05 Y00Gd 0.750 1.000 0.000 %06 Y25Gd 0.500 1.000 0.000 %07 Y50Gd 0.250 1.000 0.000 %08 Y75Gd 0.000 1.000 0.000 %09 G00Bd = 10 0.000 1.000 0.000 %10 G00Bd 0.000 1.000 0.500 %11 G25Bd 0.000 1.000 1.000 %12 G50Bd 0.000 0.500 1.000 %13 G75Bd 0.000 0.000 1.000 %14 B00Rd 0.500 0.000 1.000 %15 B25Rd 1.000 0.000 1.000 %16 B50Rd 1.000 0.000 0.500 %17 B75Rd 1.000 0.000 0.000 %18 R00Yd = 01 1.000 0.500 0.500 %19 R00Yd %lcolors 1.000 0.750 0.500 %20 R50Yd 1.000 1.000 0.500 %21 Y00Gd 0.750 1.000 0.500 %22 Y50Gd 0.500 1.000 0.500 %23 G00Bd 0.500 1.000 1.000 %24 G50Bd 0.500 0.500 1.000 %25 B00Rd 1.000 0.500 1.000 %26 B50Rd 1.000 0.500 0.500 %27 R00Yd = 19 0.750 0.250 0.250 %28 R00Yd %zcolors 0.750 0.500 0.250 %29 R50Yd 0.750 0.750 0.250 %30 Y00Gd 0.500 0.750 0.250 %31 Y50Gd 0.250 0.750 0.250 %32 G00Bd 0.250 0.750 0.750 %33 G50Bd 0.250 0.250 0.750 %34 B00Rd 0.750 0.250 0.750 %35 B50Rd 0.750 0.250 0.250 %36 R00Yd = 28 0.500 0.000 0.000 %37 R00Yd %dcolors 0.500 0.250 0.000 %38 R50Yd 0.500 0.500 0.000 %38 Y00Gd 0.250 0.500 0.000 %40 Y50Gd 0.000 0.500 0.000 %41 G00Bd 0.000 0.500 0.500 %42 G50Bd 0.000 0.000 0.500 %43 B00Rd 0.500 0.000 0.500 %44 B50Rd 0.500 0.000 0.000 %45 R00Yd = 37 0.000 0.000 0.000 %46 N00Wd %ncolors 0.125 0.125 0.125 %47 N13Wd 0.250 0.250 0.250 %48 N25Md 0.375 0.375 0.375 %49 N38Wd 0.500 0.500 0.500 %50 N50Wd 0.625 0.625 0.625 %51 N63Wd 0.750 0.750 0.750 %52 N75Wd 0.875 0.875 0.875 %53 N88Wd 1.000 1.000 1.000 %54 W00Nd = W ] def %54 colours of colour rendering test chart /RGB54CRt_F 54 array def /RGB54CRt_F [%high chromatic series: %relative hue h*, brillance i*, and chroma c*, range 0 ... 100 (R00Y_100_100) (R25Y_100_100) (R50Y_100_100) (R75Y_100_100) (Y00G_100_100) (Y25G_100_100) (Y50G_100_100) (Y75G_100_100) (G00B_100_100) (G00B_100_100) (G25B_100_100) (G50B_100_100) (G75B_100_100) (B00M_100_100) (B25R_100_100) (B50R_100_100) (B75R_100_100) (R00Y_100_100) %whitetish series (R00Y_100_050) (R50Y_100_050) (Y00G_100_050) (Y50G_100_050) (G00B_100_050) (G50B_100_050) (B00R_100_050) (B50R_100_050) (R00Y_100_050) %grayish series (R00Y_075_050) (R50Y_075_050) (Y00G_075_050) (Y50G_075_050) (G00B_075_050) (G50B_075_050) (B00R_075_050) (B50R_075_050) (R00Y_075_050) %blackish series (R00Y_050_050) (R50Y_050_050) (Y00G_050_050) (Y50G_050_050) (G00B_050_050) (G50B_050_050) (B00R_050_050) (B50R_050_050) (R00Y_050_050) %gray series (NW_000) (NW_013) (NW_025) (NW_038) (NW_050) (NW_063) (NW_075) (NW_088) (NW_100) ] def /jCRi 54 array def /jCRi %jCRi [ 648 %R00Y_100_100 1.00 0.00 0.00 01 %chromatic 16 step hue 666 %R25Y_100_100 1.00 0.25 0.00 02 684 %R50Y_100_100 1.00 0.50 0.00 03 702 %R75Y_100_100 1.00 0.75 0.00 04 720 %Y00G_100_100 1.00 1.00 0.00 05 558 %Y25G_100_100 0.75 1.00 0.00 06 396 %Y50G_100_100 0.50 1.00 0.00 07 234 %Y75G_100_100 0.25 1.00 0.00 08 072 %G00B_100_100 0.00 1.00 0.00 09=10 072 %G00B_100_100 0.00 1.00 0.00 10 %chromatic 16 step hue 076 %G25B_100_100 0.00 1.00 0.50 11 080 %G50B_100_100 0.00 1.00 1.00 12 044 %G75B_100_100 0.00 0.50 1.00 13 008 %B00R_100_100 0.00 0.00 1.00 14 332 %B25R_100_100 0.50 0.00 1.00 15 656 %B50R_100_100 1.00 0.00 1.00 16 652 %B75R_100_100 1.00 0.00 0.50 17 648 %R00Y_100_100 1.00 0.00 0.00 18=01 688 %R00Y_100_050 1.00 0.50 0.50 19 %whitish 8 step hue 706 %R50Y_100_050 1.00 0.75 0.50 20 724 %Y00G_100_050 1.00 1.00 0.50 21 562 %Y50G_100_050 0.75 1.00 0.50 22 400 %G00B_100_050 0.50 1.00 0.50 23 404 %G50B_100_050 0.50 1.00 1.00 24 368 %B00R_100_050 0.50 0.50 1.00 25 692 %B50R_100_050 1.00 0.50 1.00 26 688 %R00Y_100_050 1.00 0.50 0.50 27=19 506 %R00Y_075_050 0.75 0.25 0.25 28 %greyish 8 step hue 524 %R50Y_075_050 0.75 0.50 0.25 29 542 %Y00G_075_050 0.75 0.75 0.25 30 380 %Y50G_075_050 0.50 0.75 0.25 31 218 %G00B_075_050 0.25 0.75 0.25 32 222 %G50B_075_050 0.25 0.75 0.75 33 186 %B00R_075_050 0.25 0.25 0.75 34 510 %B50R_075_050 0.75 0.25 0.75 35 506 %R00Y_075_050 0.75 0.25 0.25 36=28 324 %R00Y_050_050 0.50 0.00 0.00 37 %blackish 8 step hue 342 %R50Y_050_050 0.50 0.25 0.00 38 360 %Y00G_050_050 0.50 0.50 0.00 39 198 %Y50G_050_050 0.25 0.50 0.00 40 036 %G00B_050_050 0.00 0.50 0.00 41 040 %G50B_050_050 0.00 0.50 0.50 42 004 %B00R_050_050 0.00 0.00 0.50 43 328 %B50R_050_050 0.50 0.00 0.50 44 324 %R00Y_050_050 0.50 0.00 0.00 45=37 000 %NW_000 0.000 0.000 0.000 46 %grey 9 steps 091 %NW_013 0.125 0.125 0.125 47 182 %NW_025 0.250 0.250 0.250 48 273 %NW_038 0.375 0.375 0.375 49 364 %NW_050 0.500 0.500 0.500 50 455 %NW_063 0.625 0.625 0.625 51 546 %NW_075 0.750 0.750 0.750 52 637 %NW_088 0.875 0.875 0.875 53 728 %NW_100 1.000 1.000 1.000 54 ] def %END jCRi /SUMDE*' 0 def /SUMDE'* 0 def n1 1 n2 {/n exch def %n=n1,n2 /n30 n 3 mul def /n31 n30 1 add def /n32 n30 2 add def xchart n00 eq {%48+1=49 step colour circle + 9 gray steps=58 steps /hcolort RGB58M1t_F n get def RGB58M1_F n30 get %real RGB58M1_F n31 get RGB58M1_F n32 get } if %48 step colour circle xchart n01 eq {%45 colour rendering (CR) + 9 grey steps = 54 steps /hcolort RGB54CRt_F n get def RGB54CR_F n30 get %real RGB54CR_F n31 get RGB54CR_F n32 get } if %54 colour rendering colours xchart n02 ge {%1080 standard colours /r_RGBF RGB0_F n30 get 1000 div def /g_RGBF RGB0_F n31 get 1000 div def /b_RGBF RGB0_F n32 get 1000 div def /hsiRGBF r_RGBF 030 sin mul g_RGBF 150 sin mul add b_RGBF 270 sin mul add %y_e r_RGBF 030 cos mul g_RGBF 150 cos mul add %x_e 0.0001 add atan 0.5 add cvi def %range 0..360 hsiRGBF 30 lt {/hsiRGBF hsiRGBF 30 add def} if %range 30..390 hsiRGBF 030 ge hsiRGBF 090 le and {/u_100 hsiRGBF 030 sub 060 div 100 mul def /u1_RGYB (R) def /u2_RGYB (Y) def} if hsiRGBF 090 ge hsiRGBF 150 le and {/u_100 hsiRGBF 090 sub 060 div 100 mul def /u1_RGYB (Y) def /u2_RGYB (G) def} if hsiRGBF 150 ge hsiRGBF 270 le and {/u_100 hsiRGBF 150 sub 120 div 100 mul def /u1_RGYB (G) def /u2_RGYB (B) def} if hsiRGBF 270 ge hsiRGBF 390 le and {/u_100 hsiRGBF 270 sub 120 div 100 mul def /u1_RGYB (B) def /u2_RGYB (R) def} if %calculation of i_RGBF, c_RGBF, and t_RGBF /maxd r_RGBF def g_RGBF maxd gt {/maxd g_RGBF def} if b_RGBF maxd gt {/maxd b_RGBF def} if /mind r_RGBF def g_RGBF mind lt {/mind g_RGBF def} if b_RGBF mind lt {/mind b_RGBF def} if /I_RGBF maxd 100 mul def /C_RGBF maxd mind sub 100 mul def /T_RGBF I_RGBF C_RGBF 0.5 mul sub def r_RGBF g_RGBF b_RGBF %for setrgbcolor } if %1080 standard colours setrgbcolor %default to create data %setrgbcolor calculates data for output in "FF_LM_de_setrgbcolor_F" %colorm=0 calculates: rgb_dyF, rgb*dyF, LAB*dyF, ,cmyk*dyF and more %colorm=1 calculates: rgb_dyF, rgb*dyF, LAB*dyF', rgb'*dyF, cmyk*dyF and more /r_xF r_dyF def /g_xF g_dyF def /b_xF b_dyF def /i_xF i_dyF def /c_xF c_dyF def /t_xF t_dyF def /r*xF r*dyF def /g*xF g*dyF def /b*xF b*dyF def /LAB*LxF LAB*LdyF def /LAB*axF LAB*adyF def /LAB*bxF LAB*bdyF def /LAB*CxF LAB*adyF dup mul LAB*bdyF dup mul add 0.0001 add sqrt def /LAB*hxF LAB*bdyF LAB*adyF 0.0001 add atan def colorm 0 eq {%colorm=0 %prog_rgb_dyF_LAB*'dyF uses rgb_dyF by default %calculates output data according to IEC 61966-2-1 prog_rgb_dyF_LAB*'dyF /LAB*'LxF L*'dyF def /LAB*'axF a*'dyF def /LAB*'bxF b*'dyF def /LAB*'CxF C*'dyF def /LAB*'hxF h*'dyF def /DE*' LAB*'LxF LAB*LxF sub dup mul LAB*'axF LAB*axF sub dup mul add LAB*'bxF LAB*bxF sub dup mul add 0.0001 add sqrt def /SUMDE*' SUMDE*' DE*' add def } if %colorm=0 colorm 1 eq {%colorm=1 /r'*xF r'*dyF def /g'*xF g'*dyF def /b'*xF b'*dyF def %calculates output data according to IEC 61966-2-1 prog_rgb'*dyF_LAB'*dyF /LAB'*LxF L'*dyF def /LAB'*axF a'*dyF def /LAB'*bxF b'*dyF def /LAB'*CxF C'*dyF def /LAB'*hxF h'*dyF def /DE'* LAB'*LxF LAB*LxF sub dup mul LAB'*axF LAB*axF sub dup mul add LAB'*bxF LAB*bxF sub dup mul add 0.0001 add sqrt def /SUMDE'* SUMDE'* DE'* add def } if %colorm=1 /hsi_xF hsiF def % /c4*F c4*Fa def % /m4*F m4*Fa def % /y4*F y4*Fa def % /n4*F n4*Fa def /r*xM r*dyM def /g*xM g*dyM def /b*xM b*dyM def /LAB*LxM LAB*LdyM def /LAB*axM LAB*adyM def /LAB*bxM LAB*bdyM def /LAB*CxM LAB*adyM dup mul LAB*bdyM dup mul add 0.0001 add sqrt def /LAB*hxM LAB*bdyM LAB*adyM 0.0001 add atan def /hsi_xM hsiM def 0 setgray xchart n00 eq {/nx n 8 idiv def n 49 ge {/nx nx 1 add def} if n 56 ge {/nx nx 1 sub def} if } if xchart n01 eq {/nx n 9 idiv def} if xchart n02 ge {/nx 0 def} if /iydn iymax n n1 sub nx add iyd mul sub def n n1 eq {%n=n1 00050 imaxy0 moveto (n) jshow xchart n00 eq {(/j) show} if xchart n01 eq {(/j) show} if xchart n02 eq {(=j) show} if 00700 imaxy0 moveto (HIC*) bshow (F) ishow0 Txx ishow0 02300 imaxy0 moveto (rgb) jshow (_F) ishow0 Txx ishow0 04200 imaxy0 moveto (ict) jshow (_F) ishow0 Txx ishow0 06100 imaxy0 moveto (h) jshow (si_F,) ishow0 Txx ishow0 06700 imaxym moveto 0 imaxym neg rlineto stroke 06800 imaxy0 moveto (rgb*) jshow (F) ishow0 Txx ishow0 08700 imaxy0 moveto (LabCh*) jshow (F) ishow0 Txx ishow0 12100 imaxym moveto 0 imaxym neg rlineto stroke colorm 0 eq {%colorm=1 12200 imaxy0 moveto (rgb*') jshow (F) ishow0 Txx ishow0 14100 imaxy0 moveto (LabCh*') jshow (F) ishow0 Txx ishow0 17600 imaxy0 moveto (DE*') jshow (F) ishow0 Txx ishow0 } if %colorm=0 colorm 1 eq {%colorm=1 12200 imaxy0 moveto (rgb'*) jshow (F) ishow0 Txx ishow0 14100 imaxy0 moveto (LabCh'*) jshow (F) ishow0 Txx ishow0 17600 imaxy0 moveto (DE'*) jshow (F) ishow0 Txx ishow0 } if %colorm=1 % 15100 imaxy0 moveto (cmyn*) jshow (sep,) ishow0 % (F) ishow0 Txx ishow0 18300 imaxy0 moveto (h) jshow (siM,) ishow0 Txx ishow0 18900 imaxym moveto 0 imaxym neg rlineto stroke 19000 imaxy0 moveto (rgb*) jshow (M) ishow0 Txx ishow0 20900 imaxy0 moveto (LabCh*) jshow (M) ishow0 Txx ishow0 () nshow } if %n=n1 00050 iydn moveto n cvishow xchart n00 eq {%xchart=n00 n 48 le {%n<=48 (/) show M1jx n get cvishow }%n<=48 {%n>48 (/) show jCRi n 4 sub get cvishow } ifelse } if %xchart=n00 xchart n01 eq {(/) show jCRi n get cvishow} if 00700 iydn moveto xchart n01 le {hcolort show Txx ishow0 () nshow} if xchart n02 ge {%xchart>n02 C_RGBF 0 eq {%ifelse achromatic (NW) show (_) show I_RGBF cvi 9 le {(00) show} if %filling cero I_RGBF cvi 9 gt I_RGBF cvi 99 le and {(0) show } if %range 0..100 I_RGBF cvi 6 string cvs show }%ifelse achromatic {%ifelse chromatic u1_RGYB show %filling cero range 0..99 u_100 cvi 9 le {(0) show} if %filling cero u_100 cvi cvi 6 string cvs show u2_RGYB show (_) show I_RGBF cvi 9 le {(00) show} if %filling cero I_RGBF cvi 9 gt I_RGBF cvi 99 le and {(0) show } if %range 0..100 I_RGBF cvi 6 string cvs show (_) show C_RGBF 9 le {(00) show} if %filling cero C_RGBF cvi 9 gt C_RGBF cvi 99 le and {(0) show } if %range 0..100 C_RGBF cvi 6 string cvs show } ifelse %ifelse chromatic Txx ishow0 () nshow } if %xchart>n02 02300 iydn moveto r_xF cvsshow3 02900 iydn moveto g_xF cvsshow3 03500 iydn moveto b_xF cvsshow3 04200 iydn moveto i_xF cvsshow3 04800 iydn moveto c_xF cvsshow3 05400 iydn moveto t_xF cvsshow3 06100 iydn moveto hsi_xF cvishow 06800 iydn moveto r*xF cvsshow3 07400 iydn moveto g*xF cvsshow3 08000 iydn moveto b*xF cvsshow3 08700 iydn moveto LAB*LxF cvsshow1 09400 iydn moveto LAB*axF cvsshow1 10100 iydn moveto LAB*bxF cvsshow1 10800 iydn moveto LAB*CxF cvsshow1 11500 iydn moveto LAB*hxF cvsshow1 colorm 0 eq {%colorm=0 12200 iydn moveto r_xF cvsshow3 12800 iydn moveto g_xF cvsshow3 13400 iydn moveto b_xF cvsshow3 14100 iydn moveto LAB*'LxF cvsshow1 14800 iydn moveto LAB*'axF cvsshow1 15500 iydn moveto LAB*'bxF cvsshow1 16200 iydn moveto LAB*'CxF cvsshow1 16900 iydn moveto LAB*'hxF cvsshow1 17600 iydn moveto DE*' cvsshow1 } if %colorm=0 colorm 1 eq {%colorm=1 12200 iydn moveto r'*xF cvsshow3 12800 iydn moveto g'*xF cvsshow3 13400 iydn moveto b'*xF cvsshow3 14100 iydn moveto LAB'*LxF cvsshow1 14800 iydn moveto LAB'*axF cvsshow1 15500 iydn moveto LAB'*bxF cvsshow1 16200 iydn moveto LAB'*CxF cvsshow1 16900 iydn moveto LAB'*hxF cvsshow1 17600 iydn moveto DE'* cvsshow1 } if %colorm=1 18300 iydn moveto hsi_xM cvishow 19000 iydn moveto r*xM cvsshow3 19600 iydn moveto g*xM cvsshow3 20200 iydn moveto b*xM cvsshow3 20900 iydn moveto LAB*LxM cvsshow1 21600 iydn moveto LAB*axM cvsshow1 22300 iydn moveto LAB*bxM cvsshow1 23000 iydn moveto LAB*CxM cvsshow1 23700 iydn moveto LAB*hxM cvsshow1 } for %n=n1,n2 n2 57 eq n2 53 eq or n2 80 ge n2 1079 lt and or n2 1079 eq or {%n2=57,53,80,161,...,1052,1079 /iydn iymax n 1 add n1 sub nx add iyd mul sub def 12500 iydn moveto lanind 1 eq {(Mean color difference of this page:) bshow} if lanind 0 eq {(Mitttlere Farbdifferenz dieser Seite: ) bshow} if 16600 iydn moveto (delta ) bshow colorm 0 eq {(E*' =) jshow} {(E'* =) jshow} ifelse () bshow colorm 0 eq {%colorm=0 17600 iydn moveto SUMDE*' n2 n1 sub 1 add div cvsshow1 }%colorm=0 {%colorm=1 17600 iydn moveto SUMDE'* n2 n1 sub 1 add div cvsshow1 } ifelse %colorm=1 } if %n2=57,53,80,161, ...,1052,1079 } if %END xchart>xchart3P11 %***************************************************** %} for %pmetamf=0,1 showpage grestore %} for %colsepf=0,1 %} for %pchartf=0,0 %} for %xchartf=0,15 %} for %xcolorf=3,3 %} for %deintpf=0,1 %} for %colormf=0,1 %} for %lanindf=0,0 %%Trailer