4IBM )op >> FastCopy III << by Martin Backschat, Bergstr.16, 8071 Hepberg, West-Germany, Tel. 08456/5495 -- It's Freeware! -- (Greetings to all 'Masters Of Puppets')'O`  @`! #@%`')+-/1 3@5`79;=?A C@E`GIKMOQ S@U`Y[]a c@e`gikmoq s@uwy{} @` @ ` @ ` @ ` @ ` ǀ ɠ o ׀ @o/@!Aa  !Aa!!#A%a')+-/1!3A5a79;=?A!CAEaGIKMOQ!SAUaWY[]_a!cAeagikmoq%y{}!Aa!Aa!Aa!Aa!Aaǁɡ!Aaׁ١!Aa!Aa " B b  !"!B!b!!!!!"!""#B"%b"'")"+"-"/#1"#3B#5b#7#9#;#=#?$A"$CB$Eb$G$I$K$M$OQ"%SB%Ub%W%Y%[%]%_&a"&cB&eb&g&i&k&m&o'q"'sB'ub'w'y'{'}'("(B(b((((()")B)b))))O`  @`! #@%`')+-/1 3@5`79;=?A C@E`GIKMOQ S@U`Y[]a c@e`gikmoq s@uwy{} @` @ ` @ ` @ ` @ ` ǀ ɠ o ׀ @o/@!Aa  !Aa!!#A%a')+-/1!3A5a79;=?A!CAEaGIKMOQ!SAUaWY[]_a!cAeagikmoq%y{}!Aa!Aa!Aa!Aa!Aaǁɡ!Aaׁ١!Aa!Aa " B b  !"!B!b!!!!!"!""#B"%b"'")"+"-"/#1"#3B#5b#7#9#;#=#?$A"$CB$Eb$G$I$K$M$OQ"%SB%Ub%W%Y%[%]%_&a"&cB&eb&g&i&k&m&o'q"'sB'ub'w'y'{'}'("(B(b((((()")B)b))))A657 xINFO IMGZ PRINTER FNTa  SCREEN FNT{ ALFA__T0TXT irmAZERTY KEY 2sDESKTOP INF cLtQWERTY KEY 2uTEST TXT rvsM2FONT KEY CwM2FONT PI3 'gx"}M2FONT14PRG r+COMMANDOTXT OLEES_MIJTXT "M2FONT_1LAY tlM2FONT_1TXT t LEES DIT y3. [ .. VALIGN IMG KqaLROFFSETIMG x tt 2@222&?|~;?;?|$88;À??8-888;??8qu,?88;???| U-888???8rw,|88;;;;ù8-8?|;~;~;?|tq22"|'ȑ< C|qx>|$"d @ DH"!"D@BÈ"8C>!>DxA H"$ `@" "D@@@ LJ'ȏx 'Ϗ"pC"x0|C22/a/a/aUUa`>ǀ<B$@"@B'>8B$"?A"x"0xx,x00 x1UUUU}UUU}UUUUUUUT  08 8 0|  xx0|   |      8xO<8y  ? DB"D  ?|qB<|q   D "D   DB8 ~ "~"x    <~  ~  ~ ~< ~< ~>< ?~x >~x ~~x |~? 8?  |~<8?  ~p?  ~ p  <~?  <~ ?  <  x  x0 0 `>| x|x 8   ? (|xUUU_U_WUUWUUWUUUP    |xx 8 p | >p  < x  x?     xȟxp D D Dx8 D D xȄx   ? xx ?  0 0  x1UUUUT 0 0+xx0 2%xq㈀<8y& D@M"D%x@J<|q% D@H"D %xp@?>? @>?@>?>?@>? |~>?@@>>@@>~|@|@~ @ @@x@@@  >@|@?>@@???@ @ _OWP@@@<@x<|@x@xx@x8#q8'q>8@O0@O0p@?@?>? ? @? @? ?@@WUU@WUU@ @@@@ | "@ "xA "@A @D D <8y @" @<P (P &8y  UUUU*. b  .. LM2SN06MFNT  J5LM2CA11MFNT LM2SN09MFNT >`LM2GI05VFNT WLM2GI06VFNT _*LM2GI07VFNT |j/LM2GI08VFNT kvDLM2GI09VFNT K4HLM2GI10MFNT :|ZLM2SN10VFNT ؕM2CA08MFNT q(NM2CA15MFNT J M2CA21BFNT ܩGoM2CA30CFNT P2SM2SN06M 0494Laser 300x300  XX> 0@P`p 0@P`p 0@P`p 0@P`p 0@P`p 0@P`p 0@P`p 0@P`p 0@P`p  0 @ P ` p  0 @ P ` p  0 @ P ` p  0 @ P ` p  0 @ P ` p  0@P`p  ppp <  ppp???<0p`ppqss<<0`<<< `  ``` ` 1<~f?<?8~~0`<888? ???1<~?8f?<p?<x8x<p0ppxppppsww?81<?<<fo` ooooo0p<800s<8p??<8pf18 ppx08ppxxxxa`0 xyyx<? 0`` ooo` oo?px<<xx~ppx`p<x<xxx<<<<<<<<<<<<<<xxp<8<8<8xxx<88888xx?xxxxgxxxxxxxxxxxxxxxxxxxxxxxx<88~xpxxxyx<`xxxx0 ff<8xxx88x<88q<pxxx8xx~88p||xpxxx<8x<8?x<xp8x<xx<|<<x<xxp<<<<<<<<<<<<<xxxp<8<8<8<<<<<8?pxxHfp%<Sjt~ .Lj%F_"9Ss-AUi "9FSjw(?Vw ' E \ p   . = ^    4 K s  * > M d {  - : D b /Pq.L`z ,Mj"CZn ;Ym8Vj(dJh0DXv>8|>pp0|xxq0p8p>>;?0`cc8 `>>;x 80?0`0  >> `>?>`ppp80>><  @@@xpp<8p0<@@`  p8?|px``<0 ?| ~ ?|p0`x |p|0<?xp>|>??8 ????p x@pp?8|  00||À<0?o0~? 0?`|??0>0~?x9?x?>3>x|>< ? 0x><8~p?>00g|`0?|>8`p?~`>pÀ>ppxx>>||>|8>?x8 >8800x>a>8|> ~0><| s>``?8>y<|88|x|x<>>>8 ?`8?x?|<<>?>0||>|p>??<0 >p80px>8a9>|> ?0>p||8 a >``x<<~s| <|px<|||>>>|>?`x80À<<p>|8<|>|>?7|<  p|08pp xpp30 8` 30 0<|<0 xxx <ax> ?p<||>||x8>>>p??`<p0?pxÀppp<  >>?>||>|>?3<|x  8 ||p<<|`x @?``00? 30|<  x x?y?x>> ?<8>>`0x8Àppp87 >?>~ |>|>3|>|  8 >>`xx~`x> @  ? 30@|<@  ?xxx?~ |?|88p8#|``| `||>>>>?<8><c1LJUUUUx88 ppÀx8xg<>o>> |>|>o1x><  0>><>x<o7 ?0|| s||{<<  <x88p8|`||x<>>>?<8~`|g1džx88ppÀx8x<~o>|>|>0>>  |p>x|@o7 >0||?  ||{  >yppxp| > ||>|>>>>??<8x?`|f`31LJUUUUpx~8 8xxǀ?x<g>@|>|>π0~>> |`? <x|@??g3, 30||?  88~π<8  > pp0 |> π| |>|>@>>>??<x8x`|f`31LJxxx8px?x8xx>@|>|8>π0~> >8>?>?>~?xxc 30||>  ~??8 1pp|| 8<| |<<>>>>?<<8ǀ8`|f`31LJx??? <pp?< >? |>|p>0?|> >0~xx>?x?8>~8x?a s?>|;<|<~>  ~<<xpπ8x0|>ypqp| 0<>|`||>>>>>~?<<88|f`31dž0x?<pÀpp>|>|>0|> ?p?|`?<x?p>x0||p ` 8 08|s>|8>px }|xx>>p`0|>?ppp||p|8|8||>>>>>?}>0>? ;p<0x<x p< <ppx<<xx 08p|>|?< x<p`|0>>ppp<|`|x0||>>>>>???<~88Ϟ<f`31Àqdž0xp?0< 80?>>~0> 9`<pxx<|xx<`0|<<À|8À|<x||< 0xxx<`|p>>|88pp<||pp||>>@>>>??<?8x<8>>g`1!dž0xp?8 ?p><8?0<>>>~0> |1<`xx<<|<x<`p88|<<8|0||8?8p| < 0xxx<0À?>`>~88pp<||` |8||>>?@>>>??<?8? >|>|>?0> |q À8xx<><8~08?|@ 8p|8< `xpÀo< >`>?x>>>>?>?<88 |`0`1dž0xpx8?|<0p`<x>@>|>|~>?0> |pǀ8xx<<8?x8p??xx< 0xx||8<?`xx?ǀπ >p}<|| |`||>>>>><?<8~ <`p|<<À>@>|>|?>0> >ǀxpx<<||| ||>>>>>|?<8x<8 `0`1dž0x~>?<> xp>xx>>|>|>0 >yǀǀxpx<?| |<<>>>?<8<8`0`1LJx?8?x<< >>>|>|>0>|~ }ǀxx< 0xx|x|p<'x`><|<>0|||>|>?>>>?<8x8p`0`1LJxx?8~0x<;>>>|>|>0>~~ }?ǀxxπ< 0xx|x|p<x8>~<| <>p8|||>|>??>>>????<8x8p`0`1LJxx~`xx>>>|>|>0?x<?> ?>x@x<8x?>x><<|x'  0xx<x><0x<<<p8x8<?<|>|@`|0>||x< >>>>?9<8<ǀ?c`0`1LJxx? p|px>~>|>|>0||> ?8||@>x<8|@<x>88<G|'  0<px<p><`xxx8`x0|<|<x@`|0>|||> |?<8x<8cg`1LJ`p88>||>|>|>0<x>p<<x`x<8|@zxx xx><C8 0<px>p?<`xx80x?<|8<x0x|p>|0|x< ?8<86 cg` 1LJ8 ppp xx0>| >|>|~>0><<<|x<8p<`~ x xx? > 0 0>|<><|ppxxxx> 00 <|p<x 0|>`|p|x   ?8<8~~`p08 p|<<p>>x>|>|?>80||0|>~x<8p>p< px||?p8 0<x>| 8><|x<<|< pc`<|`< x|~>||>`~8<8>|q800<8>`x~>>xx>p>|>~|>|?>0x~`p~|>8?x|<pxp<pxx?p|?'|?'00x? 0<x?|0x<<x|? ```<<|80??|?|<|?< 0>0?p<8?|>8p?<x|?|??p |<~??~?|p8`x|o??? 0|o?1>c?<~?x8xx8 @~?|<|0<`???|><<<?@?|ǀx|>?x>?p0|p??? 0 ?p???opx?π???? 0?π ||????p1?0<|? ??p?~|?8>`?p?  p?>Cx x xx 0 >>~ <x~>  C<<8  0p8 0c< 8 `p<s8p 0`p?w00 8?Fp```|~``8?pf? s<~ 0~<8p8~<~  LM2SN09M 0394Laser 300x300 !XX>^((<Pdx,@Th|0DXl  4H\p$8L`t(<Pdx,@Th|0DXl  4H\p $ 8 L ` t  ( < P d x   , @ T h |   0 D X l 4 H \ p $8L`t(<Pdx,@Th|0DXl  4H\p?p<``88 8<pp8<?<?8<<<8Ǟ?0 pf`?0~pppp?p<`<``f?f` 0~@<98889888<qÎ8`<>``f`'@@ B''B 0p<8???????<ǀ <?????<<ǀ< C???<ǀ8<??<<ǀ<0?f`88À88Àpx|~????<ǀx<<??<<ǀ<8`xx<x<x<<|<<<ǀ|<x<x<<ǀ<<<x<<x<<yx<<x >x0c `?<<<<x<<<x<<<| 0`` f`88À88À<p<<x<<<x<<<<<ǀ<><x><<<>|<<<<<< <>|<x0c`<<<x<<<x<<< 3<0|?f`88À88À<8`<<p<<<<x<<< 3<|?>f`88À88À?<<<<8<<xx<x<<<`? a fp0 00 0 ?p?<<<xyx<< <|6 `<? 8f8 @@?#B?##B?p?<;<<yx<<   0 6 `<? x<<|8  0>7|`<?~? |f>p<<88x?<y<<<<<Ǿ<x<<|p 0>7|`<?> f @#?@?#@#@?xxg=x8<<<<x<x<<|p <0>6  `<?f00 0 0 ?xv?x8<<<<x<<<<<ǟ<<<<<<x<x<<|` <0 >6  `<f8888? ?x<x?x8<<<<x<<<<<<Ǐ<<<<<x<xx<<<0|>6   `<?f8888? px<><8<<<<<x<<<<<<LJ<<<<<x<x><<<<<<<<<<<<<p<<<<<<<<<<<<<<<<<<<<<<<<<?ǃxpx<><<<<><<<x<xx<<<0`>6   `<>?f8888<p?x<<<x<<<0>| 7|a?<x?f8888<p?x8<<x<< 00| 7|a?p?f8888< p?x>x<<x<<<<<<<<<<8<<<<<<<<<<<<<<<<<<<?<<<<<<<<<<<<><x<<300?p?f8888< |wxxxxx<<<<|<<x<<<x<xx|<<x<<<<x<<<<x<|<<><><<<xx<x<><<<<>x><<<<x<<3?<f<33??3 3?x?x???<<<?<?<?` @?????<<<???<?` 8x<<x8 8<<x??3<<??3<<|?LM2GI5vet 0494Laser 300x300  =XX$B -7DTdt #0=JWdjp} &3=MZgt !.4ANXer|+8ER_ly''4AAN^kx$4DNbvvv *>>>UUUUUUUbbooooyyyyyyyyy 2FScw & D ^ k x p09a`p9p>>|x<p888pp1p`p0 898pp88?8p88 qp?c8 `p0 pp80  <q???89qッ?8?888880p8p8 qp>p88?~c> 0q08x0 0?`aa??89qÎハ?87?8>88p80888 qp`p8p?s0?1p8?ppɏ>``8~08 ca8~p8<ÇqÇp89qÎ88yÃ8wqw88Îp8x  8Às8`p0800 318???p888߀`~`9<08gq<8~ ;p9ps89q89Ã88>|?8??>ps8p8x88>| 88? 8ss8pp0pp `0 318???80pɏ`~`f`0>pvc08g>x8sp89Îps89q89Ã8y?????psø88`88? 888088Àp88qw0pq008??? 8p`.t`1`fٰp`88vc0 0À|8| p9<x;9ps?q㻜89Ã8???88pppq888`8888a qÎ88p38q?sq8wpp008??w??w~~`1`g8`pv0??888Ïx<;9ps?q㟜8pÃ889pデ8q889pp888a89ps 88p08xsq>`ppp?0 38???0l~1`χ`<88v~3??p<898q8<x??Îps89q㏜?Ã8889889pp|888?8988p088psáq8n?p0 38??8p0A!~1`φ`pv`3??|p;p9pxp<9p88889ps89qボ;Ã;p889889wp~88 89p 88p0`8?1pΎ0pp0 s8??~?880`9\1`f8`xs`ǁ<8`9p98089ps89qボs9Ã8qp889889p}8p889p 88808~ 8ώ ``pp0 338??<188081`gp`ps 8pp8{<<89Çp89ǎノ898LJpxp?88p89ǎ888øxLJpp888 qÎ8?88qÇ8 8 `pp338?x08p0p遌~1`g`>80s|??8989ハ8y8pp???89888ps8p8? 8p pp>|8?0?x߀>ȏ~0`<8sÀ8989Áッ8=|0p????89888>8?`3888?>88 p8pp<<8?09|8[`88sp x<sp?8 `p x8qp88?0 p>| s?8 `a`?|`0  ? y|LM2GILL6vet 0494Laser 300x300  =XX$ -7DTdt -=M]m}%5EUbr&3CSfv$4AQagq ,<L\l| .BVVfvv $4DDDTdt0GWWWn{    4 H H \ p   0 D o  9 I Y i } <|<?<<8xx ?00? p?8>~p< 0y88>>`À`@8p<<88<0y8 ?@ >>`0`<???<???y0<<<<0p<0yc`p`p0@`1?>  x ` >` >qax9yxx<<<<p```0c```pq`?`1w x `??x<<<<<<yxy<<<<p0`pノ<<`q`1 f? `?sp8x~yyyq<{p燀?<<<ǁ0x8 `<pqx>?`<`1p Ü|0cfv`0?>`0|Àpxy?``?<<<yyy<<<<x|Ãp<xyy<<<<<~??30 cg`?8` `gǀ8p8y<8À<<<|?8?30 ag`?p``8cpǃpp0<<x<<<<<p80`x~燀`pノ<<p8>?3px8/ p`?@`?8p<8?ppp?3<`0x<qxpyx`x8??3<9p 8<p?pq30?c`?À8``<?~|~03`?<<<p<xx8<?31?x<x8ppノ<10q`g߀?fx?~03q<`` <8ǀpqpq<xx8<?3x<8p800xxa`faف??;c x0c03 {f `38ǀqyyy<xxxÀ8<?3x<8p80<00<`faك??qx0c03 UUUf qaw0ǀsÁp?8<~qyyy<{p燀0x00<faه??ß8`x0c03 n?f  ǀ>cÁp?8<|?0?<f~ߏ??ppa͠x0c03 d?< ǀ|Ãp?x<?yyy<?9??3<<<x<<<<<<<<00`ca??0p8```03 ` ???@ xダ8?x<qyy<p<xxxxyyyxxy<`00<`00??op0p`~`03 `p?x ?`8p?<cǀqy9x<{>8xxxxxyyyxxz<`0<`??g0`9?`03 `p?<g8p<cqy9x<|8xxxxxyyyxx<88xxx=x<8<03<<<x<<<xx`p<z< p <`??`0y?`03 `p<`g8cpq<|8xx8x8ǀyypx8<8888x=<8<03<<x|<>>p0 `???s8p???<<?xp9<p 3xx<<8???????? 0<x``0c0<@ ?|<? `???c<xxx8?x ``@>? 0x8>`@?`x 0w?x~xLM2GI09vet 0594Laser 300x300 =XX$$ -7DTh|#7K_s /CWk+?Sg{.;O\p&0:N[u !;Ocs  1111EYffp*>Rf}  * : J ^ r |  , , , T d n x    . H H b |  " / F ] { + ] +?Scsp8xx0`x^0 ? x0`0 y`?p? ?pǀ 08À o`>? 00>p8?88 ?8p8`0LJp f`?x `00@|>?8?p 18p?p80@`f ``<<?``qqx8<x<0xxxx?8x8< 1xp8p?p0g@0`f ``xx<@`qp|qx|?x<pxxxx ;8x8<<x<xxxx8x<xx<<<xx<><8< ?x<x0|`Àcf0 ``x??xxg?ph~?x>Ã<xxx8xxx<xxxxxxx<xxxxxxxx|<8> >x0<``xp>0cf0<x?pxo0 ap}`8x~qÃ<qx<xxxxxx<xxxxxxxxx<x?xxxxxxxp <8< 7?x0<`cp<0cf?|x??x<8o;0 ap9b""#x<?xxxxx<xpxx<xxxxxxxxx<xxxxxxxxpÀ8x<>?8x8p?x< 3x??01|`p<0cf?xx??x<x`x0 apx?<?x<x<x8x<<pxxxxxx<xxxxx<xxx??x<??xx8p?x< 1?xx????x08x<0cf0`xpx00 ax<xx? <x>x<xxx?<x燼xxxx?xx<<x<x880?x< 8?08p<0cf0x?08Hp0 a`p~`À>>xxw<<xx3xxx?<xLJxxxxxxx0 xxx<<>x>x80<x<xx88<xxxp8ü<<?0cf0xxy>0 a`<`À?<x?x88<?3xxx?<xxxxxxx?><xx<x>8xx<xpx8<<`<0cf0xǀ86? p`À|0x?>yǀpp<<3xxxxx<|xxxxx>>x<px|8x? |pxxq<<x`?0`fx<6 p`xÀ<<x?<{p<xxxxxxx<>xxxxx?|x<|xx8x? xxx>xxǀx<??xx8x? <xx<x<`<x~p<xxxxxxxxxx<xxxxxxx<x88x< x>q<< <8Àx??0~88 `p`<?xp?p|x<|xp<xx8xx<xxxxxx<xxxxxpx<<?x8px< xx?9v8p`1`<xx>p x<?`p>p||<<?xxx<x| x?xx8?x<???x???8@<?xxxp?|uUUW`pxxx<<<xxx<~|x< 8xy88?x<x?1g<xx @?=@p>|<8??`8p぀xp8??`  `?<8 spxpp?``? 8 8?~ @ LM2GI09vet 0594Laser 300x300 23XX$&(5?L\p#7K_s#3G[o /FZn !4HUiv0DNXly+?Yiy####7KUU_ss0DXo  ) 9 M a k      C S ] g {     7 7 Q k   5 L j  L ~ .BRboo8<pyp<@8<<ypp0p<0yp`8?``<~0p``|``|???0x<x<> p`0q?>???c0<<x> 0ρ`xp?0<` 1<x31g`p8|> <qÃ<p`x8xxxxxxxxxxxxx<x~><<px<<<x|0<<x8px0x 1x??<0p8p? <q<8x< xx;xxxxxxxxxxx<x|<<`88x<<<xn0<<xxx 0pxǀ0x  1???gp8sDDF <x<psxxxxxxxxxxxx<x<xx<??x<xxx<pxxg0<<xxx?pcpx`1?wp88# <x<|xpx<pxxxxxx<x{}<|p??x<<xxx<xxxc<<x<xp?8q?x`a1?0p;? 1Áxx8xxxx<xy?<<?xx`xp<<<3xxx?<xx< xxp<<x<p<<xxx<>< xpp8x<<<<xx<?8pxxx`~ 18<p?;?x? ?À?<xx8?x3xxx?<xxp<xx<<x=xxxxxxx<><xxxxxx<<<xq8xx<'px?`~ 8qq|;8<>? ?À|0xxp3xxxx?x<|xx >A<xx<<x?xxxxxxx<<?xxxx1<<<?xx0`a?x3l`;8? ?<xx>xxxxxxx<>xx8<xx<<x?xxxxxxx<<x?xxxx1<<<xxx0`a?<<ql`<;8?? <xxx<xxxxx<>xx?x<x<<x?xxxxxxx<<<sx1<<<x8xx?>xx 0`a>xf`x;8>?|> <xxxxxxxxxx<xx?p<x<<x=xxxxxxx<<x<ax<x1<<<xx<<xx`x`8<88;8 Ãx88xxxxxxxxxxxx<xx0><8x<x<xxxxpxx<><pxxxx1<<xx8q8xx`xp8?88À8;  x0`x<<xxxxx<x<xxx<<xx<x<x<<<8|>><8<|<x0<xxy|<< 88px`x?8{ 8;px <p???xxx?x<x~<>?<x<x?????|<8???x0x8?|<?p8? ax|?x{|??xp|?<?xxx<x?<<?<<x<xx8xx>?8q?cx <ꪪ<??xpx<xx?xxx<|xf<<<x<x pxx?x?<c 80x@@>p>??xp>8~p??<xx< p1~8<8|??<x?x !xppx<x?8 ?0p p #?83 LM2GI10M 0494Laser 300x300 #23UUXX$,(8BRl *4H_v.8BYp%5Lcmw.E\s+?I`w&@Tk  4HXbr##---AXoo  1 K e y   $ ; R \ s ! ! ! I Y i y       $ $ $ $ $ $ $ $ $ ; ; ; R l l + I V m R6Pj~ x8?0<px``>?><<0x?88? 08px8<88p8`  8p``p8<88|>` <x>0x000``?888p??xpÀ8?88p|>xoߌ<~p?0<088p8x @0 088?8p?<??p?À 8|88p|><f0a? ?xx88p8px008888|<?>|p?À8p8p8p8f<x`?80>p|>p888pf<<xp``?8000<p>88>30 |?0?`8888<p<p888px?xÀpp<8x888ppf<<88``?` 0>8pxp8xx?p8<||?qpxp<p8g>p8?88`8qg9q0 003p?8<0 1{8?`<>ǀ8pp88<q8ǁ8p=q<pp?<pxp>p8x|~p88xx<p8` <x8p?px88`8`oq0001p?y8x<` 1{8p`pp8ppx<s88p<qx8 8>p80p8<p8<px>p888 8p8` 8p?p 888`ppqx s0001p?8<8qp 1{8sDDF`?pp8<p8p8>Àwp8Àp?8;88<8p8<p8xpxÀp88<888pp?p8?<p88`88w0000<?8| 1{88#?`?pp<8p88p?p>|ppxÀp8À8?8<8p88p8ppÀpp{8888pp>?p8?<8qp8ss0p0x?8x~8>|p8pp>88p8p;ppp88?8>8` qp>8?pppx ``p080p8f`  1{?x`??pp8w8px888xpy8p<pp88p?pp?p88<p` qp88pp `ppa`p8xqw  1{8<>?0<8~8px<8p8y8px8s88p?ppp88xp` qpp```p8<<3<  1{8??0>8x8pp8p8=8p88s<88p?ppppxp` qp?p` p8xqx  1{8??8888p8ppppÀp8p88sx888p=pppp?<p8p` qpp8?p@0  8p8ppw88pp  1{8>?<??|88p8pppxpÀp8p=8sxx888p8ppp{xp8p` qpp8?88p 0<<0000pp80p8p8pp>}px88p` 8p<<|x8<pqpxxp8p8pp8? 8 {8<<|8ppx><<x`pÀxÀp|p??<px8p8pp~}ppx<` <x>8xp8 p8p8p?p>8{>>8>8>pxxÀ>>p|>p|p?>|8p8pp|||8xp||` >~ 0000pp8|?<>pppp?|>8?p?p?p;?<8p8pp?p8<p?` ?8 ?8p8p88px|>?<ppx?8888p8ppp8<p8` ?8<>80<><ꪪ||p<x?pp8 8|88~88p8ppxp@p|8<x` `~||8 8|?<8 @~<88<8p` 88!px0<< 8p?x0`88>`00x<8p?p@ @@8|```  `8 #`0`<< 883`@a8 8   LM2SN10V 0394Laser 300x300 $XX>+4Nh8Rl"<Vp &@Zt*D^x.Hb|2Lf6Pj :Tn $ > X r  ( B \ v  , F ` z  0 J d ~  4 N h 8Rl"<Vp &@Zt*D^x.Hb|2Lf6Pj :Tn $>Xr(B\v,F`z>>p|>p>>pp>>|<?~pp<<?~8? ~|~~??8??p~?>?|>?~~??8?88?ハ?>?~8?~?~~p??~yx>|x<y>~|~88<~~??q?~??8?88?ハ?>~|?~?~~??~<<>||<<?~>~80?~~??q?~??8~?~>~?????~?~~???~xx>>|xx?~|x~8x0~q~??q??p~p8~8~?~>~?????~?~~???><|>||π<|??~>~8~q~??q??p~p8~8~?~?~>?~~?~??~??~?~?~|????~8?ダ8~?~~?q~~~~8~?~~8~?~?~?<~~~~~?~~??~~~?~~<~??~?~~8ダ8~?~~?q~~~~8~?~~<~?~?~~~~~~~?~~~?~~߀~?x~?~~8~??>~~?~?~~>8?ハ8~?~~q~~p?~??p?~?~<~?~>>~~~?~~~~??~~~?~?|~??~?~~?8~??~>~~?~?~~|8?~ハ8~?~~q~~p?~??p?~?~>8?ハ8?ハ?>?<?~~?ó~?~~~?~??<???~?~?~8~???~>?~~~???~~8|??~ノ8~?~~~?p8~?~?8p?~~?8?ハ8?ハ?>?|?~~?~~~?~~? ???~?~~?x?~|?~|>?~~>??~~8?~ノ8~?~~~?p8~?~?8p?~~>??s~?~~~?~~~~~????~?~~?~~~~<>?~~?~~|>~~ノ8~?~??~~~88~?~??>߀?3~?~?~~?~~~?~~~?~~~~~~<>~~~~?~~~|~~~ノ8~?~??~~~88~?~??8????3~~??~~~?~~~~?~~~?~?~?~~?~~~~?~~~?~~??x~~|>~ノ8~??~?~~~?~p?~?~~>~?~~?~~~~?~|?~~?~~~?>~~?|~??~~~~>?~~?~ハ8~??~?~~~~p?~~~~~?~?~~?~~?~??~?~~??~~?~?~~>~~??~~~~~?~~~ハ8~??~?~~~~p?~~~~~?>>~~~~~~~?~~~?~~~~~?~~~?~~~~~~>~~~~?~~|>~~~ダ8~??~???~~~?~8~?~~~~~?>~|~~~~~?~~~~?>~~~~?~~~??~~~~~>~~~~?~~>|~~~ダ8~??~???~~~?~8~?~~~~~>~|~~~~?~~~~?~~|~~?~~~?~~>~??~~~~~>~~~~?~~?~À|~~~8??~???~~p?~??~~~>|8~??~~?~?>`??~??>??>?~~>?~?~~~>|>~~?8??~???~~p?~??~?8?~?~~????~??~????????~>??~~>?~?~~?~??~~?8??~?~~?~?π?>>???~?????~??????~>???~~??~?~~?~??~~?~~~?~~<?~~?~?~>>??~>~?~?8~??~~?~x~~~?><8?~~?>?<<?~?>~~8~??~~?~?~8??p?~?8??pq??q>???. { .. SM2CA11MFNT SM2GI05VFNT SM2GI10MFNT [ SM2GI06VFNT SM2GI07VFNT VSM2GI08VFNT  SM2GI09VFNT f SM2SN06MFNT SM2SN09MFNT  SM2SN10VFNT ֕^M2CA08MFNT rc M2CA15MFNT GfdM2CA21BFNT کn M2CA30CFNT y SM2CA11 III 0393Laser 300x300  UUXXR ")07>ELRW\afkpuz !*-3:AHOV]dkry| '19CMT\fo|#*/59@GQX_eknt} &-9CMS[dkqw|",8=CIR[djr  *3<BKTZclu|$6?HQZclu{@@@ @"E@P@@$ , @ A! @pF0w 8@@ pD@ $I+|.rJ1 80g  spp78>O;o;  A| "p# qB@(r ?$@ ;A!1A$A )&$FJ*/  ,H0"!c!!1! 0c1$B!B @`DPCA@Q@BO$ P"1 @$!0$D@DQa @Kd c(B D"B1c1DAE@p ǀ @OB`!$A2)"$BJ*J @AD0"@"!! ! 8c!d)$C F 0 D@P P(@O$@!!dB8$@@ `ILJAB `D"B!bA@ 5{/@OB <`!$B,"$J$(J @@@DQ( "N$ @! (`d!D@P  @B@O`! D($B@`@BP0oRJ,@PB`6 AAA`0p;*J=` )CODB!$D ‘$I"%`@$T @F@'!(@Rd""@! (Ƀ`JP @ x<\ca͇>A ,i`Hj  @I2"DPf""H$I"CdDb |$L`%D ń$Dș&@((H&L(#$0cR@$|$B`6 DA 8$5s?| A@B!0b}<%@$ @@?! @R4""@! %")`ŀPj@  @"D`$Q"hhA0H>0D@B`%D HH"<@DH$ FH"&0aL@@D&B!B`6 A&1dJ% 0AOB! U!P$Ê@$ @A@@! ~O @! %"9`ĀaP3`  @"Dp$Qb"0l0AaQ @@B`%DHH#@D) BH>0c@@@@>B`6 A"#aDJ%  ` A@DB! !\$b*@C`@!@! !!#" !03 1  "DP$Q"0l,0HB@@B %D$HH!BDH$I BC?2@DBBD"B " $A$c"" ^EK@!AA I$HA !$b@@$* `B "H"B ( 3! 0!(!""1f! 10 ! ݒ"DHD&0l$%2"bB@$H01EXCD,D $BD((X C 6a(B CD"B1c" "(Ç"!`08t@DO@ώ80@ qI.`@$# |p0, 8psrw887Á !xp hw9 Hf!xigq9w0h66$Hlbp# 8sp829?D@p  8#! C @`p D!$` `p?SM2GI5vet 0494Laser 300x300 XXRv !&+058=BGLQV[`ejz "&*.159;>BEJNRVZ^beimrvz~   !&++/337<@DHLQUY]_cgggkosvy~ #(.49FQZcltx|b9ycpP@F ( P@ %* 0#?D@d@Rsc^J%}b 9*jUJT"f&L*UUW$@lfvT@bTXJAE%*$/#0|0siEV A(Wx .p ! HPkzT *‹;"GK$T"JU,UU"URQDTJLfuT UԀR)4..B!{}}Q%[4£D! Irg=qc)AN }ȸ) +8uK$T"5JU(UUURRD@OF5T MR3UU 9D|P ?P@`D8"  SM2GI10M 0394Laser 300x300  UUXXR  '.5<CJNRVZ^bfjnrv ")07>ELSZ]`gnu{ !'-28=CILSZahosz &**---3:AAHOOU^fmt| $).6>FFFRRRRRRRXX^^^^bbbbbbbbbiiipxx )8@HPX`fnsx||9:?) R~:P @@`p `J H($ 8xR`^< Q;@^N %@< >BJ(AB8qPE !  JH(B@#`D `@p?8 ^F!B(PR@S *% 8@(F!B(PPF!"EBJ(cbDPD"@ H g @ $B!= PB# D> 8B!)(P@S"% D (B!)(PPI!BE BJ(URPD$@@ HgdBE P '$OjH 8 w/  IHP@S B % Dhp *HIHP @S!@E BJHIRP($ 9ǬJ%aEQ|H<8qg1  DO#E"D9$ 88(> )Lj @ !BrHQ@^@ ?@ *IBrHQ@ P@E BJIJI (D Y!&D2JE%LI"EQ@DgI /E$<B)D``hO~ l|D"  )LP @B G@P˂  !$ 'JB GP@E ~KIJI$D PB"J%(PEf" …  B(QDPG@<8"z Kw(p? B H@ۂUYC Y 'B H@@"_@E#BJAF0I$ РB"K%(PEI$H`… B(Q}bĠU /j ?|"AAYE"(p ? @~`B @۷@Y"@? *B @!@@E!BJHAB@F* PB"JE%(P"D HH"`… B(QDP! (G L?Dc@AD/P ?p@ "`B  @ߒUYN D% *B  @BE!BJ(AB% F* PB"J%%(P"D HHB`… 'B!(Q #)E" hGpL?|||DAAA_&D/@8 B B A@Y  D% @ B B AP"EBJ(ABD ! "D"J%%LI"LDD@H)FD`I05$#B#$ (@D"$#F0L88D"z @8 ?<@@  8@ ?<BJ/AB8q F! V8J%%CdD|H:8q0# (D hL3>88| ?0  8?  H PA`8UP)@SM2GILL6vet 0494Laser 300x300 XXR  "',16:?DINSX]bgl| #(-28=BGLQUZ_bejnty~  %).38=BGLOTZ__diiinnnnsx{{~~~   !(---48;>DJPPPWWWWWWW\\aaaadddddddddjjjpvv| !'+159<<BBGL? H>@ P?r^g Ge@ DAA I p3 P+.P`gy@gs$)3:RRA   C@$"H$H PUzU<| a`M @ӄEl"Q@!BHW IHB$+ /ܱW#$ RI (D$"JRR$!P#8sI"8wJRFH1JH IȜ DAR`AI^ב/ EQHXCw8p\bT*PF<D!$.!J*!.e"KRD I%)Q6*JRd)) RK)H J%):HQEAVAAJU!/؊QB!`<  u )ԩ@D@)BB"&(D")JR y%)a*(bJRd@/;J)H JT)JRAZN]JA/s EVI]B @ `  W*\ (4D)BDH@ (D)JJD  A)Q"(Ic@#(JJ)H It%)9 DAA<@'> @lD`ғ ;c 0&C`AH@C$)2 ĊD ø9)K88@>9K88' U d>0 =|.s€ ? 8 e{ 8@<SM2GI07vet 0494Laser 300x300 XXR  "',16:?DINSX]bgl| #(-28=BGLQUZ_bejnty~ !&*/4;@EJORW]bbglllqqqqv{~~$+0007;>AGMSSSZZZZZZZ__ddddgggggggggmmmsyy$*.48<??EEKQ?) !*8Ujr^g `G H# ` $ 8D3 P+.Pgy@gs$)3:RRA `$ITa@ $@ 8= @l2D4 )Hsꀠ*@R L  RD(D#iJRRR!P {U)0 (QH,8!8pT黣# HW IHB$+ /ܱW#$ RI (D$"JRR$!s䤡qv;(R1C)9!H*L.}K!})Uj7B58p\bT*PF<D!$.!J*!.e"KRD!RJRA%(L 2!JIre))C'I(*)28 ¤9} >U+h"7:`   u )ԩ@D@)BB"&(D")JR҄JR1%+L{Be))A )J@X+Z)>| 8!|C#U*#؈4   W*\ (D)BDH@ (D)JJDRJR $Lte B Be))9$'2@(RRH*EA! 8I+`P;c 0&DAH@C$)2 ĊD sItpL9zX>28} ǰqP?`   xD@ *aUjSM2GI08vet 0594Laser 300x300  XXR  "(.4:@DHLPTX\`dhl %+17:=BGLRX^djpv{ &+17:=CGOU[aglrw} &,29?EKOU[[[agmrw} !)/8AJSW^env  P PAL`L (@POAP0 @21088 s>3B**mxI(HPBDN|g8s8D'  to? xC H)H"**+ L)  ф1AD"(D(((@@H3"D@DEQ@Z"p_Eq] O>HD"z )L" )x.("D((PH ssx=ǽPQEN8"r "$"yQD@ &pF4OQQ _>P"AA[ )O/P?! 0 I ;UC. "@ǁ@<B*"|h* ("D UQE(PJD(UQQ"0b "&D@IQDA BGtG`<_I"@AKu"(p ? I n fX) "pa@>".("D(@J! z("D %QEDDF)QDDAYD(p ?! B/ nUf[(B@_@ ("DP( M"("D QEJD)_E"0b "$xDI@TIBGP O>kDDAz D/P@p" !B!" ~Ig(H@N@BE"(DP( "("DQEQ=EPE"0b "@DI_}ȥ"4Gp" G?DD" &@@8?">q kf_(( D}888D^' Jp#{ǞyD]= |<"qp@!HZrGF0p @X|8 (    A(A 0 @?0   xp@@` SM2GI09vet 0594Laser 300x300  XXR "(.4:@DHLPTX\`dhl "(.4:=@EKPV\bhntz !'-17=@CIMU[agmrx} %+28>DGMSSSY_ejou{~ %-3<ENW[birz #P@ (@ AJ0cL( P(t PJ(H cI!J@s>3B**mxI8@PD Oq I`"!@Ȓ#/=wqUE^8HAAPEET%TQEDQAJA ( E"%O8@wDJ@HĈ"'$'~BI ;UC) @#"@"'@"(!IISERHAPEE\$QE DQI2B (0b E" %@A B*A|J@Lb$ R"'B I n fX8"``B"@" "袂(!IIQEQH@PEET$QEDJI2DH{0b E"!_|^,ID> @ DF4 J J"""/ nUf[(IB@B"B @(!IEQEQH@PEER$QEDJU2HH0b D<"%@uB(cD@DD:dKÀ B!" ~Ig8( @B"HB "H!IEQEH@PE=R$QEDDcI(0b DA "%@"(DwDB'; P>q kf_((@< @DϾpGA"(sIEQ9QxG@D<QtNx<3AH_y璋q8G AcZq!cDcs@`yP0(p\@@@ p@@@x@(  SM2SN06M 0494Laser 300x300 XX  !&+05:?DINSX]bglqv{  %*/49>CHMRW\afkpuz $).38=BGLQV[`ejoty~ #(-27<AFKPUZ_dinsx} "',16;@EJOTY^ 0(# @ @Q@Pgy192D$)39)JR"$0@DBF0tL &A(bҊ uJ@ <G0@"R) L  R!JRJD%JR)JR%@E@ K) &0E(`F0A+< ϟ;޷;ʹ($psMK!"+!|W&a R! Ҕ%BD&-JR)I"( ;$.3)JRJc9aIJJRydH( II%Jc'JjT9W{ҋXH Q$FLD!$.! %[&+K)IB %$JD%JR)I *!BRIK)JR $*06<BHNTZ`flrx~ &,28>DJPV\bhntz "(.4:@FLRX^djpv| $*06<BHNTZ`flrx~ &,28>DJPV\bhntz "(.4:@FLRX^djpv| $ yy b0 0!< ""$Bp  H4mm/ H`'s>3> ("(""HH"BEQHQ" aJ p"I"#yXþ>>og>19{ << H"(! @(@()  ("("(   ""(0"H ("P $ $$@Xþ>Ǿog>{|>I{$  <<@IH$P(C ( @B(( H6("(   QHB"q$qyP"@@"@x/Ҋ'J($"@"/@D!0 <<8@KpHC ( A>"(( H*("% Pǜ!""(Hqqq (;(""r'" "@(hx@B"@H(R J,3bA G/  H4lm ǀF`I("( " ((("( " )'(ppAB"(RK'2CDȪ >H6yxA`p>GJ/ "(""!"("*("%"" /(((z$A&@i$(hpCB"(RȄK!JY<@D(/ 0vHMMP I>( H"/"""A"(#*("""! "z((($I'ʩ$hDB"(RĂH Ky"@DJ(/@D!0<@ I ( H"("""R""(""(B"R%" H( ('(("((d)(hDB"(RdH +@!DJ( $#"0<ÈB)@"((("("""Sh""("B"(""R"@H( ($((B((I()$(䄈B"x b@!DJ//s|0<È "B/ @@") (("(,"""("!"B"(""#h(( ($('(yȠ!&H)$(x䄈@"x <@|>/q;HMM"B!" @>Ⱦr/"( ("'""(yǞyy/ypȁqȢ Bqߊ' $@Iz > yxph">q @ b0@  : >  <  SM2SN10V 0394Laser 300x300  XX> (08@HPX`hpx (08@HPX`hpx (08@HPX`hpx (08@HPX`hpx (08@HPX`hpx (08@HPX`hpx (08@HPX`hpx (08@HPX`hpx8@<`22`|||||||| (|````ff >``ff22``220zzf[f`|88::x ff>fl`f<<~ ~~<<<8|f~`f<|<>~ffff~`xp`` 80|~8~~~n<8>>|`l|00x@(ff~fl 0f~~~ ~<~~~~|<~~|~~~f~`f~~~~~ffff~`x88`` 80~fffffff~ffff8f<LL LL~Ufv|~~8~n<>~n6~n>~~8~>~n6<~~l ~pD|xHpf`l88<f8f `pff~pf~ffn```f`ffff`ffff `8``0f<<~ 6ff>f6ff2fbfb`~|f0||~8>l|H0 |@.f` 8< f8f ``ff8~8fffff```f`vfff`ff<>|8 l<<|>|>~ffff~0bff<<<<<<<<<888~~`v<<~&&<  f ff 6 6f6f6fvf`~08fB~8|88H0 ::~x9ff|p~~ f <|` <~p f~`f||n~`vfffpff<<0l>~|~~~~~8 ~~~~~~~ffff~88`f~>>>>|~~~888ff`~~~ffffff0~f>8~f~ff,,>~n~fffʢff<  f fff 6v>f6v><f`lfB<~p~@H`H|||||||8ff>p~~n <~| <> f|`f||n~`~fff8ff<f`ff~ff fffff`fff6fnffffʢff<  f fff 6v6f6vf8|` f0~f~~8~Hx09::::0<v l~fp~~f`f``ff`~f~fff0>f`ffff ffff`pff>>>`fff~~|{ffffffff`f>fff~~f002ll>fvn~~fzffn 6 f fff 66f6f8f`( f0BlB~8>y~6<0f lff8~8~f`f``ff`nf|fff<0 ~f`f~ff ffff`<fff88f`f~~~~~`~~~~~`fffffffff0~f~fff~ff0~~nf6~fv~~~f ffn 6 f ff0n 6~6f60n|~~~6>lf`(0f0ff~`@Lb|`(`l |~~||~< a:::~ 0`~~~~ ~~0~<~f~~|~`~f~~~f~`|~~f~x~~~~~>f< ~0~~~~~~~~~~~<<~~l~<~~ff><~` 2~~~~ff~ ||0ll`8]|>>>f< `|>f~0<>>>>>>>>>><<><<`p><<>ff<`?><~ff< 08`>~~~p<00~|`~ ~@`~~<|0@|T |x`|88|8x************************** M2Font aanhangsel ********************************* Toetscommando's =============== Afleidbare commando's --------------------- De toetscommando's die direct zijn af te lezen op het beeldscherm worden hier niet vermeld. Voor alle duidelijk over deze commando's: Er wordt slechts bij een paar commando's vereist dat een speciale toets ingedrukt gehouden moet worden. Bijvoorbeeld ^opy: Control+ om de COPY optie te activeren. In de DeskTop menubar staan steeds twee letters aan de rechter kant, naast de naam van de optie afgebeeld. Bijvoorbeeld: T2 om de test-tekst te tonen met gebruik van he tweede font: U slaat achtereenvolgens de en <2> toets aan. Bent u echter eenmaal in de DeskTop menubar, dan kunt u niet de optie niet meer met de toetsen bedienen. Niet direct afleidbare commando's: ---------------------------------- : Annuleer. : Als er geen optie open staat, dan wordt het actuele venster gesloten. : Als een z.g. Auto-draw optie open staat (Line, Round), dan wordt deze gereset (afgebroken). : Maak laatste operatie in de Zoom ongedaan. : Als een optie of submenu open staat, dan gelijk aan Shift+ : Haalt het originele karakter terug uit het View-venster. : Sluit de cursor-invoer af ( mag ook). : Als een optie of submenu open staat, dan gelijk aan dan <1> : Forceer: Declareer Font 1 als actueel. dan <2> : Forceer: Declareer Font 2 als actueel. dan : Font Flip: declareer het ander Font als actueel. <7> : Zoek het Zoom-karakter in het View-venster en knipper. <8> : Join: beiden View-vensters <9> : Join: andere View-venster dan waaruit het Zoom-karakter komt. <0>, : Join: Het Zoom-karakter View-venster. <-> : Zoom 1 karakter achteruit. <=> : Zoom 1 karakter vooruit. <`> : Zoom-wissel naar karakter van het andere font. Alternate+ : Roept de Breedte invoer voor het karakter in de Zoom aan. Met de Alternate ingedrukt een getal op het numerieke toetsenbord intikken en dan pas de Alternate toets loslaten. : Roept de Breedte cursor-invoer aan op de Info-balk aan. <-> Nkb : Verlaag de breedte met 1. <+> Nkb : Verhoog de breedte met 1. Shift+ : Roept de karakter-selectie invoer aan. Op de info-balk van het View-venster veschijnt dan "? any key selects". Het karakter dat volgens de toetsenbordtabel bij de dan volgende aanslag hoort wordt in de Zoom geladen. Alternate+ : Roept de karakter selectie invoer aan. Op de info-balk van het View-venster verschijnt dan de tekst "Type Nr: Alt+numeric section". Het getal dat u dan intikt op het numeriek toetsenbord met ingehouden Alternate toets dient dan als index nummer waarmee een karakter uit het View-venster wordt gekozen. In normale omstandigheden is nummer gelijk aan de ASCII standaard. ^ : Fixeert de huidige beeldscherm-situatie als een plaatje in het Picture-venster. Shift : Save font 1 ^ : Load font 1 Shift : Save font 2 ^ : Load font 2 : Opent/sluit het Monitor-venster. : Area uit. : Area aan. : test-tekst met actuele font. Ook met : Simuleert in een aantal situaties een druk op de linker muisknop (als er sprake is van het zetten van cirkels, of editen van een Area). <2><4><6><8> : Op het numerieke toetsenbord: MOVE optie. De zelfde betekenis als de cursortoetsen maar dan met gebruik van de grafische modus. Tijdens de Round optie: ----------------------- : Filled/Not filled : Verandering van de verticale/horizontale maat van de cirkel- vorm. Ook geldig in combinatie met de Linker en Rechter Shift-toets. <1>...<0><-><=> : Instellen van de lijndikte: 1 tot 12. Tijdens dialogen: ----------------- : Exit & annuleer : Exit & kies voor de Default button. : No, Nee, Njet, No, Non, Nei, Nein Exit & Kies voor de ontkennende optie = gelijk aan . : Yes, Ja, Da, Si, Oui Exit & Kies voor de bevestigende optie. Indien meerdere: kies voor de Default indien deze bevestigt. <1.....9,0>: Exit & Kies voor de button die vanaf links naar rechts en van boven naar beneden getelt met dit getal overeenkomt(0=10). ^ : Leg de dialoog als uitsnede vast in het het Picture-venster: Dit is een documentatie optie (hetzelfde geldt wanneer een DeskTop menubar open staat). Tijdens cursor-invoer: ---------------------- Uitgezonderd indien het invoer betreft die van TOS gebruikt maakt. : Annuleer. : Verwijder het teken onder de cursor. : Voeg een spatie in. : Sluit de invoer af. : Overschrijf het teken onder de cursor met een spatie. : Verwijder het teken links van de cursor. : Cursor 8 tekens naar rechts. : Plaats de oude waarde/tekst weer terug op de invoerregel. : Cursor 1 positie naar links. : Cursor 1 positie naar rechts. ^ : Cursor naar begin van invoerregel. : idem dito ^ : Cursor naar einde van invoerregel. ^ : Clear and exit: Maak de invoerregel leeg en verlaat de invoer mode (bij numerieke invoer wordt hiermee bereikt dat de minimaal toegestane waarde voor de betreffende parameter wordt overgenomen). Tijdens de Tik-Test: -------------------- : Beweeg de cursor 1 positie / Scroll 1 regel. : Cursor naar linker bovenhoek. ^ : Cursor naar linker bovenhoek en Blader-offset opheffen. : Cursor wel of niet laten knipperen. : Cursor naar het begin van de volgende regel. : Voeg een spatie in, rechts van de cursor. : Verwijder het teken links van de cursor. : Verwijder het teken rechts van de cursor. ^, ^ : Verwijder de regel waar de cursor op staat. ,^ : Haal de laatst gewiste regel weer terug. Shift : Wrap up / Delete space(s). ^ : Voeg regel in/Wrap down. Ook met Shift. ^ : Cursor naar het logische begin van de regel. Shift : Cursor naar het fysieke begin van de regel. ^ : Cursor naar het logische einde van de regel. Shift : Cursor naar het fysieke einde van de regel. ^ : Een pagina terug. Ook met Shift ^ : Een pagina vooruit. Ook met Shift ^ : Info : Informatie over het karakter waar crs staat. ^ : Switch : Schakel over naar het andere font. ^ : Draw : Zet de tekst opnieuw. ^ : : Zet de regel waar de cursor op staat opnieuw. ^ : Wis de gehele tekst. ^ : Capital : alle normale letters in hoofdletters. ^ : Lowercast : alle normale letters in kleine letters. ^ : Obverse : ieder woord beginnen met een hoofdletter. ^<[> : Blader naar links ^<]> : Blader naar rechts ?? @? 08 p0`o0?p<vs/  o`?f0x< xpM2Font LEES_MIJ.TXT April 1994 FONT's ------ Op de M2Font diskette vind u een aantal font's in het ongecomprimeerde standaard GEM formaat. De eerste letter van de file_naam is volgens het "That's Write" principe: De "S" staat voor Scherm en de "L" voor Laser (het printer_font). Als u That's Write gebruikt, maar niet met een Laser, dan kunt de "L" vervangen door een andere letter (overeenkomstig uw systeem). Het kan zijn dat u de breedte/hoogte verhouding moet aanpassen om het font op een juiste wijze te kunnen toepassen. Dat doet u natuurlijk met M2Font op een snelle manier door gewoon in het Info-venster andere waarde in te tikken. M2Font zal dan aan u vragen hoe u het font aangepast wenst te zien. De daarop volgende letters, "M2", staan voor mijn persoon omdat de font's van mijn hand zijn. Dan volgen er 1 of 2 letters die aangegeven om wat voor stijl-familie het gaat. GI : GILL (schreefloze letter vergelijkbaar met wat u als PICA kent). CA : CALEDONIA (schreefletter die u als een Roman of Times Roman kent). SN : System (Niet proportioneel, gebaseerd op het Atari font). De GI en CA font's hebben een karakterset waarin extra letters met accenten en ook symbolen in zijn opgenomen. De bijbehorende toetstabel staat ook op diskette onder de naam M2Font.KEY. De 'systeem' font's hebben de Atari karakterset. Dan volgen er 2 cijfers die aangeven om welke font grootte het gaat. In de GILL serie krijgt u een 5,6,7,8,9 en een 10 punts letter. Hierbij zijn de punten aangegeven incluis de interlinie. De Corpsen zijn 3.8, 4.7, 5.4, 6.5, 6.7 en 8.35. Interessant aan deze font's is dat ze gemaakt zijn op leesbaarheid. Dit is normaal zult u denken, maar in het bijzonder bij een Corps van 3.8 is dit niet eenvoudig gezien het kleine aantal punten dat tot de beschikking staat. Een niet onbelangrijk probleem is het feit dat men ook nog moet beschikken over een scherm-versie van dit font. Laad het maar eens en gebruik de Test- tekst functie om te zien dat er meer sprake van illusie is dan van een werkelijke letter. Mwahh... het is leesbaar, als men het scherm niet te fel zet en er met de neus tegenaan gedrukt naar kijkt. De laatste letter geeft een bepaalde stijl-versie aan van het font. V=vet T=Thin M=medium Van het CALEDONIA type zal de 11 punts S en L versie aanwezig zijn. Dit type lijkt op een type dat in de krant wordt gebruikt. Hier bestaan overigens veel soorten in, onder even zoveel namen. Ik ben uitgegaan van iets dat als Times stond geboekt en heb daar met mijn eigen smaak aan zitten rommelen. Vervolgens ben ik in de boeken gaan kijken waar het resultaat het best mee te vergelijken was. Dat werdt de CALEDONIA. HANDLEIDING ----------- Mocht u de handleiding willen uitprinten, dan is de volgende informatie van belang: De handleiding is geschreven in That's Write. Echter, het is als een gewone ASCII file weggeschreven om het lezen van uit de desktop mogelijk te maken. Als u beschikt over That's Write, dan laad u de lay-out M2FONT.LAY in. De gehele tekst is in het font SM2SN10V.FNT geschreven dat in zowel de scherm als printer versie op diskette staat. De printer-versie is bestemd voor een Atari SLM laser printer op 300x300 Dpi. Als u een printer gebruikt met en andere resolutie, dan dient u het printer-font eerst aan te passen (te vergroten of verkleinen in breedte en/of hoogte). Beschikt u niet over That's Write, maar over een ander tekstverwerker, dan zult u de pagina indeling moeten nalopen om de handleiding mooi uit te printen. PD opname --------- PD-clubs die M2Font opnemen in hun verzameling en hiervan in hun catalogus melding maken worden verzocht om het volgende te respecteren: -In geval van het bijplaatsen van een plaatje: Op de diskette staat een PI3 plaatje (M2FONT.PI3). Of u zo vriendelijk wil zijn deze te plaatsen en niet een eigen versie. -In geval van een enkele vermeldingsregel: gaarne de volgende formulering: "M2Font duo editor". Publicatie ---------- In geval van een publicatie wordt de redactie verzocht ook het meegeleverde M2FONT.PI3 te plaatsen en in het artikel ook eenduidig te vermelden dat het programma door Marc Marc is geschreven. Indien men meer scherm-materiaal wil afdrukken bij een publicatie, dan zijn daar een aantal functies voor ingebouwd: ^ voor het vastleggen van het actuele beeldscherm en ^ voor het vastleggen van een enkele uitsnede bij Drop-down menu's en dialogen (zie ook de handleiding). BELANGRIJK ---------- M2Font is uitvoerig getest. Dit is echter alleen door mij gedaan. Daarom is het niet uitgesloten dat, onder bepaalde omstandigheden, toch fouten naar voren komen als gevolg van een andere gebruikerslogica. Schroom niet fouten te melden. Ook uw wensen en/of suggesties zijn welkom. Mochten fouten in het programma uitkomen die onoverkomelijk zijn, dan worden deze zeker opgespoord en verholpen. Een update zal dan ter zijner tijd beschikbaar komen. Als blijkt dat M2Font aanslaat zal het programma ook doorontwikkeld worden. Er valt nog genoeg aan handigheid en extra's te bedenken. Er ligt al een verlanglijst klaar wat dit betreft. Echter, dit heeft alleen zin als het programma ook gewaardeerd en gebruikt wordt n dat u bereid bent om voor een redelijk bedrag zo'n superversie aan te schaffen, compleet met een uitgebreide/gellustreerde handleiding. U kunt uw waardering al laten blijken door te reageren. Schrijf een kaart of een brief met uw reactie. Slecht of goed, dat is aan u. Ik wijs er u met nadruk op dat het niet de bedoeling is om nadere uitleg over deze versie van M2Font per post aan te vragen omdat dit niet binnen het kader van deze 'PD Pre-release' valt. Alleen met het oog op publicatie kan hiervan worden afgeweken. Als M2Font een programma is dat u graag gebruikt en u wenst een update ervan (omdat wellicht nog te ontdekken fouten zullen worden opgelost), dan kunt u deze verkrijgen door een diskette op te sturen met daarbij ingesloten een briefje van 10 gulden. Verpak de diskette op een degelijke wijze. U ontvangt dan binnen afzienbare tijd de laatst gecorrigeerde versie van M2Font. Als u de deze 'kort-bestek' handleiding op papier wenst te ontvangen samen met een update, dan mag u Hfl 30,- over te maken op mijn bankrekening onder vermelding van M2Font. U ontvangt dan de handleiding als een degelijke(!) copie van de door mij gemaakte Laser-uitdraaien, op a4, gebonden in een ring met schutbladen en natuurlijk de update diskette. De voordelen van de nabestelde handleiding op papier: -De tekst is ook van een Lay-out voorzien. -Inhoudsopgaven en index. -De delen van de tekst die als persoonlijk commentaar/kritiek of 'voetnoten' gelezen kunnen worden zijn in een piepklein lettertje gezet, wat het overzicht ten goede is gekomen. -Supplement: Originele print-proeven van de meegeleverde font's (met de laser). -Supplement: Toetstabel referentie (toets en bijbehorend karakter). -De upate diskette kent niet meer de handleiding als fiel waardoor er ruimte is vrijgekomen voor meer font's. Extra zijn: M2CA08M, M2CA15M en M2CA21b in zowel de scherm als printerversie. Hoewel de M2Font diskette nadrukkelijk als 'Public Domain' is uitgegeven en niet als 'Shareware' wordt iedere donatie op prijs gesteld. U laat daarmee niet alleen uw waardering blijken maar steunt ook de voortgang van de programma-ontwikkeling van M2Font en ook, in zijn algemeenheid, een onorthodoxe kijk op programmatuur. ! Merk op dat de handleiding op papier wel onder auteursrechtelijke bescherming valt en deze dus niet als een copie hiervan mag worden doorgegeven. In overvloed geef ik u ter overdenking dat de ontwikkeling van M2Font zoals deze nu is, een experiment was (uit persoonlijke interesse) en dat deze ontwikkeling stopt als er geen reactie op komt. Maak dus niet de fout om wl het programma te waarderen maar niet te reageren omdat u denkt dat een ander dat wel voor u doet. De Benelux is klein en de uitgave van M2Font is door zijn Nederlandstalige handleiding tot dit gebied beperkt. Dus als iedereen die zou willen reageren dat ook werkelijk doet, dan is dat een sterk argument om u in de toekomst te verassen met een nog betere versie van M2Font. U bent natuurlijk vrij om de M2Font diskette aan derde door te geven. Wel hoop ik dat u dit doet in vorm van een complete diskette, zoals ik deze heb samengesteld. Het tegen de geest van deze PD uitgaven om de verspreiding uit een commerciel oogpunt te doen. Vergeet bij correspondentie in geen geval uw adres te vermelden! U kunt uw reactie sturen aan: Marc Marc Amsterdam Postbus 17199 1001 JD Amsterdam Bankinformatie: ABN/Amro 52.42.78.733 ten name van Marc Marc onder vermelding van M2Font ABN/Amro Keizersgracht 203 Amsterdam Giro Nr van de ABN/Amro: 2391 p``8xZl SM2SN10VA. De inhoud van dit 'Picture-venster' kan ook worden weggeschreven. * Grillig : Iedereen werkt op een eigen wijze met de muisknoppen bij het selecteren van functies. Hier is bij veel functies rekening mee te houden in vorm van meervoudige herkenning bij het muisgebruik (snelle of langzame enkel/dubbel/doordruk/schuif klikken). Ook wordt automatisch een edit/selectie proces afgebroken als het programma 'ziet' dat men halverwege een protocol plotseling iets anders gaat doen. Gemak ===== * Matrix : De matrix kan snelle muisbewegingen volgen, zodat men met een betrekkelijk snelle beweging een bepaalde ronding kan zetten. Met een aantal ergonomisch ingerichte toetscode's kan men snel manipuleren met betrekking tot het karakter kiezen. * Annuleren : In nagenoeg alle omstandigheden kan men een proces afbreken door middel van het indrukken van de rechtermuisknop of het aanslaan van de toets. Dit geldt ook bij het verschijnen van dialoog-boxen zodat men niet pers de muis naar de CANCEL button hoeft te bewegen. * Testen : De font's zijn via een ingebouwde tik-test functie uit te proberen op een blanco scherm. De gemaakte test-tekst kan ook worden bewaard (en natuurlijk worden geladen). * Serie : Met de toetsen <-> en <+> kan de zoom-matrix een karakter achteruit/vooruit worden gezet (geladen). Met <`> wisselt men in de zoom-matrix tussen het ene en het andere font (dus met behoud van de karakter-positie in het font). * Toetstabel : De implementatie van het editen van de toetsenbordtabel is aanzienlijk vriendelijker dan dat gebruikelijk is bij andere programma's. * Proporties : Met een 'Compare' functie kunnen twee font's voor wat de breedte van de karakters betreft met elkaar vergeleken worden opdat de scherm en printer versie van een font doeltreffend op zijn consistentie getest en aangepast kan worden. Men krijgt een rapport waarin staat aangegeven welke karakters volgens een vooraf ingestelde factor te klein, te groot, acceptabel dan wel precies goed zijn. * Undo : Voor het ongedaan maken van de laatste edit-actie en een extra Undo functie voor het terughalen van het originele karakter. * Monitor : Monitor-venster om veranderingen in een karakter op een schaal 1:1 simultaan met de zoom-matrix te kunnen volgen. * Lijnen : LINE/ROUND: Het zetten (en ontzetten) van lijnen en cirkels/ ellipsen in dikten naar keuze. Ook de lijnstijl is te kiezen. Een reeks van getrokken beginpunten kan worden verbonden met een reeks van getrokken eindpunten. Op een kinderlijk eenvoudige wijze te bedienen. * Punten : De wijze waarop men zwarte en witte punten kan zetten met de muis in de zoom-matrix kan men kiezen (4 methoden) al naar gelang men gewend is. * Zoomstijl : De weergaven van de punten in de Zoom-matrix kan naar smaak worden ingesteld. (9 verschillende weergaven-stijlen). * Zoomfactor : De maten van vergroting in de Zoom is voor de horizontale en de vertikale as afzonderlijk instelbaar van factor 2 tot factor 32. Het vergroten van een karakter naar de Zoom-matrix geschied met de snelle LINE_A BITBLOCK transfer. Bij een horizontale factor van 8,16 of 32 wordt automatisch een nog snellere machinetaal routine aangeroepen die speciaal hiervoor is ontwikkeld. Bij grote font's wordt dit confort merkbaar, in het bijzonder tijdens het 'scrollen'. * Copiren : Op eenvoudige wijze kan een enkel karakter, een deel ervan of een serie karakters gecopierd worden. Hierbij mag het 'bron- font' een andere zijn dan het 'doel-font'. Bij verschillende maten van het font wordt gevraagd of er vergroot/verkleind of 'gepushed' moet worden. Ook kan men slechts delen van karakters copiren en/of karakters/delen mengen d.m.v de AREA functie en het instellen van de grafische mengmodus. * Wisselen : Met de SWAP functie kunnen karakters van positie ruilen. Dit kan zowel binnen een en hetzelfde font als tussen 2 afzonderlijk font's. (In het laatste geval kan er echter niet automatisch vergroot/verkleind worden.) * Uitlijnen : Voor het horizontaal en vertikaal uitlijnen van een enkel, meerdere karakters in serie of het gehele font wordt een ruim assortiment aan opties geboden onder de noemer ALIGMENT. * Verschuiven: Men kan op doeltreffende wijze een karakter, meerdere in serie of het gehele font 1 of meerdere punten in een te kiezen richting verschuiven. Voor het verschuiven van een enkel karakter kan men snel opereren met behulp van de cursortoetsen. Bijzonder praktisch is de mogelijkheid om een AREA te definiren om zo alleen een bepaald segment van een karakter te verschuiven (om b.v. punten in te voegen of weg te halen). * Wissen : Een segment uit een karakter wissen gaat eenvoudig door eerst een gebied te definiren en dan de HOME functie (of toets) te gebruiken. Men kan zo ook meerdere karakter doorlopen om overal waar nodig dat specifiek gedefinierde deel te wissen. Dit kan ook automatisch in serie of direct over het hele font. Natuurlijk kan men ook een karakter verwijderen met de DELETE functie (ook in serie of het hele font). Merk op dat bij het verwijderen van een karakter dit met de UNDO toets weer ongedaan is te maken. * Vullen : Met de FILL functie kan met gebieden in de matrix vullen met een patroon naar keuze. Indien een AREA wordt gedifinierd, dan wordt het vullen begrenst tot dit gebied. * Patroon : Een karakter, een deel eruit, een serie of het gehele font kan worden verknoopt met een patroon naar keuze met de PATTERN optie. Dit kan dienen voor het maken van effect-font's maar ook voor het maken van z.g. DRAFT font's voor matrix-printers om zo een snelle testuitdraai te kunnen maken. * Cursiveren : Met de CURSIVE (SKEW) functie kan men een enkel karakter, een deel ervan, een serie of het gehele font cursiveren. Zoals bijna iedere optie uit het ZEDIT-venster, kent ook de CURSIVE optie een hulp-menu dat te voorschijn komt als men met de rechter muisknop op de CURSIVE menu-button klikt. In dit menu stelt men dan in hoe en in welke mate het cursiveren dient te geschieden n ook vanaf en tot aan welk karakter. Dit menu is mogelijk het meest ingewikkelde. Een aanbeveling om er flink wat mee te experimenteren. * Verbuigen : Via de CURSIVE functie kan ook worden verbogen (BEND). Op beide functies (SKEW & BEND) zal later in deze korte handleiding nog worden teruggekomen. * Spiegelen : Een karakter, een deel, een serie of het gehele font kan zowel horizontaal als vertikaal gespiegeld worden. Merk op dat in samenhang met de ingestelde grafische modus en de AREA functie zeer veel nuttige, al dan niet effectvolle, functies ontstaan. * Verdikken : Met de optie BOLDEN kan een karakter, een deel, een serie of het gehele font in een te kiezen richting met een in te stellen hoeveelheid verdikt worden. * Verdunnen : Tegengesteld aan de BOLDEN functie, zorgt de LIGHT functie voor het verdunnen van een karakter, een deel ervan, een serie of het gehele font. * Contour : Met de OUTLINE functie kan men van een karakter, een deel ervan, een serie of het gehele font de contour als resultaat van deze functie overhouden. * Comprimeren: font's kunnen gecomprimeerd en gedecomprimeerd worden. Bij aanvraag van deze opties kan men aangeven volgens welke regel dit dient te geschieden. Het nut van deze opties hangt deels af van de wijze waarop het programma, waar u de gemaakte font's in gebruikt, omgaan met proportionele en niet proportionele font's. De UnCompress optie is ook handig voor het automatisch reduceren van de open ruimte tussen karakters/ versmallen van de spatiring (men kiest de regel dat volgens de breedte van de letters "M" en/of "W" gereduceerd moet worden. * Header info: De header informatie (de naar de gebruiker aangepaste en relevante versie) voor beide font's wordt in een apart venster geplaatst en kan dus altijd aanschouwd worden tijdens het editen. Het veranderen van de header specificaties gaat eenvoudig door met de linker muisknop ingedrukt op de gewenste regel te drukken (doordrukken). Met de toets sluit men de invoer af. Met of de rechter muisknop annuleert men. Indien veranderingen in de header tot verdere actie leidt, dan wordt hierover eerst door M2Font over bericht en om bevestiging gevraagd. * Studie : Met behulp van de SHOW BOTH HEADERS optie kan men de z.g. Header van een geladen font bestuderen. Er wordt zonder modificatie getoond wat daar aan informatie in zit. Dit heeft nut als men uit wil vissen waarom een bepaald font niet goed geladen wordt of niet goed uitwisselbaar is tussen diverse tekstverwerkers. (Er wordt nogal eens niet volgens de normen omgesprongen met de informatie die zich in de header bevindt en ervoor dient om het font correct te kunnen laden/gebruiken. Hier is vooral Atari schuldig aan door onvoldoende de regels van het spel met GEM font's degelijk te documenteren waardoor de programmeur er maar het beste van moet maken op basis van eigen onderzoek.) RESUMEREND ========== Het zal, na lezing van bovenstaande beknopte opsomming van de mogelijkheden, wel duidelijk zijn dat het volledig beschrijven van alle functie-toepassingen en mogelijke trucs een aanzienlijke handleiding zou vergen. Hoewel het wel een wens is dit te doen, ligt dit buiten het bestek van deze eerste PD uitgave van M2Font. Dit betekent niet dat in deze korte handleiding reeds alles is gezegd. In de komende hoofdstukken krijgt u nog een nadere omschrijving en handrijking. Alvorens over te gaan tot de korte handleiding vraag ik uw aandacht om een aantal principes van de grafische omgeving te doorgronden. GEM en ander ongemak ==================== Er zijn op zijn minst een paar zaken die u zult MOETEN weten om de voordelen van de in M2Font gebruikte eigen grafische omgeving te benutten. Sterker nog: als u niet op de hoogte bent van de uitgangspunten ervan kan dat een nadelig effect hebben (te meer daar het verschil op het eerste gezicht slechts cosmetisch lijkt te zijn). De term GEM, die u veel zult tegenkomen wanneer u op de Atari ST werkt, staat voor General Enviroment Manager. In het Nederlands betekent dat zoveel als: generale gebruikersomgeving regelaar/afhandelaar. Persoonlijk zou het liever willen omdopen tot Gedeponeerd Ergerlijk Monster en zeker Geen Echte Makker. Dit klinkt niet vriendelijk, maar bedenk dat er wordt verondersteld dat een besturingssysteem door een team van hoogopgeleide specialisten gemaakt zou worden. Ergens, zo rond 1 april, moet iets zijn mis gegaan. Hoe uit de farce GEM zich naar de gebruiker toe? Voor de leek is ondoenlijk om een onderscheid te kunnen maken tussen fouten die ter verantwoording komen van de programmeur van een bepaald programma of van de makers van het GEM als onderdeel van het TOS besturingssysteem. Afhankelijk van de wijze waarop u omgaat met vensters en dialogen die bij de meeste software onder GEM werken, kunt u last hebben van een, op z'n zachts gezegd, nogal onverwachte hartstil- stand van uw computer. In het bijzonder als u van menig bent dat de computer op u dient te wachten in plaats van andersom krijgt u te maken met een GEM dat uw neurose niet bij kan houden en vervolgens apathisch verstrikt raakt in uw opdrachten. Ik vermoed dat het systeem is getest onder het genot van softdrugs. Zoals u weet gaan onder invloed hiervan alle lichaamfuncties ietwat trager - zo ook het bewegen met de muis en het selecteren van opties. Bovenstaande omschrijving van calamiteiten met GEM betreft het vastlopen van het systeem als gevolg van onvoorziene omstandigheden/interrupties. Daarnaast onstaan ook de nodige vastlopers als gevolg van het tekort schieten van de programmeur die van het GEM gebruik maakt voor zijn programma. Een deel van deze fouten moet men niet altijd geheel op het conto schrijven van de programmeur. Ook de wijze waarop de GEM ontwikkelaars hun GEM hebben gemplementeerd kan hier mede schuldig aan zijn. Wat verder ook het exacte verband is tussen het GEM op zichzelf in samenhang met de programmeur die er gebruik van maakt, vast staat dat het GEM onvoldoende 'meegeeft' bij optredende fouten. GEM zegt: u was fout - u wordt gestrafd! Mogelijk heeft dit iets te maken met het feit dat het uit Amerika komt. In Nederland is men geneigd (slechts bij de gratie van traditie) te stellen: U was fout!!!! - heeft u daar iets op te zeggen? Een tweede aspect van GEM betreft de rigiditeit ervan. Het systeem staat maar een enkele interpretatie toe aangaande de weg van A naar B. Hierin dient men niet alleen het GEM als technisch gegeven beschouwen maar ook de filosofie erachter en de wijze waarop programmeurs dit klakkenloos overnemen. Uit gemakzucht, onvermogen of nog erger..... De filosofie achter GEM is blijkbaar bedacht om de eerste schreden op het pad met de computer onwaarschijnlijk eenvoudig te laten zijn. Hier wordt tot op zekere hoogte ook aan beantwoordt. Atari doet dat wat minder goed als Apple, maar het pricipe is eender (Digital Research heeft het gejat van Apple en Apple op zijn beurt weer van Xerox). Het resultaat is dat als u geen leek meer bent de irritatie over het systeem toeneemt. U groeit, maar het systeem is blijvend infantiel. Kenners roepen dan meteen UNIX als medicijn tegen alle pijn. Het doet er niet toe of u weet wat dat is, want de vraag is of met het venster-principe niet gewoon iets valt te maken dat ook voldoet aan eisen van de gevorderde. Over MultiTos zullen we maar helemaal niet hebben, want dat is alleen maar meer van dezelfde rommel, zonder dat er op fundamenteel gebied iets ter discussie is gesteld. Even over de besturing van opties door middel van het toetsenbord. De combinatie Control+O voor "Option" is snel geleerd en goed te onthouden. Ook is deze combinatie erg prettig als u met de rechterhand de muis bedient en uw vingers van uw linkerhand soepel wenst te houden omdat u al zo weinig beweging krijgt achter het beeldscherm. U heeft allang in de gaten dat ik graag mag fulmineren tegen het een of ander. Dat klopt. Een niet gering deel van mijn motief om zelf dingen te maken is de onvrede met het bestaande. Of dit tot iets leid dat beter is dan hetgeen waar tegen geargeerd wordt is nog maar de vraag. Nog meer te betwijfelen is of de grootste gemene deler het daar dan mee eens is. Een discussie is mooi. Nog mooier is het risico aangaan en ook met iets tastbaars te komen om een vergelijk mogelijk te maken. Dat is natuurlijk heel wat anders. Dan beginnen de problemen pas echt. Laat ik dan ook voorop stellen dat ik niet de pretentie heb een alles omvattende oplossing te bieden. Zoals reeds opgemerkt beoog ik met de tastbaarheid van M2Font slechts in zijn essentie te bewijzen dat de dingen niet per definitie onhandig en onvriendelijk hoeven te zijn. Als resultaat hiervan houd u daar een programma aan over. Nu u enigzins ingewijd bent in mijn motief, en al dan niet daar iets in herkent, kunnen we overgaan naar het resultaat van mijn onvrede. Aangezien het hier een Font-edit-programma betreft bent u bezig punten te zetten en weg te halen in een matrix die een karakter van uw letterset bevat. Vaak gebeurt het dat een punt wordt gezet om te kijken hoe dit er uit ziet. Meestal zullen allerlei punten worden gezet en weer worden weggehaald omdat ze niet de oplossing bieden voor wat u in uw hoofd heeft. Dat gaat als volgt: Zoom-venster activeren: flap flap flap, Punt zetten: flap, View-venster activeren om te zien hoe het er op schaal uitziet: flapper flap flap, Niet goed: Zoom-venster activeren: flap flap flap, Punt verwijderen: flap, Nieuwe punt zetten: flap, View-venster weer activeren: flapperdeflapflapflap, Nog niet goed: eens kijken hoe dat bij het andere font is gedaan: beweeg flap klik flap beweeg flapflapflapflap, haha weer terug: de rest kunt u zelf wel doordenken naar ik aanneem. Vervelend niet? Laten we eens beschouwen hoe dat in M2Font gaat: Punt zetten, kijken in monitor-venster hoe dat eruit ziet, punt weghalen, toets drukken om het karakter van het andere font de aanschouwen in de zoom-matrix, dezelfde toets weer drukken om het karakter waarmee u bezig was weer terug te krijgen in de Zoom. Niks flapflap. Essentieel voor het succes van deze methode is niet alleen de functionaliteit ervan maar ook de snelheid waarmee het uitgevoerd kan worden. Met andere woorden: het middel is alleen effectief als er geen verlies van snelheid optreedt. De enkele handelingen die u in uw hoofd heeft dienen in het concept van M2Font ook bereikt te worden door middel van slechts een paar handelingen. De visuele actie die dit tot gevolg heeft dient in verhouding te staan tot de omvang van de idee. !Een punt willen testen met als gevolg een beeldscherm dat op hol lijkt te slaan is onkies, slecht voor de maag en veroorzaakt een onprettig gevoel aan het hoofd. M2Window ======== Om het mogelijk te maken dat er geen huishoudelijke acties ondernomen hoeven te worden, zoals het activeren van een bepaald venster om daar iets in te gaan doen, zijn alle vensters in M2Font simultaan actief. Dit kunt u zien doordat, in tegenstelling tot GEM vensters, alle top-balken grijs zijn ingekleurd en ook alle scroll-balken getoond worden. Op het moment dat u ergens in een venster iets beroert, gaat het programma er van uit dat u daar iets wil doen en maakt vervolgens het venster intern actief, haalt het naar voren indien nodig n voert tevens direct uit wat u beoogde te doen. Dit bespaart, in het bijzonder in een matrix-edit situatie enorm veel muisklikken. De velen huishoudelijke muisklikken die men normaal in een GEM programma moet doen komen in M2Font dus niet ten laste van u. Dit concept is eenvoudig te bedenken, maar minder eenvoudig te implementeren omdat, als vensters elkaar overlappen er gemakkelijk contradicties kunnen onstaan in de beoordeling van wat de gebruiker beoogd. Voor een belangrijk deel zijn deze problemen opgelost door middel van het stellen van een bepaalde hierarische relatie tussen de veschillende vensters. Sommige vensters hebben dus, in geval van overlapping, een hogere preoriteit dan andere. Aan u dan ook de opdracht om te beseffen dat de toegevoegde intelligentie bedoeld is om in uw voordeel te werken, maar dat dit ook zijn grenzen kent. In verhouding tot andere software is hier weliswaar sprake intelligentie, maar in verhouding tot onze mensenlijke geest valt dit in het niet. Dus, niet van een kind dat zijn eerste woorden gaat spreken verwachten direct een volwaardig gesprek te kunnen voeren. Beschouw het als een kleine stap in de goede richting die direct productief gemaakt kan worden. Om dit concept te kunnen verwezelijken is geen gebruik gemaakt van GEM vensters. Ik heb het principe in zijn uiterlijkheid nagebootst maar intern worden er eigen routines gebruikt. Als grote voordeel van deze eigen routines kan nog gezegd worden dat er geen 'crash' kan onstaan als gevolg van huishoudelijkheden ermee. Als er onverhoopt visueel iets misgaat met de opbouw van de vensters dan is dit ook slechts visueel en eenvoudig herstelbaar door even een venster te verschuiven of op de stretch-button te klikken. Afhankelijk van uw smaak en oogscherpte kunt u de maat van de venster- attributen zelf bepalen. Door de balkmaten heel klein te maken krijgt u meer ruimte voor de inhoud van de vensters. De bediening van de vensters wordt dan wel iets moeilijker. Maar waarom zou de systeemontwerper de maat bepalen. Als er dan toch van die afschuwelijke vensters moeten zijn, laat het dan aan de gebruiker om te bepalen hoeveel plaats ze in beslag moeten nemen. De voordelen van M2Window t.o.v. GEM vensters: ---------------------------------------------- - Instelbare maatvoering van de attributen & balken. - Vensters mogen over de Desktop-menubar gelegd worden. - Gentergreerde bescherming tegen programmafouten waardoor een hartstilstand van het systeem als gevolg van venster-handelingen nagenoeg uitgesloten is. - Bij het stretchen: stretch-aanraakpunt-correctie. - Bij het verplaatsen: het venster wordt WYSIWYG verplaatst. - Stille anti-neurose grafische opbouw (overigens is dit niet een specifiek eigenschap van de M2Window handler op zichzelf maar veeleer de wijze waarop deze verder is gemplementeerd in het geheel). - Geen flauwe kul (grow/shrink boxen) wanneer vensters worden geopend of gesloten. Nadelen ------- - Nog geen relatieve correctie van het aanraakpunt/maat bij het verplaatsen van de vensters (hierdoor kan het zijn dat de beweging van het venster soms even niet de muis lijkt te volgen wanneer men aan de rand van het beeldscherm zit). - Gewenning aan M2Window kan leiden tot het met herhaling pogen hetzelfde met vensters te doen in programma's die met GEM vensters draaien. (ook dit is niet een specifiek eigenschap van de M2Window handler op zichzelf maar veeleer debet aan de wijze waarop het gemplementeerd is in het geheel). Nadelen (?) ----------- - Vensters kunnen niet buiten de beeldscherm geplaatst worden. M2Desk ====== In M2Font wordt ook het Desktop Drop Down Menu principe van GEM op een eigen wijze nagebootst. Het verschil is wederom voor de gebruiker op het eerste gezicht slechts cosmetisch. De voordelen van M2Desk t.o.v. de GEM versie: --------------------------------------------- - Instelbare maatvoering. - Keuze tussen het Drop-Down en Pop-Up principe. - Enter ook mogelijk via de toetsen
(twee maal =Drop Desk) - Exit ook d.m.v. de rechter muisknop, de of toets. M2Dialog ======== In M2Font zijn ook de GEM Alerts/Dialogen en Menu mogelijkheden door eigen routines vervangen. De voordelen van M2Dialog t.o.v. GEM menu's ------------------------------------------- - De omranding kan naar smaak worden gekozen. - Snellere opbouw (behalve wanneer het een uitgebreide tekstgevulde info Alert betreft). - Exit ook via de rechter muisknop of de toets. - Naar keuze kunnen de dialogen en alerts in het centrum verschijnen of onder de huidige muispositie (Smart functie). - Een default selectie met de toets die ALTIJD werkt en niet zoals bij GEM zo nu en dan. - Ontkenning en bevestiging bij [NO] [YES] alerts in meerdere talen en zonder gebruik van de Control-toets: b.v. voor "NO","NON","NEE","NEI" "NJET","NEIN" en voor "YES", voor "JA", voor "DA", voor "SI" en voor "OUI" - Door op het tekstgedeelte te klikken bij alerts en dialogen worden deze verborgen totdat de muis wordt losgelaten. Hierdoor wordt de achtergrond zichtbaar (hier zou informatie achter kunnen zitten die men nodig heeft om de dialoog juist te kunnen beantwoorden). M2Input ======= Wanneer een getalswaarde of tekst moet worden ingegeven in een venster, dialoog of submenu via het toetsenbord, dan wordt niet de TOS invoer gebruikt. Ook hier geldt dat er een eigen routine voor in de plaats is gezet die de TOS invoer grotendeels nabootst, maar met enkele extra voordelen. Voordelen van M2Input --------------------- -Undo is mogelijk met de toets (hierdoor wordt de oorspronkelijke waarde/tekst weer geplaatst. -Exit ook met de rechter muisknop (hiedoor kan bij het oproepen van een invoer-dialoog met de muis deze ook weer direct met de muis verlaten worden. Dit is handig wanneer men slechts even wil kijken i.p.v wil invoeren. Ook kan hierdoor ook direct de cursor op de invoer-positie geplaatst worden zonder dit nog eens extra zelf te moeten doen. Noot: Bij invoer wordt altijd in de OVERWRITE modus gewerkt. Met de INSERT ----- toets kan men tekens invoegen. Ook kunnen speciale tekens niet via de normale Alternate-toets worden ingevoerd (dit moet geschieden via Alternate+ASCII indexnummer op het numerieke toetsenbord. Dit wordt mogelijk in een latere versie instelbaar gemaakt. Venster hierarchie ----------------- Indien men vensters over elkaar gaat leggen, al dan niet gedeeltelijk, dan wordt het belangrijk te beseffen dat er een zekere hierarchie bestaat tussen de vensters. Dit is, zoals reeds eerder opgemerkt, deels noodzakelijk voor het automatisch herkennen van de door u gewenste actie bij aanraking van bepaalde delen/opties in de vensters. Deze hierarchie valt als volgt in een paar vuistregels samen te vatten: -Het monitor-venster wordt, indien geopend, altijd boven alle andere vensters geplaatst. -Als functies in vensters exact over elkaar liggen geldt de regel dat eerst gekeken wordt naar de bij het momentele actieve font behorende venster: Dus als font 1 actief is en Info window 2 ligt over Info window 1, dan zal bij het klikken van een invoer regel op window Info 2 toch Info 1 naar voren gehaald worden. (merk op dat het meest actieve font het font is waarmee men het laatst een actie heeft ondernomen. Het bepalen van het actuele font gaat dus automatisch). -Bij de opbouw van het totale scherm (alle vensters worden opnieuw geplaatst) geldt dat: het actuele venster boven wordt geplaatst, daaronder het voorlaatste actuele venster, daaronder het View-venster van het actuele font, dan het daarbij behorende Info-venster, vervolgens het View- venster van het niet actuele font en het bijbehorende Info-venster. als laagste in de hierarchie (wat dus het diepst achterliggend wordt geplaats) zijn het Picture en Art-venster. Merk op dat deze informatie pas van belang wordt indien men de vensters elkaar laat overlappen. Bij niet overlappende vensters merkt men in het geheel niets van de hierarchie. -De detectie van de venster-attributen levert ingeval van overlappende venster alleen dan "problemen" op als de desbetreffende attributen ook over elkaar liggen. De automatische herkenning van gewenste gebeurtenissen met en in vensters behoort tot de 'highlight' van M2Font, maar is tevens het moeilijkst om naar behoren te implementeren. De moeilijkheid betreft hier niet de programmeer- technische kant. De conceptie (willekeurig welke) zorgt voor problemen. Dit omdat wij niet allemaal dezelfde logica aanleggen n omdat onze logica zelden geheel consistent is. In M2Font is eerst een strak concept bedacht en vervolgens zijn er, door er veel mee te werken, uitzonderingsregels gestelt. Dit alles is enkel en alleen getoetst door mij en derhalve dus gebaseerd op mijn logica. Ik ga er van uit dat in hoofdlijnen voor iedereen deze logica met mij te delen is, maar aangaande de details zullen er ongetwijfeld verschillen zijn. In hoeverre deze verschillen leiden tot een prominente irritatie bij het werken met M2Font is mij niet bekend. Men zou kunnen voor- stellen om de automatische herkenning uitschakelbaar te maken. Dit is echter vanwege een conceptueel argument door mij niet toegestaan. De intentie van M2Font is juist gebruikers zwart-wit met het systeem te confronteren. Aangezien ik geen enkel commerciel belang bij de uitgaven van M2Font heb meen ik mij deze autocratische opstelling te kunnen permiteren. ******************************** * M2Font versie 1.14 * * Handleiding in kort bestek * * Marc Marc April 1994 * ******************************** GEBRUIK VAN DE MUISKNOPPEN -------------------------- Alle normale selecties doet men met de Linker muisknop. In een aantal gevallen kunt u met de Rechter muisknop een menu te voorschijn halen. Dit is met name het geval in het ZEDIT-venster waarbij de linkerknop betekent dat het actueel in de Zoom geplaatste karakter wordt bewerkt en met de rechter knop een menu te voorschijn komt waarin men kan aangeven dat er een hele serie moeten worden bewerkt. Bij het zetten van punten in de Zoom-matrix hebben beide muisknoppen de functie van de kleurkeuze (dit hangt ook af van welke optie men hiervoor heeft gekozen). In alle andere gevallen betekent het gebruiken van de rechter knop het annuleren van een bepaalde situatie. Vaak wordt er geschreven dat u ergens "op klikken" moet. Hiermee wordt bedoeld dat u de muiswijzer op de betreffende positie dient te brengen en vervolgens de linker muisknop moet indrukken. TOETSENBORD ----------- In deze handleiding worden toetsen aangegeven door het opschrift ervan tussen "<" en ">" te plaatsen. Bijvoorbeeld als het gaat om het aanslaan van de Return-toets. Staan er twee letters tussen de haken, dan wordt bedoeld dat men deze toetsen achter elkaar moet aanslaan. Bijvoorbeeld
als zijnde twee maal achter elkaar de D-toets, om zo de DeskTop menubar naar beneden te laten komen. Indien de notatie tot verwarring kan leiden wordt deze anders (woordelijk) aangegeven. Als u tijdens het aanslaan van een toets de Control toets ingedrukt dient te houden, dan wordt dit aangegeven met het "" symbool voorafgaand aan de toets die moet worden aangeslagen. Als de Shift of Alternate toets ingedrukt dient te worden dan wordt dit woordelijk aangegeven in vorm van bijvoorbeeld Alt+ of Shift+. In het programma wordt de shift toets aangegeven met een klein zwart bolletje, de Alternate toets met een kleine ongedraaide letter "u". HET ACTUELE FONT ---------------- Voor een aantal acties, in het bijzonder welke het gehele font betreffen, wordt het actuele font verondersteld dat bewerkt moet worden. Dialogen die opkomen voor het kiezen van bepaalde opties of ter bevestiging melden altijd in de kop om welke van de twee font het gaat (welk font dus als het actuele wordt gezien). Het actuele font is het font waarmee u het laatst iets heeft gedaan. Dit kan ook het slechts bewegen van een venster zijn dat in context staat tot een der font's. Zo wordt bijvoorbeeld bij het verplaatsen van het INFO 2 venster Font 2 actueel (ook als in het Zoom-venster een karakter van font 1 geladen is). zet u nu bijvoorbeeld een punt in de matrix waar een karakter van font 1 is geladen, dan wordt font 1 weer actueel. Als een dialoog bij bewerking van een font niet het gewenste font aangeeft, dan verlaat u de dialoog met [CANCEL] en gaat er voor zorgen dat het programma het andere font als actueel gaat zien. Dit kunt u doen door: -Een karakter van het juiste font in de Zoom te plaatsen -Door even op het juiste View of Info venster te klikken -Door gevolgd door <1> of <2> op het toetsenbord aan te slaan. -Door twee maal aan te slaan (Font Flip). HET PLAATSEN VAN EEN KARAKTER IN DE ZOOM-MATRIX ----------------------------------------------- Dit kan op verschillende manieren: *Muis: - klik op het karakter in een View-venster. U zult dan een indicatie zien verschijnen ten teken van de voorselectie. Klik nu nogmaals op hetzelfde karakter om de keuze definitief te maken. - Klik dubbel op het gewenste karakter. - Maak een "doordruk-klik". Dit betekent dat u de muisknop enige tijd ingedrukt houdt. *Toetsen:- Klik op de infobalk van het View-venster waar het betreffende karakter zich bevindt. Er veschijnt de tekst: "? any key selects". Nu kan u een toets, al dan niet tesamen met een der speciale toetsen aanslaan om een karakter te selecteren. De index van het karakter dat geplaatst wordt, wordt afgeleid uit de toetsenbord- tabel. Dit is de standaardtabel of een door u geladen tabel. ..I.p.v met de muis op de infobalk te klikken kan ook de toets- combinatie Shift+ gebruikt worden. -Druk de Alternate toets in en sla aan. Houd de Alternate toets ingedrukt en tik dan op het numerieke toetsenbord een nummer tussen 0 en 255 in. Laat dan pas de Alternate toets los. Het nummer dat u intikt is het index nummer van het karakter in het View-venster. Het eerste karakter draagt het nummer dat is aangegeven in het Info-venster onder ASC...First. In geval van een normale karakter- set tikt u feitelijk gewoon het ASCII indentificatienummer in (b.v. 65 voor "A"). -De toetsen <-> en <+> (eigenlijk <=>) laden de Zoom-matrix met het karakter dat respektievelijk voor of na het actuele karakter in de Zoom-matrix is geplaatst. Dit is dus handig om sequentieel door de karakterset te lopen. -Met <`> kan men de Zoom laden met het karakter uit het andere font. Dit is handig om twee tekens te vergelijken die zich op dezelfde positie maar in verschillende font's bevinden. Merk op dat de keuze voor deze toetscode enkel is ingegeven vanwegen het feit dat men zo de drie functies in n handstand op een lichte wijze kan bedienen. De breedte instelling van een karakter in de Zoom ------------------------------------------------- Het pijltje dat vertikaal aan de top van de zoom-matrix staat geeft aan wat de breedte van het karakter is. Dit kan dus smaller zijn dan de maximaal toege- stane breedte die met de WIDTH parameter in het Info-venster is vastgelegd. Het karakter kan niet breder zijn als deze waarde. Om de breedte-definitie te wijzigen kan met met de muis de breedte-aanduiding (het pijltje) 'oppakken' en op een andere positie plaatsen. Men mag dit doen op een wijze naar eigen inzicht. Dat wil zeggen: * Pijltje 'slepen'. * dubbelklikken op een ander positie. * Eerst een keer klikken om de edit-indicatie af te wachten en dan op een bepaalde positie klikken om de breedte instelling te zetten. * U mag ook tussen het Enter-moment van deze optie en de afsluiting overgaan tot een invoerwaarde met het toetsenbord: U houd dan de Alternate toets indrukt terwijl u een getal invoerd op het numerieke toetsenbord. Na het loslaten van de Alternate toets wordt de waarde overgenomen. * Alternate U kunt ook de breedte edit invoer aanspreken door de toetscombinatie Alternate+ te gebruiken. U houd dan tijdens het aanslaan van de gewoon de Alternate toets ingedrukt en voert het getal op het numerieke toetsenbord in. Na het intikken van het nummer laat u de toets los. * Hiermee roept de breedte-invoer aan met de invoercursor op de Infobalk van het Zoom-venster. U kunt dan met zowel het numerieke toetsenbord als de normale cijfertoetsen een getal invoeren dat als breedte van het karakter moet worden aangenomen. U kunt uw invoer af sluiten met of . werken met het numerieke toetsenbord (Nkb) heeft als voordeel dat dit sneller werkt (zeker als u een getrainde rekenmachine beoefenaar bent.) U roept aan met , tikt een getal en sluit weer af met . Ook kunt u met de muis op de Infobalk klikken van het Zoom-venster om zo de Breedte-invoer te activeren. Merk op dat als het Zoom-venster niet aanwezig is, de invoer geschied via het View-venster van het font waar het Zoom-karakter vandaan komt. Als ook het View-venster niet is geopend, dan kan er geen invoer plaats vinden met deze optie. In dat geval moet u gebruik maken van de Alternate invoer functie omdat die ook `blind' gebruikt kan worden. <-> Nkb Verlaag de breedte met 1. Vermits deze niet reeds op "0" staat. <+> Nkb Verhoog de Breedte met 1. Vermits niet reeds de maximale breedte is ingesteld. Merk op dat bij het verlagen van de breedte er in de Zoom en monitor een stukje van het karakter wordt afgesneden en dat bij de overdracht naar het View-venster ook dat karakter het stukje zal missen, maar dat in het geheugen dit nog bestaat en dus weer gewoon te voorschijn komt als men de breedte weer verhoogd. Anders wordt het wanneer men van teken gaat wisselen. Dan gaat het stukje definitief verloren. Zoom & View-vensters -------------------- Als u een bepaald karakter in de Zoom geladen heeft, wil dat nog niet zeggen dat dit karakter ook zichtbaar is in het View-venster. Het kan zijn dat het buiten het View-vensterbeeld valt als gevolg van handelingen met het View- venster of dat u het karakter in de Zoom geladen had middels de toets- commando's, zonder dat het op dat moment zichtbaar was. Het zal voorkomen dat u het karakter ook zichtbaar wenst te hebben in het het View-venster. U moet dan in het venster scrollen om te zoeken waar het staat. Bij kleine font's kan er veel in het venster staan, maar door de klein- heid kan het zoeken bemoeilijkt worden. Bij grote font's past er weinig in het venster en moet u lang scrollen. Om het gemak te dienen zijn een paar toetscommando's bedacht: <7> : Zoek en knipper in het actuele View-venster. <8> : Join : beide View-venster <9> : Join : het andere View-venster <0> : Join : het 'Zoom View-venster' <7> Zoek en knipper: Als de index van het karakter uit de Zoom zich in het veld van het actuele View-venster bevindt, dan zal een knipper indicatie worden ingeschakeld. Hierdoor kunt u snel zien of het karakter zich in het actuele View-venster bevindt. <8> Join: beide View-vensters Beide View-vensters zullen op dusdanige wijze automatisch 'gescrolled' worden dat het Zoom-karakter zich binnen de venstervelden zullen bevinden. Hierbij geldt dat, de rij waarop het karakter zich bevindt bovenaan te zien zal zijn onder voorbehoud van de maximale 'scroll-hoogte'. Het kan dus zijn dat het karakter zich na het uitvoeren van deze scroll-functie niet op de bovenste rij veschijnt maar op de onderste omdat er niet lager 'gescrolled' kan worden. <9> Join: het andere View-venster Zoals <8>, maar dan voor het View-venster waar het in de Zoom geladen karakter NIET vandaan komt. <0> Join: het 'Zoom-venster' Zoals <8>, maar dan alleen voor het View-venster waar de oorsprong ligt van het karakter dat in de Zoom is geladen. U kunt deze functie ook met aanspreken. Merk op dat de toetsligging voor bovengenoemde functies zijn gekozen op basis van het feit dat zij naast de Zoom functies <-><+><`> liggen. Uitgaande dat u met uw rechterhand de muis bedient, legt u uw linkerhand op de bovenste rij toetsen met de pink op de <9>. Zo kunt u de functies allemaal bereiken zonder de hand te moeten verplaatsen. Na wat oefening zult u merken dat u niet meer hoeft te kijken. U positioneert uw hand correct en doet wat een muzikant ook doet op een instrument. U voelt wat u doet en kan de ogen gericht houden op de Zoom. Het kan zijn dat u nog niet doordrongen bent geraakt van het belang van deze functies. Daarom het volgende voorbeeld: van alle karakters in een printerfont moet een friemel verwijderd worden. De hele set moet worden doorlopen en tevens wenst u tussentijds te relateren aan het schermfont. Eerst stelt u alle vensters zo in dat deze optimaal staan qua overzicht en met zo min mogelijk overlappingen. U wenst te beginnen met de hoofdletters van het normale alfabet. U gebruikt Shift+ gevolgt door . Het "A" karakter verschijnt in de Zoom. U hand gaat in positie (pink op <9>). U had al gezien dat de "A" uit het schermfont was geplaatst omdat dat nu eenmaal door de omstandigheden vooraf als actuele font was verworden. U beweegt slechts lichtelijk uw wijsvinger en slaat <`> aan om de "A" uit het printer- font te laden. Ook staat door omstandigheden de "A" niet zichtbaar in het View-venster van het printerfont. Druk met de ringvinger <0> om dit probleem op te lossen. Met de muis haalt u in de Zoom weg wat u weg wenst (in het Monitor-venster volgt u het resultaat op schaal) en dan drukt u met uw wijsvinger op <+> (eigenlijk <=>). Het resultaat hiervan is dat de bewerking van de "A" wordt overgebracht (Auto-store) en het volgende karakter in de zoom wordt geplaatst (de "B"). Op het moment dat de "B" in de Zoom komt krijgt u toch nog een andere gedachte over de "A". U drukt met uw middelvinger op de <-> en de "A" komt weer terug. U besluit eerst eens te gaan kijken hoe een "A" met een accent eruit ziet. Deze is niet zichtbaar in het printerfont View- venster. U kunt uw hand van de toetsen weghalen om de d.m.v. toets-invoer deze accent-"A" in de zoom te krijgen of u kan gaan scrollen in het View-venster, maar het kan eventueel handiger. Het is waarschijnlijk dat bij een betrekkelijk klein font het gezochte karakter wel zichtbaar is in het View- venster van het schermfont, of anders met een snelle scroll-balk beweging zichtbaar te maken is. U selecteert gewoon die "A" in het schermfont View- venster en drukt meteen op <`> om met de versie van het printerfont te wisselen (want die wilde u uiteindelijk). Ook wenst u te zien waar in het printerfont View-venster dit karakter staat. Met de Ringvinger <0> indrukken en er zal door M2Font zo 'gescrolled' worden zodat deze in het venster past. Maar u ziet niet direct waar. U draait de pink 30 graden naar links en komt terecht op de <7> die u indrukt. Nu gaat het karakter dat u zoekt flikkeren. U kijkt en ziet en wenst weer terug te gaan naar de gewone "A". U kunt nu dezelfde korte weg bewandelen door de "A" te kiezen in het schermfont View- venster en vervolgens met <`> naar het printerfont te wisselen. U ziet dat wat u had gedaan in orde was en drukt <+> om over te gaan naar de "B" en drukt vervolgens op <0> om het printerfont View-venster te laten scrollen zodat de "B" ook zichtbaar wordt in het View-venster. Dan besluit u eerst eens te kijken naar de letter "D". U drukt twee keer <+> en de "D" staat in de Zoom. Dit was slechts een van de omstandigheden waarin de <7,8,9,0,-,+,`,> codes een enorm gemak opleveren. Als u dit voor de eerste keer leest, vind u het misschien complex. Dat is natuurlijk niet verwonderlijk omdat u dit namelijk leest! U moet het DOEN om erachter te komen dat het eenvoudiger werkt dan dat u nu denkt. U mag het ook laten voor wat het is en alles met de muis selecteren. Ik kom u dan wel weer tegen op deze regels als u de ervaring heeft gehad wat het is om een font intensief te moeten bewerken. De DeskTop menubar in volgorde van links naar rechts / boven naar onder: ======================================================================== === DESK === ------------ * ACCESSORY *** Om eventueel geladen accessories te kunnen bereiken. M2Desk wordt vervangen door de GEM DeskTop menubar. Via de RETURN TO MAIN MENU optie kan weer teruggekeerd worden naar M2Font. LET OP! Als een accessory een puinhoop achterlaat, intern in het besturings- systeem hoeft dit niet direct merkbaar te zijn. Het kan zijn dat dit zich pas later gaat wreken bij het aanspreken van een optie van uit M2Font. Ik garandeer dan ook op geen enkele wijze een goede werking van M2Font als u accessories gebruikt. * ABOUT & INFO *** Geeft het versienummer weer, het effectieve vrije geheugen en de hoeveelheid geheugen die de font's binnen het programma innemen. * Marc Marc MDA *** Opent een venster waar kunst in wordt gecomponeerd. * M2Desk Pop *** Hiermee stelt men in of de Desk menubar direct naar beneden zal vallen wanneer de muis bovenaan staat (Drop) of dat er eerst op de bovenrand geklikt dient te worden (Pop). * M2Desk Hight *** Voor het instellen van de maatvoering van de DeskTop menubar. Het vertikale bereik loopt van 8 (zeer klein) tot 26 (zeer groot) punten per optie. * M2Dialog Smart *** als deze optie aanstaat zal het programma de meeste alerts en dialogen onder de muispositie plaatsen. Als de optie uit staat, dan zullen deze altijd in het centrum geplaatst worden * M2Dialog Style *** Voor het instellen van de omrandingsstijl van alerts en dialogen. De submenu's worden hierdoor niet beinvloed. * M2Window Style *** Voor het instellen van de venster-maatvoering. Loopt van 9 tot 15 punts. * Time & Date *** Laat een dialoog verschijnen met de cursor reeds klaar voor het invoeren van de tijd. Men edit deze of drukt om de cursor naar de Datum edit regel te verplaatsen. Bij de tweede wordt de dialoog verlaten. Om de dialoog zonder invoer te verlaten kan de rechter muisknop gebruikt worden of twee keer de toets gedrukt worden. Men kan ook de toets gebruiken om de dialoog direct te verlaten zonder dat eventueel veranderde waarden worden overgenomen. * Clock *** Bepaald of de tijdsaanduiding wordt getoond. Als deze aanwezig kan men de tijd instellen door direct op de display te klikken i.p.v de optie Time & Date via de Desk menubar te benutten. * Blitter *** Schakelt de Blitter, indien aanwezig, aan of uit. Als een Blitter aanwezig is wordt deze bij de opstart van M2Font automatisch aangezet (mocht deze uit staan). Als u de blitter uitzet, dan moet u rekening houden dat alle grafische opdrachten langzamer zullen gaan. Feitelijk is het niet de bedoeling dat u de blitter uitschakelt. De optie is ingebouwd opdat ik kan testen of de grafische opdrachten ook voor niet-blittermachines qua snelheid acceptabel zijn. Hoewel M2Font niet volledig op de blitter steunt om een confortabele snelheid te halen, is de winst wel mooi meegenomen. * QUIT *** Om M2Font te verlaten en te terug te keren naar de GEM DeskTop. === FILE === ------------ * FONT 1 LOAD *** Font 2 Load *** Laden van font 1 of 2 in venster: 1 of 2 VIEW. Ook wordt in venster: 1 of 2 INFO de z.g. header informatie die voor de gebruiker van belang kan zijn geplaatst. Deze versie van M2Font kan alleen overweg met standaard GEM files waarin de font-data niet is gecomprimeerd. Als u font's wilt editen in M2Font die in en ander formaat zijn vastgelegd, dan dient u die eerst met een ander font-programma om te zetten in een normaal ongecomprimeerd GEM bestand. Dat het programma nog geen andere formaten aankan komt doordat ik niet de informatie heb over de opbouw ervan. Deze informatie is helaas niet wijd verspreid. Pas als M2Font aanslaat bij een voldoende grote groep, zal ik jacht gaan maken op deze informatie om de formaten te implementeren. Zeker als u meer dan een enkele punt in een font wil wijzigen loont het meer dan de moeite om de conversie-slag te maken omdat de verloren tijd zich meervoudig terug verdient bij het werken in M2Font (nog afgezien van de andere voordelen zoals het confort en het ontspannen grafische gedrag van M2Font). * FONT 1 SAVE *** Font 2 Save *** Voor het bewaren van Font 1&2. Dit kan alleen in het standaard GEM formaat. * LOAD & SAVE De file-namen worden voor beide font's afzonderlijk onthouden. Als u een font weer wegschrijft, dan verschijnt deze naam weer als voorgeselecteerde file- naam in de file-selector. U hoeft alleen maar een [OK] te geven als u onder dezelfde naam weer wenst te bewaren. Bij TOS versies vanaf 1.04 heeft de GEM file-selector de mogelijkheid om een extra commentaartekst in de kop te tonen. M2Font toont hier of het gaat om een LOAD of SAVE actie, het nummer 1 of 2 en de file-naam van oorsprong. Helaas ben ik er nog niet toegekomen om de GEM file-selector te 'wippen' en te vervangen door een eigen routine. Alternatieve file-selectoren zijn wijd verspreid en strekt tot aanbeveling om de verschillende typen eens te proberen. * Key Tab Load *** Voor het laden van de toetstabel. * Key Tab Save *** Voor het bewaren van de toetstabel. * Diskspace *** Voor het vragen naar de vrije diskruimte. Een dialoog zal vragen van welke partitie u de vrije ruimte wenst te weten. * Create Folder *** Voor het aanmaken van een nieuwe folder. Onbekend is of ten tijden van de eerste uitgaven van M2Font deze optie reeds zal zijn gemplementeerd. * Rename File *** Voor het veranderen van een filenaam. Onbekend is of ten tijde van de eerste uitgaven van M2Font deze optie reeds zal zijn gemplementeerd. * Kill File *** Voor het verwijderen van een file. Onbekend is of ten tijde van de eerste uitgaven van M2Font deze optie reeds zal zijn gemplementeerd. === EDIT === ------------ * show ZEDIT *** Opent/toont het ZEDIT-venster waarin alle bewerk-opties voor het font in zijn samengebracht. Zie ook het aparte hoofdstuk "ZEDIT". * show ZOOM *** Opent/toont het Zoom-venster. * show MONITOR *** Opent/toont het Monitor-venster * show FONT 1 *** Opent/toont het View-venster voor font 1. * show INFO 1 *** Opent/toont het Info-venster voor font 1. * show font 2 *** Opent het View-venster voor font 2. * show info 2 *** Opent/toont het Info-venster voor font 2. * ALIGNMENT *** voor het oproepen van de Alignment dialoog voor het bewerken van het gehele font. Of dit font Font 1 dan wel Font 2 is hangt af van welk font actueel is. In de kop van de dialoog is dit ook aangegeven. Lees ook het stukje over "Het Actuele font" in het begin van dit hoofdstuk. Lees ook verder bij de behandeling van de ZEDIT optie Align. * Compress Font *** Voor het comprimeren van het actuele font. Via een dialoog kunt u aangeven volgens welke methode (regel) dit moet geschieden. Het comprimeren betekent bijvoorbeeld dat overbodige ruimte van lege karakters worden weggehaald of dat lege kolommen links en/of right worden geminimaliseerd. De 5 mogelijke opties die de dialoog u biedt spreken voor zich. Merk op dat met deze optie iets anders bedoeld wordt dan het comprimeren van de fontdata als zijnde een gecomprimeerd bestand. Lees ook het stukje over "Het Actuele font" in het begin van dit hoofdstuk. * UnCompress Font *** Met deze optie kan men een proportioneel font omvormen tot een NIET- proportioneel font. De dialoog die zal verschijnen biedt u twee mogelijkheden. Met USE WIDTH xx wordt u gevraagd of de ingestelde maximale breedte van de karaktercel gebruikt moet worden. Deze breedte vind u in het Info-venster als zijnde de parameter WIDTH. de dialoog geeft ook aan op welke breedte deze is ingesteld. De tweede mogelijkheid is om het programma alle karakters aan te passen aan de breedte van de letter "M" of "W" (de breedste dient als referentie). Het programma maakt dan een analyse van alle breedtes van alle karakters in het font en brengt rapport uit wanneer er karakters worden gevonden die breder zijn als de "M of "W". U kunt dan aangeven of deze moeten worden afgesneden, weggegooid of worden verkleind. Karakters die kleiner zijn als de "M" of "W" referentie blijven onaangetast. Als u deze ook tot de "W" of "M" maat wenst te expanderen, dan vraagt u nogmaals de optie UnCompress aan en kiest dan USE WIDTH xx. Lees ook het stukje over "Het Actuele font" in het begin van dit hoofdstuk. * DELETE FONT *** Hiermee gooit u het actuele font onherroepbaar weg!. Een alert vraagt u of u hier zeker van bent. Merk op dat in de kop van de Alert staat aangegeven of het Font 1 dan wel Font 2 betreft. Lees ook het stukje over "Het Actuele font" in het begin van dit hoofdstuk. * DIDOT/PICA HELP Roept een alert op waarin informatie staat omtrent de hoogte van het font. Deze informatie heeft betrekking op de hoogte van het font in PUNTEN zoals dit binnen de drukkerswereld wordt gehanteerd. Lees meer hierover in het stuk "INFO-VENSTERS / HEADER PARAMETERS" === OPTIONS === --------------- * Auto-store info *** Geeft uitleg over de wijze van overname bij verandering van het karakter in de Zoom: Auto-store is geen optie die men aan/uit kan zetten. Deze is namelijk immer actief. De reden dat het wel vermeld wordt heeft te maken met het vermoeden dat men zich zal afvragen hoe veranderingen worden overgenomen. In M2Font werkt dit als volgt: een verandering in de Zoom wordt pas dan overgenomen nadat een keer op het View-venster van een der beiden font's is geklikt. Als men bezig is met het doorlopen van de karakterset en her en der veranderingen aanbrengt, dan selecteert men steeds een volgend karakter. Dit gaat met de muis of met de toetsen en impliceert tevens dat een eventuele verandering eerst wordt overgedragen alvorens een nieuw karakter in de Zoom wordt geladen. In veel gevallen wordt er ook een Auto-store geforceerd als men 'grootse' dingen gaat doen - anders dan een nieuw karakter selecteren (b.v. een tik-test gaat uitvoeren of het font gaat wegschrijven). Toch is het verstandig dat u zelf een Auto-store forceert door even op een der View-vensters te klikken als u zich met geheel andere zaken gaat bezig houden dan het selecteren van karakters. De reden hiervoor is dat het automatisch uitvoeren van een Auto-store alleen volledig gegarandeerd in de selectie situatie. In alle andere gevallen is de Auto- store ingevoegd op basis van de situaties die tijdens het testen werden tegen gekomen en waarin dit dus wenselijk geacht werdt. Een uitgevoerde Auto-store laat zich natuurlijk herkennen doordat de veranderingen die in de Zoom zijn gedaan worden over genomen in het View-venster. Zolang deze veranderingen nog niet zichtbaar zijn in het View-venster kan men met Shift+ het karakter uit het View-venster opnieuw laden in de Zoom en zo een aantal veranderingen ongedaan maken. De laatste verandering in de Zoom kan men altijd ongedaan maken met (dus zonder de Shift toets te gebruiken). * OnlyFontLoadScrew *** Geeft informatie over het niet aanwezig zijn van deze optie omdat in M2Font direkte technieken tot de beschikking staan om font's aan te passen. Het is een sneer naar andere programma's waarin niet twee font's volwaardig kunnen worden geladen en ook bij maatwijziging in de info-header eerst de fontdata wordt weggegooid en dus opnieuw moet worden geladen alvorens het font aangepast kan worden. In M2Font kan men naar hartenlust het font vergroten, verkleinen, expanderen en inkrimpen zonder de omslachtigheid van de data steeds te moeten herladen. Omdat ook beiden View n Info vensters gelijktijdig zichtbaar zijn kan men ook eenvoudig font's aan elkaar refereren. Ook kan een heel font of een aaneengesloten serie karakters naar een ander font worden overgeheveld waarbij de maatvoering van het Doel-font wordt genomen om de karakters die uit het Bron-font komen aan te passen. * Normal Keyboard *** als deze optie actief is, dan wordt bij de selectie van karakters via het toetsenbord uitgegaan van de standaard indeling die het toetsenbord van huis uit heeft. * Use key table *** Is deze optie actief, dan wordt de geladen toetsenbordtabel gebruikt bij het selecteren van karakters via het toetsenbord. Bij de opstart is reeds een default-tabel aanwezig die afwijkt van de standaard tabel. Om een tabel te laden kunt u de optie "Key Tab Load" onder de kop "FILE" gebruiken. * Edit key table *** Roept de toetsenbordtabel-editor op. In deze editor kunt u iedere gewenste toetsenbord indeling maken. De editor is ook op te roepen met de toetscombinatie en dan Het wegschrijven van een tabel kan met de optie "Key Tab Save" onder de kop "FILE". Hoe gaat u te werk bij het maken van een tabel? In de eerste plaats moet u zich afvragen of een verandering van de tabel goed doordacht is in context tot uw toepassing. Dit is belangrijk omdat een eenmaal aangeleerde norm vaak moeilijk is af te leren. Het dient een zekere logica te bevatten. Die logica zal voor iedereen anders zijn en in het bijzonder voor speciale en specialistische karaktersets kan geen recept gegeven worden. Wanneer het gaat om een letterset is ook de taal waarin men schrijft bepalend voor de indeling van de tabel. Voorts heeft u in bepaalde omstandigheden ook te maken met reeds bestaande conventies. De editor toont voor iedere relevante toets en combinaties met de speciale toetsen zoals Shift, Capslock, Alternate en combinaties welk karakter er is onder gebracht. Als u een toets drukt, dan zal een cursor op het karakter gaan staan dat ermee geactiveerd wordt volgens de tabel. Ook ziet u in de linker bovenhoek informatie verschijnen over de gedrukte toets en het kakakter dat er mee is opgeroepen. In een monitor-venster ziet u dit karakter ook afgebeeld zoals het in het font grafisch is vastgelegd. Merk op dat bij het weergeven van de tabel het interne systeem-font wordt gebruikt en deze aanduiding dus symbolisch is. In geval van de hoofdletter "A" bij een normale letterset zal deze symbolische weergave voor wat betreft de "A" overeen komen met wat zich als grafisch karakter in het font bevindt (indien de tabel voor de index die bij "A" hoort ook inderdaad de "A" heeft staan). I.p.v. het gebruiken van de toetsen kunt u ook met de muis ergens in de tabel een karakter aanklikken. Dit heeft hetzelfde effect: er wordt getoond welke codes hierbij horen en welk grafisch karakter uit het font ermee wordt opgeroepen. Om nu iets in de tabel te wijzigen gaat u als volgt te werk: Als voorbeeld: Druk Shift+<1> op het numerieke deel van het toetsenbord. In de monitor veschijnt naar verwachting de "1" uit het actuele font. In de linker- bovenhoek ziet u dat u inderdaad Shift+<1> heeft gedrukt. Dat u dit op het numeriek deel heeft aangeslagen kunt u zien doordat de cursor op de "1" wijst op de tweede rij die geldt voor de met Shift aangeslagen toetsen (wat u weer kunt herkennen doordat het woord "Shift" expliciet staat aan- gegeven aan de linker kant van de eerste rij voor alle Shift combinaties). Als nu nu naar de linker bovenhoek gaat, dan ziet u de regel die aangeduid wordt met het woord "Replace". Ook bevindt zich aldaar een hokje dat al dan niet zwart is ingekleurd. Als het hokje zwart is, dan wordt het huidige karakter ("1" dus) aangegeven als een karakter (ook "1"). Als het hokje niet zwart is, dan wordt het ASCII index nummer dat bij het karakter hoort aangegeven (in het geval van "1" is dat Nr 49). U kunt deze weergave-modus wijzigen door met de muis op het hokje te klikken. U wijzigt hiermee niet alleen de weergave maar ook de wijze waarop u middels een invoer een andere definitie van Shift+<1> maakt. Dit geschied dan namelijk met Alternate+getal op het numeriek toetsenbord. Ik ga ervan uit dat u de modus voor ASCII-nummer-invoer (hokje zwart) heeft aanstaan. Klik nu met de muis op het nummer (49) of gebruik ^ van edit. Een invoercursor zal verschijnen om een nieuw nummer te kunnen intikken. Tik nu in nummer 17 en sluit af met de of toets. Wat u nu gedaan heeft is het aanpassen van de toetsenbordtabel zodat bij het indrukken van Shift+<1> op het numerieke toetsenbord niet het normale cijfer "1" wordt gekozen maar de digitale versie hiervan (opgebouwd uit segmenten zoals bij een digitale klok). Uiteraard geldt dit alleen als het actuele font op positie 17 ook inderdaad dit karakter als grafisch teken heeft staan. Dit kunt u zien in het monitordeel alwaar het bijbehorende karakter uit het actuele font zal verschijnen. Nog een opmerking over de "Replace" invoer: Als u een nummer moet invoeren omdat de modus ASCII actief is (hokje zwart), dan wordt intern de eigen routine van M2Font voor de invoer gebruikt. Deze heeft zoals eerder reeds verteld een faciliteit die u kunt gebruiken als u tijdens invoer de kluts bent kwijt geraakt. Ook wordt er altijd in de Overwrite modus ingevoerd. Echter, wanneer u een karakter moet invoeren omdat de modus dit vereist (hokje blank), dan wordt de TOS invoer van het besturingssysteem gebruikt Deze kent de niet en kan in zowel Insert als Overwrite modus staan. Als u dit wil veranderen, dan dient u tijdens de invoer de combinatie ^ te gebruiken om van Insert naar Overwrite (en visa versa) om te schakelen. Bedenk dat in de Insert modus het actuele karakter eerst verwijderd moet worden alvorens een nieuwe kan worden ingetypt. Meer interactiviteit: --------------------- Een andere wijze om de toetstabel te wijzigen loopt via het monitorkader waar het werkelijke grafische karakter getoont wordt dat bij een index hoort. U ziet onderaan in dit veld drie buttons. Dit zijn de twee UP/DOWN buttons en de REPLACE button. Als u met de muis op de UP/DOWN buttons klikt, dan kunt u door het font heen 'rollen'. Het karakter dat in de monitor wordt geplaatst wordt dan als uitgangspunt genomen om de andere menu-instellingen aan te passen. Hier werkt men dus precies andersom. Met andere woorden: de oorzaak en het gevolg worden omgekeerd. Deze methode is vooral van belang voor de karakters die zich niet als normale letters van het alfabet laten omschrijven. Als u de button Replace actief maakt, dan wordt de keuze die u maakt in het monitorveld (met de UP/DOWN) buttons overgenomen als het Replace- karakter zodra u de Replace button weer uitzet. Ook verschijnt er een CANCEL button als u de Replace button aanzet om u de mogelijkheid te geven het karakter waarmee u aanving weer terug te halen. Het zal u duidelijk zijn dat het maken van een nieuwe tabel een intensief karwei is dat wel enige uren in beslag kan nemen. Ondanks de luxe die M2Font biedt moet ik zeggen dat ik er nog niet geheel tevreden over ben. Over meer interactiviteit wordt nagedacht (b.v. het kunnen scrollen door het font om nog beter op een visuele wijze te kunnen bepalen door welk karakter een bepaalde toetscombinatie moet worden vervangen). Vooralsnog moet u het doen met de huidige versie waarbij u naar verwachting regelmatig op en neer zult gaan van tabel-editor naar het hoofdscherm voor de nodige referenties. Desondanks, als ik in gedachte neem hoe andere programma's dat oplossen (als ze al de mogelijkheid bieden), is de huidige situatie niet al te slecht. * Width edit response *** Hiermee kunt u selecteren hoe de breedte-aanduiding in de Zoom zich zal verhouden tot het raster in de de matrix. Als u voor de "Masculine" aanduiding kiest, dan zullen de cijfers zich centreren op de matrixlijnen en wordt er begonnen met tellen vanaf "0". De breedte-pijl zal het cijfer dat de breedte aangeeft bedekken en de pijl zal met de punt op de laatst actieve matrixlijn wijzen. Kiest u voor een "Feminieme" weergave, dan zullen de cijfers zich centreren op de kolommen en wordt het tellen begonnen vanaf "1". de breedte-pijl wijst in dit geval op de de eerste niet-actieve kolom waardoor het cijfer dat voor de pijl staat leesbaar is als zijnde de breedte van het karakter. !Merk op dat in beide gevallen er geen tientallen worden aangegeven. * Monitor Bounding *** Voor het aan of uitschakelen van een omranding van het karakter dat in het monitor-venster wordt geplaatst. Deze omranding geeft de celmaat aan die bij het karakter hoort. * AREA on/off *** Voor het in en uitschakelen van de AREA definitie. Activering kan ook met ^ en de-activering met ^. Zie ook het hoofdstuk "AREA". * Select Area *** Roept de dialoog op waarin u 1 uit de 10 mogelijke Area definities kunt kiezen om deze te gebruiken of opnieuw te definiren. De selectie-dialoog kan ook opgeroepen worden met Shift+ Zie ook het hoofdstuk "AREA". * Define AREA *** Verzoek tot het herdefiniren van de actueel gekozen AREA. Het starten van het definitieprotocol kan ook met ^. Zie ook het hoofdstuk "AREA". * area option info *** Enige "on board" uitleg over de AREA option. === FORMATS === --------------- * GEM *** Op dit moment het enige formaat waarin font's kunnen worden gelezen en geschreven. Met nadruk zij vermeld dat alleen NIET-gecomprimeerde bestanden kunnen worden gelezen. Ook dient het om een z.g. 8080 format te gaan (wat meestal het geval is). Indien men GEM gecomprimeerde bestanden of andere formaten heeft en deze wil bewerken in M2Font, dan dienen deze eerst worden omgezet met een font- programma dat deze faciliteiten bied. De reden dat andere formaten, die gebruik maken van een speciale data opbouw, niet worden ondersteund is enkel debet aan het feit dat in mijn hele literatuurbestand niets over de opbouw terug is te vinden anders dan wat algemene informatie (onvoldoende om mee aan de slag te kunnen). Het zal ongetwijfeld zo zijn dat deze informatie ergens beschikbaar is en voor een eventueel te maken vervolgversie zal hier ook achteraan gegaan worden. Echter, niet alleen de fundamentele opbouw van de files is belangrijk, ook de wijze waarop de programmatuur, waarin u de font's gebruikt, de files gemplementeerd heeft is van belang. Zoals u misschien wel weet zijn handleidingen van deze programma's hier zelden duidelijk in. Men volstaat meestal met wat algemene informatie die voor een programmeur nauwelijks enige waarde heeft en voor de leek op een andere wijze nietszeggend is. Getuigen het feit dat er nogal wat klachten zijn over de uitwisselbaarheid van font's tussen de diverse font-edit en tekst- programma's mag men concluderen dat er verschillend wordt gedacht over de opbouw en interpretatie van zelfs eenzelfde formaat. In M2Font kunnen genteresseerde de z.g. header-info aanschouwen zoals die geldig is voor GEM font's. === EXTRA's === --------------- * Show Picture *** Opent/toont het Picture-venster. * Load Picture *** Hiermee kan een plaatje geladen worden in het Picture-venster. De volgend formaten worden ondersteund: -GEM .IMG monochroom tot 640x400 pixels -DEGAS .PI3 zowel de 32034 als de 32066 formaten -DEGAS .PC3 gecomprimeerd. -STAD gecomprimeerd -SCREENDUMPs van 32000 bytes -Een picture file van 32128 bytes wordt geladen volgens de NEOCHROME format. -Een plaatje of blok dat volgens de GFA BASIC GET/PUT methode is vastgelegd wordt ook als zodanig herkend. !Als geen van de bovengenoemde formaten worden herkend, dan wordt de file gewoon tot maximaal 32000 bytes recht-toe recht-aan ingeladen. Iedere file kan dus worden ingeladen, maar of dit er ook als een correct plaatje uit zal zien hangt er maar vanaf. !Merk op dat in het programma geen formaat-type-aanduiding aangegeven hoeft te worden. M2Font herkent automatisch het formaat voor zover deze voldoen aan de bovengenoemde mogelijkheden. Wat kunt u ermee? U vraagt zich misschien af tot welk doel het kunnen laden van plaatjes strekt. Het biedt de handige mogelijkheid om bijvoorbeeld een illustratie te kunnen laden waarin help-informatie staat over het M2Font programma. Op dit moment worden er ten minste 2 illustraties meegeleverd: te weten de file VALIGN.IMG en LROFFSET.IMG. Hierin wordt visueel uitleg gedaan over de vertikale uitlijning bij font's en over de linker en rechter Offset parameter uit het Info-venster. Laad het maar eens in en open het Picture- venster (de volgorde openen/laden maakt niet uit). Ook kan het zinvol zijn om bijvoorbeeld letters met een scanner uit een blad of krant te halen en dan de plaatjes in M2Font te laden en met de GRAB functie deze letters als karakters uit het plaatje te vissen. Uiteraard moet u hiervoor eerst de juiste fontmaten instellen. * Save Picture *** Hiermee kan de inhoud van het Picture-venster wordt weggeschreven als een plaatje. Er zijn drie formaten waarin dit kan: -Als SCREENDUMP -Als DEGAS .PI3 -Als GEM .IMG (gecomprimeerd) Welk formaat wordt gekozen hangt af van welke extensie u intikt in de file-selector. Tikt u .IMG of PI3 in, dan wordt er overeenkomstig dit formaat ingestelt. Bij iedere ander extensie wordt het als een SCREENDUMP behandeld. *** NOOT: U kunt ten alle tijden met de toetscombinatie ^ het beeldscherm fixeren in het Picture-venster als een plaatje. De inhoud van dit venster wordt dan natuurlijk overschreven. Dit kan erg handig zijn om: -Een klein font in zijn geheel of delen uit een font als in plaatje bij de hand te hebben gelijktijdig met het veranderen van dit font in het Zoom/View-venster. Het kan als een soort extra Undo buffer dienen (met de GRAB functie kunnen ze teruggehaald worden). Ook kan hiermee een font ter indicatie worden vastgehouden terwijl een ander in het View-window wordt geladen. Tekens kunnen dan eenvoudig op een alternatieve wijze worden overgeheveld met de GRAB functie in i.p.v met de COPY functie. De COPY functie vereist namelijk dat het font werkelijk geladen is in een View-venster. M2Font kent daarmee eigenlijk een capaciteit van twee en een half font i.p.v. twee. -De diverse tabellen die u kunt oproepen kunnen gefixeerd worden en dan van uit het hoofdprogramma in het venster bekeken worden tesamen met de andere vensters. -Als een tik-test wordt gefixeerd kan dit een simultaan te raadplegen informatiebron van uit het hoofdprogramma zijn om uitlijn-veranderingen in een font door te voeren. * TEST TEXT Font1 *** Voor het testen van font 1. Met een simpele proportionele tikmachine- simulator kunt u op een apart scherm tekst typen om te kijken of de font's naar tevredenheid zijn. Zowel visueel als qua toetstabel. Als tekens niet bestaan, dan wordt dit aangegeven middels het plaatsen van het bijbehorende karakter in het 6x6 systeem-font. Lees ook het stuk "TIK-TEST". * Test Text Font2 *** Zoals de bovenbeschreven optie, maar dan voor het tweede font. Lees ook het stuk "TIK-TEST". * SAVE Test text *** Hiermee kan een willekeurige ASCII tekstfile worden geladen om als test-tekst te dienen. Lees ook het stuk "TIK-TEST". * LOAD Test text *** De gemaakte test-tekst kan als ASCII file worden weggeschreven. Lees ook het stuk "TIK-TEST". * Free memory display *** Hiermee wordt het bruto vrije geheugen getoond. Indien M2Font op een 1 Megabyte machine wordt gebruikt, dan zit men krap met de hoeveelheid geheugen. Dit wordt vooral van belang bij grote font's. U dient in dit geval een oogje in het zeil te houden en ervoor te zorgen dat niet alle 9 vensters op vol formaat worden gezet. Natuurlijk vindt er in een aantal belangrijke situaties een controle plaats op het beschik- bare geheugen, maar dit is niet voor alle situaties/in alle omstandigheden zo. Dit heeft te maken dat er eigenlijk van uit wordt gegaan dat zij die met tekstverwerkers en font's aan de slag zijn, dit niet op een 1 Megabyte machine doen. De meeste tekstverwerkers werken ook niet confortabel met 1 Megabyte en komen in geval van grafische verwerking van illustraties al snel in de problemen. U wordt dus verondersteld over een 2 Megabyte machine te beschikken bij het werken met M2Font. Toch werkt M2Font op een 1 megabyte machine ook, maar men moet het vrije geheugen in de gaten houden. Als men onder de 150 kilobytes gaat komen, dan kan een dame u tranend komen berichten over een probleem met het geheugen indien u bepaalde acties wil ondernemen die meer geheugen nodig hebben. In het ergste geval heeft het systeem het niet in de gaten en wil het overgaan op een CRASH. Als dit gebeurt, dan merkt M2Font dit en gaat het nodige weg- gooien aan zaken die niet als het meest noodzakelijke gezien worden (alle vensters worden gesloten). U krijgt dan een foutmelding op een wit scherm met het verzoek als de donder uw font's te gaan wegschrijven. In principe kunt u dan weer gewoon doorgaan, maar ik raad het u af. M2Font heeft namelijk dan een reddingsoperatie geforceerd en na afhandeling de processor de opdracht gegeven te vergeten en te vergeven. Dat vergeten gaat aardig maar omtrent het vergeven durf ik u geen eenduidige garantie te geven. Beter is om uw computer-geheugen uit te breiden omdat 1 Megabyte in geval van tekst en font's toch wel echt achterhaald is. Daar komt bij: u dacht toch niet dat bepaalde luxe die M2Font u biedt niet een prijs zou hebben. Welnu, die prijs is voornamelijk een geheugen verslindende aangelegenheid. Dat had u al kunnen zien aan de grote van het programma. Dit is namelijk twee maal zo groot als veel andere programma's. Voorts heeft u reeds kunnen ontdekken dat M2Font zeer snel een LOAD en SAVE uitvoert. Dit kan omdat, in tegenstelling tot andere programma's, er niet wordt gerekend tijdens het laden of schrijven. Alvorens geschreven wordt, wordt eerst alles voorbereid in het geheugen en dan in een keer op de meest snelle wijze weggeschreven. Bij laden wordt eerste de ruwe file ingeladen en dan overgeheveld in een andere vorm die voor het programma beter te verwerken is en het ook mogelijk maakt dat u vrijelijk kunt manipuleren met het font. Ook heeft u kunnen constateren dat een venster abrupt naar voren wordt gehaald wanneer uw actie dat vereist en dat vensters echt over het beeld- scherm kunnen bewegen. De prijs hiervoor kan oplopen tot 300 Kilobytes, afhankelijk van de hoeveelheid vensters die open staan en de afmetingen. Wat is namelijk het geval? Alle openstaande vensters worden als een grafiek vastgelegd om hier op een snelle wijze mee te manipuleren. Ook wordt de ondergrond met zijn DeskTop menubar als een scherm in het geheugen opgeslagen om direct bij de opbouw van een nieuwe situatie geplaatst te kunnen worden. Voorts vinden nagenoeg veel grafische gebeurtenissen plaats op een parallelscherm ergens in het geheugen, heeft u een mogelijkheid die berekend is op grote font's en kent het zoom venster ook nog een "geheim" manipulatiescherm. Dit alles kost natuurlijk het nodige aan geheugen. En waarom ook niet? Bij het schrijven van M2Font is nu eenmaal niet veel aandacht besteed aan bezitters van slechts 1 Megabyte. Pas bij 2 Megabyte gaat het leuk worden. U kunt dan een ramdisk aanmaken van 500 kilobytes en deze met de nodige font's vullen. Ook kan deze ramdisk heel confortabel dienen als een snelle buffer om tussenresultaten in op te bergen. * GRAB *** Met deze functie kunt u delen van ieder deel binnen het beeldscherm 'pakken' als karakter. Zodra u de functie heeft geactiveerd (kan ook met ^), dan verschijnt er een box in de maat van het in de zoom geladen karakter. Deze beweegt u dan naar het gewenste deel op het scherm en met een linker muisknopklik 'grijpt' u het gewenste deel. Als u een nauwkeurige Grab wil uitvoeren kunt u het beste de box met gebruik van de muis zo goed als dat zonder gedoe kan op de gewenste positie zetten en dan overgaan op het gebruik van de muiscursorsturing met de Alternate+ cursortoetsen. Het is mogelijk dat het u nog nooit ter oren is gekomen maar GEM (jaja pas op!) bied de faciliteit om de muis ook via de toetsen te bedienen: Alternate + Cursortoetsen om de muiscursor per 8 pixels in een der richtingen te bewegen en als de Shift toets wordt ingehouden per 1 pixel. Ook kunnen de muisknoppen bedient worden, maar omdat het gebruikelijk is dat GEM bij alles wat het heeft te bieden wel een tas met bommen klaar heeft staan adviseer ik u met grote ernst hier van af te zien! In plaats daarvan gebruikt u de toets om het Grab commando te geven. Als u wil annuleren kunt u iedere andere toets indrukken. Nogmaals noem ik in kort bestek de idee achter een GRAB functie: -Het uit een willekeurig plaatje kunnen 'pakken' van karakters. -Uit een ander, reeds eerder geladen font dat als een plaatje was gefixeerd een karakter halen. -Zomaar ergens uit het beeldscherm iets nemen dat om wat voor reden dan ook van uw gading mocht zijn. === SPECIAL === --------------- * Save header font1 *** Dit is een gevaarlijke doch zeer handige optie. Indien u in een font slechts alleen even iets in de titel wil wijzigen of een kleinigheid in een paar andere parameters van de font header (lees Info venster), waarom zou u dan het gehele font moeten terugschrijven? Dat hoeft dus niet. U kunt in dat geval volstaan met enkel en alleen een gewijzigde versie van de header naar de file van oorsprong (!) te sturen. Ik leg hier zeker niet meer over uit dan dit. Als u niet goed doordrongen bent van de omstandigheden dat dit zonder gevaar kan, dan heeft u dit niet gelezen! * Save header font2 *** Zie boven, maar dan voor font 2. * Show both headers *** Deze optie was oorspronkelijk gemaakt om tijdens de programma-ontwikkeling van M2Font de informatie van de verschillende font's te bestuderen. Omdat u mogelijk ook interesse heeft heb ik het maar gelaten. De informatie die hiermee getoont wordt is van belang voor de specialist om bijvoorbeeld fouten in de header of een foutieve (niet conventionele) omgang hiermee door andere programma's te kunnen opsporen. Van deze informatie worden de gebruikergegevens zoals die in de Info-venster worden getoond afgeleid. Als u al wijzigingen heeft aangebracht in de de informatie van het Info-venster, dan is dat ook van invloed op de gegevens die via deze functie worden getoond. Dus, als u de pure header van een geladen file wil bestuderen, dan moet niets hebben veranderd via het Info-venster. U verlaat dit scherm door een klik met de rechter muisknop of een druk op de toets. * Offset table *** Ook dit is een specialistische aangelegenheid. De tabel toont het karakter met behulp van het systeem-font, de breedte die voor het karakter geldig is en de daaruit af te leiden Horizontal Offset Table (de afleiding geschied eigenlijk andersom). Als u niet weet wat dat is, volg dan toch even de volgende korte en beeldende uitleg. Enig inzicht kan altijd van pas komen. Stelt u zich de fontdata voor als een lange smalle strook papier. Maak er desnoods een van een velletje dat in de beurt ligt. Op deze strook staan alle karakters achter elkaar getekent. Zij die reeds een strook papier hebben opgedist mogen hier de tekst "hijklmopqrst" op schrijven. Als u zo deze letters bekijkt dan mag opvallen dat zij niet allen even breed zijn. De "m" is breder dan de "i" (als u arts bent heeft u goede redenen dit anders te laten zijn). Het is dus niet mogelijk om de strook papier in gelijke stukken te scheuren en op ieder stuk een afzonderlijke letter over te houden. Of het moet zo zijn dat de letter op een exact onderling gelijke afstand waren neergeschreven, los van de breedte ervan. Uitgaande dat dit niet het geval was en we de strook netjes willen scheiden, zal ieder stukje van de strook een verschillende maat krijgen. Welnu, in de Horizontale Offset Tabel staat aangegeven waar de strook voor iedere letter 'afgescheurd' dient te worden om een stukje over te houden waar de letter mooi op past. De tabel zegt dus hoeveel afstand vanaf het begint van de strook gemeten moet worden om het juiste scheidingspunt te vinden om de karakters in afzonderlijke eenheden te kunnen scheiden. In geval van de situatie dat alle karakters op een onderling gelijke afstand tot elkaar staan zal iedere stap in de tabel met een gelijke waarde liniar stijgen. Het font is dan waarschijnlijk van een niet proportioneel type. Bij proportionele font's kan ieder stap in de tabel een andere verhoging hebben omdat dit afhankelijk is van de ingestelde breedte van de tekens. De individuele breedtes van de tekens worden niet expliciet met de fontdata vastgelegd. Zij zitten impliciet 'verborgen' in de gegevens van de Horizontal Offset Table. M.a.w. zij kunnen hieruit afgeleid worden. Wat gebeurt er nu als er een foutje zit in deze informatie? Scheur die strook papier waar de letters "hijklmnopqrst" inmiddels wel op zullen staan maar aan stukken met de ogen dicht en bestudeer dan het resultaat. Zo zou het er op het scherm ook uitzien (in het gunstigste geval). In de header informatie zit op een daarvoor bestemde plaats ook een z.g. wijzer naar de plaats waar deze Horizontal Offset Table begint. Als deze wijzer om wat voor reden dan ook niet correct is, dan draait de zaak alsnog in het honderd. En zo kan voor veel van de informatie die in de header staat gesteld worden dat er maar weinig verkeerd hoeft te zijn om een font onbruikbaar te maken. Bij mij bestaat het vermoeden dat de diverse softwarehuizen moedwillig de conventies van de het GEM formaat breken om zo bewust een slechte uitwisselbaarheid tot stand te brengen om hun klanten op een dubieuze wijze aan zich te binden. Ik moet direct erbij zeggen dat ik dit niet heb onderzocht, maar afleid uit de velen klachten die ik heb gehoord. * Width table *** Hiermee wordt een tabel getoond waarin voor ieder karakter uit het font de ingestelde breedte wordt aangegeven. Tevens wordt, in een tweede kolom de breedte aangegeven die volgens de conversiefactor is berekend. Deze tabel is handig om overzicht te krijgen omtrent de consistentie waarmee de tekens onderling, qua breedte, zich verhouden. De volgens de conversie- factor berekende breedte in de tweede kolom geeft aan welke breedte de karaktercel dient te hebben indien men een scherm of printerversie van het font wenst te fabriceren. Hiermee kan dus vooruit gedacht worden bij het bepalen van de breedte van een karakter. Of de conversie wordt berekend volgens de Scherm-naar-Printer methode of andersom kan worden ingesteld met de Button [SCR VS PRNT]. Deze button geeft de huidge toestand weer en kan dus ook de tekst [PRNT VS SCR] tonen. In het View-venster wordt ook in de infobalk aangegeven welke breedte een imaginair karakter zou moeten hebben bij een bepaalde conversiefactor. De instelling SCR VS PRNT of andersom is ook hier van invloed. De conversie- factor kan voor beide font's apart worden ingesteld via een dialoog die via de DeskTop menubar optie "Conversion factor" kan worden opgeroepen. Lees ook de stuk "Conversion factor" verderop in deze handleiding. * Width Compare *** Deze optie geeft u een overzicht van de breedte-verhoudingen TUSSEN de twee aanwezige font's. Er wordt voor ieder karakter aangegeven of de verhouding volgens de conversiefactor te klein, goed of te groot is. Dit geschied met symbolen waarvan de betekenis op het scherm ook is weergegeven. Het geeft aan hoe het font uit de tweede kolom zich verhoud tot die uit de eerste kolom. Welk font in de eerste kolom en welke in de tweede staat kan men instellen met de menubutton [ Fnt1 <- Fnt2 ] die bij aanklikken dan zal tonen: [ Fnt2 <- Fnt1 ]. Ook kan worden ingesteld of er SCR VS PRNT of PRNT VS SCR gerelateerd moet worden. Ik adviseer u om het schermfont in de eerste kolom te plaatsen en het printerfont in de tweede en dan de optie [SCR VS PRNT] in te stellen. De reden hiertoe is dat dit, in samenhang met de maatsymbolen en de verdere bewerking van de font's het meest logisch is. Een indicatiebalk, ergens in de tabel, laat zien welk karakter zich in de Zoom bevindt. Deze balk kan men naar een ander karakter in de tabel laten wijzen met behulp van de cursortoetsen. Keert men dan terug naar het hoofdprogramma, dan zal automatisch dit geselecteerde karakter in de Zoom worden geladen. Met een viertal toetscommandos's kan men kan men M2Font opdracht geven te onderzoeken hoe het geselecteerde karakter moet worden aangepast om in een juiste verhouding te komen te staan met zijn tegenhanger van het andere font (deze commando's staan aangegeven op het scherm). U krijgt dan een bericht met de bevindingen en kan de aanpassing laten uitvoeren. LET OP! de aanpassing kan voorgesteld worden voor een der beide font's. Welke dat is hangt af van het door u gekozen commando. Een voorbeeld: U ziet bij een karakter het symbool "" staan ten teken dat het karakter van het font uit de tweede kolom te groot is t.o.v. dat uit de eerste kolom. Al de vier aanpassingcommando's kunnen nu gebruikt worden, maar de uitwerking is verschillend: Add (toevoegen) : Bij het karakter van het font uit de eerste kolom wordt wat toegevoegd om zo de juiste verhouding te krijgen. Cut (afsnijden) : Van het karakter dat te groot is wordt iets afge- gehaald. Aan welke zijde van het karakter dit geschied wordt onderzocht door M2Font en aan u bericht. Als het te snijden karakter geen legen posities kent, dan wordt u voorgelegd het karakter eventueel te verkleinen. Enlarge (vergroten): Het karakter van het font uit de eerste kolom zou met een bepaalde factor vergroot kunnen worden. Deze factor wordt aan u voorgelegd. Shrink (verkleinen): Het karakter dat te groot is zou met een bepaalde factor verkleind kunnen worden. Deze factor wordt aan u voorgelegd. Dit was een voorbeeld voor de situatie waarin werdt aangegeven dat het karakter van het font uit de tweede kolom te groot was relatief aan de tegenhanger uit de eerste kolom. Het kan natuurlijk ook andersom zijn. In dat geval wordt dus aangegeven dat het karakter te klein is. De vier aanpassings-commando's blijven geldig met dit verschil dat de bewerking voor iedere optie op het andere font wordt uitgevoerd. Indien de situatie zich voordoet dat bij vergroten of toevoegen het karakter groter gaat worden dan de maximale celbreedte die is toegestaan volgens de WIDTH parameter zoals die in het Info-venster is ingesteld, dan wordt dit aan u bericht met als mogelijkheid ervan af te zien of M2Font de opdracht te geven dit te wijzigen opdat de expansie kan worden doorgevoerd. Het kan zijn dat na een aanpassing opnieuw een symbool wordt geplaats dat aangeeft dat het karakter nog niet in een juiste verhouding staat. Dit kan voorkomen wanneer een karakter te klein was en na toevoeging als te groot wordt gezien. De oorzaak hiervoor is dat een karakter al bij een verschil van minder als 1 naar boven toe als te groot wordt gezien. Een karakter kan dus een half punt te breed zijn. In dat geval dient u opnieuw een aanpassings commando te geven of dit minieme te-groot-zijn accepteren. Lees wat dit laatste betreft ook het stuk "Conversion factor". Als u geen idee heeft wat de aanpassing gaat betekenen voor het karakter dan kunt u ontkennend antwoorden en besluiten terug te gaan naar het hoofd- programma. Daar aangekomen zal automatisch het karakter waarmee u bezig was (dat geselecteerd was) in de Zoom geplaatst worden. Van welk font dat is hangt af van welk font dat in het hoofdprogramma als actueel te boek staat. Met het commando <`> kunt u eenvoudig op en neer gaan tussen het karakter van het ene font naar het andere en deze met elkaar vergelijken. U past dan alsnog met de hand aan of gaat weer terug naar de Compare functie om dit te laten doen. Als u een font met deze voorziening gaat bewerken, ben er u dan van bewust dat de aanpassing zich kan uitstrekken over beide font's en dat u dus ook beiden font's opnieuw moet gaan vastleggen op schijf. Als de aanpassing slechts op n font mag worden uitgevoerd, let er dan op dat bij de berichtgeving aan u in de kop van de dialoog ook inderdaad het font staat aangegeven dat aangepast mag worden. Als u nog nooit te maken heeft gehad met de breedteverhouding tussen twee font's zal deze voorziening u misschien voor raadselen stellen. Lees meer over het waarom in het stuk "conversion factor". Als u direct weet wat de impact is van deze voorziening, dan zult u deze ongetwijfeld ten hoogste waarderen. Het is voor een snelle omgang ermee van belang te weten dat de dialogen die bij iedere aanvraag tot aanpassing op het scherm verschijnen (en soms meerdere achter elkaar) op een snelle wijze beantwoordt kunnen worden zonder gebruik van de muis. Zoals eerder al was uitgelegd, kunnen alerts en dialogen confortabel met de toetsen bediend worden zonder gebruik van de Control-toets. Als u de toetsen , of aanslaat, dan wordt dit altijd als een negatief antwoord gezien (=CANCEL). De toetsen <1> t/m <0> selecteren de opties in de dialoog op rijvolgorde van plaatsing van links naar rechts/ boven naar onder. Aangezien nagenoeg alle alerts en dialogen als eerste optie de CANCEL hebben, dient dus ook de <1> toets als een ontkennend antwoordt. Dit is handig om een mismaakte greep naar de geen ongewenst effect te laten hebben. Iedere andere toets bevestigt de keus die als Default is aangegeven. De Default wordt aangegeven d.m.v. en zwaardere omranding van de keuze-Button. Wat aan handigheid voortvloeit uit bovengenoemde regels is het volgende: U drukt - een dialoog komt op en u wenst te bevestigen - u heeft uw vinger al op de of nog in de buurt en slaat deze gewoon nogmaals aan om de keuze te bevestigen. In geval van ontkenning zit u dicht in de buurt van de en <1> toets. Zit u aan de andere kant van het toetsenbord, dan zit u voor een ontkenning dichter bij de toets. Als u weet wat u wil, al voordat de dialoog u dit gaat vragen dan hoeft u niet eens de dialoog af te wachten: u drukt gewoon twee maal . De dialoog komt wel op, maar verdwijnt ook weer direct. Deze truc werkt dus nagenoeg voor alle dialogen behalve daar waar de als oproepcommando fungeerde. In dit laatste geval kan met geen bevestiging worden gegeven omdat de gereserveerd is voor de ontkenning. In geval van meer dan twee keuzen, moet u grijpen naar de nummertoetsen. * Width Equalize *** Deze voorziening is nog niet gemplementeerd in deze versie van M2Font. Een blik in de toekomst: De breedte-aanpassing van de karakters die u met de zojuist beschreven functie per karakter semi-automatisch kunt uitvoeren zou natuurlijk ook volledig geautomatiseerd kunnen worden. Via een speciaal menu zou dan ingesteld kunnen worden wat wel en niet mag om aan te passen. * Convert Scr/Prnt *** Deze optie is nog niet gemplementeerd in deze versie van M2Font. Een blik op de toekomst: Het vol-automatisch omzetten van een screenfont maar een printerfont. Hierbij automatisch alle correcties uitvoeren voor wat betreft de breedtes van de karakters en ook het juist instellen van alle info parameters. * Conversion factor *** Hiermee roept men een dialoog op waarmee de conversie-definitie te kiezen is, alsmede kan aanvragen de conversiefactor te mogen veranderen. Voor beide font's kan dit afzonderlijk worden ingesteld. De dialoog komt op voor het font dat als actueel te boek staat. Als dit niet het font is dat men wenst, dan verlaat men de dialoog en slaat vervolgens twee maal aan (Font Flip). Ook kan men even op het betreffende View-venster klikken (bedenk wel dat eventuele veranderingen die in de Zoom zijn aangebracht dan door een Auto-store worden gefixeerd). Vraagt men [EDIT] aan om de conversiefactor te veranderen, dan verschijnt een invoerdialoog met de cursor gereed voor nieuwe invoer. Met een klik op de rechtermuisknop, een druk op of kan men de dialoog direct weer verlaten. Of men voert een nieuwe waarde in en drukt op om de invoer af te sluiten en M2Font de waarde over te laten nemen. Als extra info staat in de dialoog vermeld welke conversie waarden geldig zijn voor een aantal printers. Deze informatie is afkomstig uit de hand- leiding van That's Write. U dient zelf uit te zoeken of deze waarden ook voor u geldig zijn in context tot de gebruikte tekstverwerker en printer. Wat is de achtergrond hiervan? Bij de meeste moderne tekstverwerkers die met pixelfont's werken heeft men van een bepaald font meestal twee versies nodig. Een voor de representatie van de tekst op het beeldscherm en een voor het printen van de tekst. De reden voor dit systeem ligt in het feit dat een printer de karakters in hogere resolutie kan plaatsen dan dat op het beeldscherm kan worden weerge- geven. Hoeveel hoger dit is hangt af van de gebruikte printer. De verhouding tussen de scherm en printer resolutie wordt in M2Font de Conversiefactor genoemd. Het betreft hier de conversiefactor voor de breedte van karakters. Ook de hoogte kent bepaalde verhouding tussen scherm en printerfont en deze wijkt meestal af van de verhouding voor de breedte. de hoogteverhouding hoeft slechts een keer worden berekend en aangepast omdat alle cellen voor de karakters dezelfde hoogte hebben. De breedte echter kan bij proportionele font's van karakter tot karakter anders zijn. Het is voor een juiste uitdraai van uw tekst van groot belang dat het printerfont in een juiste verhouding staat tot het schermfont. Hierbij geldt dat het van minder belang is dat een printerkarakter in verhouding minder breed als de schermequivalent. Anders wordt het wanneer het printerkarakter verhoudingsgewijs breder is. Als alle karakters bijvoorbeeld een halve punt te breed zijn dan zal dit op een door de printer afgedrukte regel zichtbaar worden als zijnde een niet correcte totale lengte van de regel. In geval van een rechtsuitlijnende tekst op het beeldscherm zal dit tot gevolg hebben dat op de uitdraai geen sprake meer is van rechtse uitlijning. Dit hangt ook af van de soort tekstverwerker die u gebruikt. U zult merken dat bij een conversie factor van 3.333 voor een Laser printer het niet mogelijk is om alle soorten breedten exact om te zetten naar een printerequivalent. Hier moet een compromis worden aangegaan. Voorbeeld: schermbreedte=8 8x3.333=26.7 maar een breedte van 26.7 kan niet worden ingesteld. Dit moet dus 26 of 27 worden. In geval van 27 is het karakter 0.3 punt te breed en dit kan nare gevolgen hebben voor een juiste weergave van de tekst. De Compare voorziening zal dan ook aangeven dat het karakter te groot is. In dit voorbeeld is het beter de breedte in te stellen op 26 breedtepunten. In dat geval is het karakter dus 0.7 punt te smal, maar dit heeft geen nadelige gevolgen. In feite mag men de printerfont karakters naar willekeur te smal maken zonder dat daarmee gezegd is dat per definitie de uitdraai niet goed zou zijn. Het hangt er dan vanaf om wat voor soort layout het gaat, maar bij te brede karakters zullen de volle regels al gauw buiten de kantlijn gaan lopen. Resumerend kan men stellen dat het het beste is om zo dicht mogelijk bij de juiste conversiemaat te komen om een zo goed mogelijk overeenkomst te krijgen tussen de layout die men op het beeldscherm ziet en wat uiteindelijk door de printer hiervan wordt gemaakt. Als men een zeer nauwkeurige test wil doen om te bepalen of de printer- font karakters juist zijn afgesteld, dan doet men het volgende: Iedere regel op een pagina wordt gevuld met een en hetzelfde karakter tot aan de rechter kantlijn. Als men dit dan uitprint, dan wordt direct duidelijk wat de afwijkingen zijn en hoe ernstig deze zijn. Als namelijk een karakter 0.3 punt te groot is, dan zal bij 80 van dezelfde karakter op en regel te fout 80*0.3 bedragen. 24 punten dus. In het geval van een Laserprinter die 300 Dpi is resulteerd dit een afwijking van: 1/(300/24) =1/12.5 =0.08 Inch =0.2 Cm. Niet veel zult u misschien denken. Toch wel! In het bijzonder bij uitgevulde teksten teksten kan dit er toe leiden dat de rechter kantlijn niet strak is. Bij te smalle tekens wordt door de meeste tekstverwerkers geen fout gegene- reerd als het uitgevulde regels betreft. Omdat de karakters tijdens de opmaak voor de printer opnieuw worden uitgevuld. Bij te brede karakters zou de tekstverwerker eigenlijk negatief moeten uitvullen. Mij is niet bekend of er programma's zijn die dit doen. * Make Font *** Hiermee roept men een dialoog op die aan u vraagt in welk van de twee mogelijke font-vensters u een nieuw font wenst aan te maken. Na een keuze volgt een dialoog waarin u kunt aangeven welke maat het font moet zijn en tenslotte wordt u nog gevraagd of het font al dan niet cursief aangemaakt moet worden. De rijkwijdte van deze voorziening is beperkt omdat een nieuw font met behulp van het systeem-font wordt aangemaakt en deze slechts n van de velen mogelijke stijlen omvat die een font zou kunnen hebben. Wanneer u een set font's wil maken waarbij het systeem-font een toepassing kent of een goede basis vormt om verder mee te werken, dan is het een nuttige voorziening. Bijvoorbeeld deze handleiding die als desktop-file wordt meegeleverd met de M2Font diskette. De tekst is gemaakt in een moderne tekstverwerker waarbij niet standaard het systeem-font wordt geleverd. Ik wilde echter de tekst typen in het font waarin het vanuit de desktop ook gelezen zou worden. Zo'n font was snel gemaakt met M2Font. Een andere toepassing is het uitdraaien van programeerteksten die veelal getypt worden in het systeem-font. Het is prettig als de uitdraaien hiervan in exact hetzelfde lettertype wordt gedaan. INFO VENSTERS / HEADER PARAMETERS ================================= Voor ieder font vind u in het Info-venster de informatie die de gebruiker mag en soms moet wijzigen om een font op een juiste wijze te declareren c.q. het juiste effect wil laten hebben in samenwerking met de gebruikte tekstverwerker. Om een parameter in het Info-venster te wijzigen dient u op de desbetreffende regel klikken (doordrukklik). Een invoer cursor zal verschijnen om een nieuwe invoer/definitie mogelijk te maken. Ik herinner u er aan dat bij invoer altijd in de Overwrite modus wordt gewerkt. Het invoegen van een karakter geschied d.m.v. . Als een gewijzigde parameter leid tot vergroting of verkleining van het font, dan zal u gevraagd worden op welke wijze dit moet geschieden. Meer hierover kunt u vinden bij de behandeling van de parameters afzonderlijk. De parameters zullen in volgorde behandeld worden. U mag het Info-venster heel klein maken om zo alleen de momenteel relevante parameters te kunnen blijven zien terwijl u font's bewerkt (voor zover dit nodig is). Ook kunt u het venster heel smal maken en toch waarden invoeren. M2Font ziet of de positie van de waarde binnen het gezichtsveld is en zo ja staat dan toe dat de invoercursor verschijnt. Dit is ook de reden dat de omschrijvingen van de parameters zoveel mogelijk naar de feitelijke waarde toe zijn uitgelijnd. U kunt dus het venster slechts enkele tekens smal maken en dan de inhoud van het venster geheel naar rechts scrollen n toch nog redelijk zien om welke parameter het gaat. * Titel ------- De eerste twee regels worden in beslag genomen voor een door u zelf te bepalen titel van het font. Het feit dat de titel is opgesplitst in twee delen is een 'eigenaardigheid' van M2Font. De reden is dat op deze wijze de breedte van de Inforegels beter op elkaar zijn afgestemd opdat het Info- venster zo klein mogelijk kan blijven en toch alle informatie toont. * Proportioneel --------------- Deze parameter kent de aanduiding YES of NO al naargelang de optie actief dan wel passief is. Houd u er rekening mee dat als u bij een proportioneel font deze parameter passief maakt (dus als NO zet), dat u dan ook het font dusdanig moet wijzigen dat het inderdaad niet meer een proportioneel font is. Andersom geldt hetzelfde: een font dat eerst niet proportioneel was en vervolgens proportioneel gemaakt wordt door de breedtes van de afzonderlijke karakters te variren moet ook als proportioneel gedeclareerd worden (dus de parameter dient op YES gezet te worden). Het komt er op neerabcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789 Ăơԗ ȶÐϫЙ֚ ?!.:;`,'"@&$%겳 []{}()<>/|\#+-=~*^ _ 鵴 &"'(݊!)- azertyuiop^$ qsdfghjklm`#wxcvbn,;:= -+<()/*7894561230. 1234567890 _ AZERTYUIOP* QSDFGHJKLM%|WXCVBN?./+ 78-46+20>()/*7894561230. 1234567890 - AZERTZUIOP^$ QSDFGHJKLM`~WXCVBN,;:= -+<()/*7894561230. 125689 [] [\#@v,.  $%&` IP{} SDFHK{}~XVB;: 78-4620()/7895612 1234567890' QWERTZUIOP@+ ASDFGHJKL[]#~YXCVBNM,.- -+<()/*7894561230. #a000000 #b000000 #c7770007000600070055200505552220770557075055507703111103 #d #E D8 13 #W 00 00 0A 01 31 17 08 A:\*.*@ #W 00 00 02 0B 4C 09 00 @ #W 00 00 0A 0F 34 09 00 @ #W 00 00 0E 01 34 09 00 @ #M 00 00 00 FF A FLOPPY DISK@ @ #M 00 01 00 FF B FLOPPY DISK@ @ #T 00 07 02 FF TRASH@ @ #F FF 04 @ *.*@ #D FF 01 @ *.*@ #G 03 FF *.APP@ @ #G 03 FF *.PRG@ @ #P 03 FF *.TTP@ @ #F 03 04 *.TOS@ @ 1234567890-= qwertyuiop[] asdfghjkl;'`#zxcvbnm,./ -+\()/*7894561230. !"$%&*()_+ QWERTYUIOP{} ASDFGHJKL:@-~ZXCVBNM<>? 78-46+20|()/*7894561230. 1234567890-= QWERTYUIOP ASDFGHJKL;'`#ZXCVBNM,./ -+\()/*7894561230. 1689 ہ@ ԍ[]#v,  $%&` ښIP\ DFHK{}VB;: 78-4620()/789 1234567890' QWERTZUIOP@+ ASDFGHJKL[]#~YXCVBNM,.- -+<()/*7894561230. FINALLY VISION PROVE GO! EXTRA INCIDENTAL GRIJP? FIREWORKS FOREWARDS CONFIRMATION SAYS ZORO SELECT `WILLY'THOUGHT? QUANTUM EITHER BUDDIES, finally `vision' prove:extra grijp? incidental fireworks forwards go; confirmation says zoro quantum. select willy thought,buddies either TEL:(0-95)\0123456789 ?!:.;.,'`^"~-=+*# [|](){}<>/\_ abcdefghijklmnopqrstuvwxyz: ABCDEFGHIJKLM @&$%¬ NOPQRSTUVWXYZ ɐϚ (M){M}[M]M 槦 봵 1234567890-= qwertyuiop[] asdfghjkl;'`#zxcvbnm,./ -+\()/*7894561230. !"$%^&*()_+ QWERTYUIOP{} ASDFGHJKL:@~ZXCVBNM<>? 784620| 1234567890-= QWERTYUIOP[] ASDFGHJKL;'`#ZXCVBNM,./ -+\()/*7894561230. 姦 []    ϙ{} ֫ᥒ 784620и̐ȶ 姦 []  -+<и̐ȶ wpwppwU33s < >8300|pp8x|`1̟?><3<3?s8xs0?0ǀ   UU@UUV$xUUUUPUUUUU$xUU^UUUUUUUTUUUUUUUUQ#@Bt @Bt %UUF00UUVrUUUUP0xUUUUUrUU\UUUUUUUT?c?3?UUUUUUUUT DGq30q31"p0@"fH33w303; UUG3333UUVpUUUUP00UUUUUpUaU\0UUUUUUUT3303? UUUUUUUUPF33p00@pa0 33k>3? EUUF3c3cUUW#UUUUP00UUUUU#UaU\HUUUUUUUT33c 037 UUUUUUUUX$F33303331r0x0@r033c033  UUF331331UUVBt UUUUP0xUUUUUBt UU]UUUUUUUT?c?03 UUUUUUUUR @$x@$x#  pp?/gpp? ? |* ? ? 0   0 `< p ? ? 0!* 03 `f* Dp ? ? 0@ ? ~f p ? ? 0j*#q ? ? 0q` ? ? 0/Dq`??q1 ? ? ? 0@qaX` ? ? ? 03p` ? ? ? 0Dpa ? ? ? 0;p ? ? ? 0#0p ? ? ? 0c#(p ? ? ? 0_~??0D?_<?xPp ? ? 0_80>|w ? ? 008 À<.w ? ? 00< >[Dv?0 ? ? 0o0<>S vg 0 ? ? 0O0`?|#`vg  ? ? 0`xv  ? ? 0ODvO ?zvfg 0 ? ? 0W@x#vg 0 ? ? 0G}w ? ? 0Fc=Dw ? ? 0AV?  p ? ? 0aE܄ CP ? ? 0HÁk 0Cp ? ? 0 2 8 Dp?ƿ+<<8 p 0 &! >x8p`pc|? 0,*7?Ppc|0 0p!P Dpc|00 0$apk|>0 0ڠ8 p|0 0Ͱ S0pw|00 0'-0Dpc|00?6xw` p 0</pp 0x 0h00p 0`cDp?>p ? 0)x#, ? 0xp6 ? 0 wxDp ? 0xp6 ? 0x#p, ? 0>Xxp0`` ? 08|>ppx|Dp``a?Y?ypp`1` ? 0o{#p``a` ? 0.@x~p0`` ? 0W@x|Dp`8 ? 0!xxp ? 03xx#8p ? 0xx@p ? 0xxD?xxp ? 0xx#p ? 0xx@p ? 0xxDp` ? 0xxp1 ? 0xx# pac ? 0xx  p3a ? 0,xxDpacXa? xp1a ? 08xx2#p ? 03߁?#>|pp ? 0 |?؋Dp ? 09W`pp ? 0 q|` ? 0)+ `p ? 0 p?)8#p ? 0.a <#@p` ? 0{]?p;p1 ? 0?!pac ? 03p3a ? 0E@pacXa ? 0ȹp0a ? 0 pa?5p ? 0z"""""""$""""" p ? 0c  p ? 0}(( ? 0o7 p ? 0?3pp1a ?? 0EUUUT 703UUUWDp ?? 0$ 303pp ?? 0UUUT?30UUUVBpp ?? 0 $pp ?? 0D?p p ? ? 0pPp ? ? 03UUUVpp` ? ? 0D 703p1 ? ? 0%UUUT 303UUUVpaa ? ? 0?30Bpp1a ? ? 0 UUUTUUUV$ppaaa ? ? 0p1` ? ? 0pp`?pp ? ? 03c?33` ? 0၁aap?p@3333w0;33` ? 0၁cf`Àp pP@03330?3` ? 0p p @03>k>?3` '0pDP@030 c073  Wp@330 c033` %0p@0 c?3?` $1 V0 a`p@` $H;0 `apD@` $0?V0 cp` $050 aa`p< $H1V0aaap>` $10၁aaap~D1 W၁ c`p` &0p7` '0p7` $0p3πD` $0pc@ ` $0pa@ ` $0``pp@<~|~  0` $0`pDw@fffg@<ff? 0` $@0pwffg@0` $@?p|wg>fg@0` $c@0p8|Dw@`p 0>w~@0` $>@0f```p 0>w@0` $@4Ggc၆`pp>p@~fx ?? 0` $@0ffffap`D@`vl00` $@1ffa``p8p@`~f > 00` $@0ffa`fa`px@|~f  `0` $@4Gg`Àp?p@`nf  00` $@0s?p@@`fl 33 0@1@~fx? 0` $@pqac@0` $@Gps3@0` $@`DpDp`cX` $ @f``f`pp1@0` $ @cf`pp@0` $ @GffappGa 0` $@fc`DpDpFaa30|@ff`afappFf700` $0|@cpDFg;`0` $0>@GppFfa300` $p>@DppFaa30` $`@ppGa 0` $`@pDp@0` $@Gpp@0` $@```Dpp@cpp` $@f``p?Dp` $@Gc၆`pp` $@f`f`Dp|p` $@၁pp` $@pDp` $@Gpp@ ` $@Dp<_@p|p\?` $?@0pxDp\????` $4G``pp\?` $@0cDpp``\?<??` $@1fffa`pp`\??fpa``@@ ` $ F33ff0`p@`0qpp@`0`dDDDDDDDDDDDDpp?` pqpo`#puUUUUUUUUUPdDDDDDDDDDDDDCꪪUUUUUUUUUW`QonAON7NɂNʈA(  REpANP-N bN4E fNfNZNLNpNN NѬgBNQ Ni- gNG`BgN\0-mfNt+@,`?< NATJgNNn`-!gNt0mNt.+@0N `-&gNtoQ&-|fN@0-mWHH/8-H m 0HfBNt,\HHgN}$Nt+@,-#gN NJN0-H`N-$g>BmQ$8-H m 0HVHH/0-S@^HHgx?-N/`l8-H m 0HgXNI\`P?-NA`D m WHH/ m WHHgp4mNЊnD?N@ m gp?-NN@`dN[;mN m0 m f$mSR`$mRR8-H m؄?0H8-H m؄?0H m/N m;PNF`&N[p4mЊnD;@;mQ=NF`-(g&NxN-'g $mh?NN`VN-'gJ0-H`*BgNx`8?<Nx`,?<Nx` NH` @g @g @.g @!g`-(gN-'g0-H`N-'g0-H` m!fp4mЊnD;@`*0-U@WHH/ mmWHHgBm`;|8-H m 0Hg@;mN#?-NZNN#`fBgN4`\?NȂ`6PPNȂ`* @g @mg @g @ng @g @g @&g`JN-'g<0-H`?<N`^?< N`R?<N`F?< N`:?< N`.?<N`"?<N`?<N`~?<N`r8-H m؄?0H8-H m؄?0HN`v @gf @gj @gn @ gr @"gv @#gz @&g~ @.g @0g @g`BN-'gz?-N`nNy`z?<N0j`z?<N0j`n?<N0j`b8-H m 0Hg m0;mNI\ m;P`0?-Nmb`$Q&`P&Nt+@` ?-N`;mpN#6` @g @g@ @ g0 @g@ @;g@ @gL @?g @@g| @Agz @Bg @Cg @Dg @g @g| @gt @#gl @&gd @.g\ @/gT @0gL @GgD @Hg< @Kg4 @Mg, @Pg$ @Sg @hg @jg @lg @ng @wg` @g @g @ g @ g @ g @$g @ g0 @ g( @)g @g @!g& @%g6 @2gb @ag @fg @Jg @Ng| @rg`NNJNN N-wgpNp\NbNBN$BN --gBmBmBmNQ=ArNA$N mNA6NA`NA~NA탄NA*NANp~A퍞Np~ADNp'~AJNp~APNp~AVNp~ANp~ANp~ANp~AnNp~AtNp~AzNp~A튀Np~A튆Np~A톊N;|0-H~A튌N0-H~A튒Np~A텬Np ~A튘Np ~A튞Np~A0Np~A텸Np~ANp~AN <~A퍪N <~A퍰N <r~A텲N <r~A6N <r~A튤NpA튤Np~A텠N p~A톖N <~A퍶Np~A Np~A튪Np~A튰Np~A튶Np~A튼Np~ANp~ANp~ANp~ANp~ANp~A.Np~A Np~ANp~ANp~ANp~A"Np~A(Np~ANp~A Np~ADNp~AXNp~A^Np~AdNp~AjNp~ApNp~AvNp~A|Np~A틂N <~~AN <~~AN <~~AN <~~ANNJN`dNAlN$ml8H mp0HN/??x$ml4R؊ mp0H&<:<N68:&NHNJ`NEVpN/p4mЊNNf"_Np NN카`NAlN8-H"m NX$ml0NfN카`NAlN$ml8H m؄00HH$mp2H]HH/$ml8H m؄00HH$mp2HnB$ml8H m؄00HH$mt2HmB$ml8H m؄00HH$mt2H^HHNNJNJNx mHx mHx mHx m HEN$mdBR$md8H"mNXNӮ$mdRR$md0@o;|;|;|;|;| E +@@E +@x mAH "@ < mNx mAH "@ < m@NP1E>pANAC태N <.PI3NCNECp NC태NCNENp NC태NCN0<.*Nlx"mN 0<.*Nlx"mN EXpANE]pANBm;|, HNJN?-?- ?- ?-"NJBgJ/-/-N!0-$$mR^HH/0- $mRnB0-&H$m2H$m4RҊ^HHgHm:N!D-:g0-$mm$mx40-$mm $m|4$m0HA4-H$m|4RԊ2-H$mx4RҊN8-H m 0Hgt8-H m؄00HH$m2H4m(Ҋ^HH/8-H m؄00HHS$m2H4m*Ҋ^HHg0-$m4m*$m2m(Nj-$gT$m0H:-8-H m؅؄1H$m0H:-8-H m؅؄1HRm mcn`^N$$m0HA4-H$m|4RԊ2-H$mx4RҊNN:$m0H$m0RЈ$m2$mRNN$BP;N N/-/-N!$m0$mRVHH/$m0$mRgp.0-WHHg0-fNNJNA@Nf$m@P-HmB8-H m؄00HH2-4H^HH/8-H m؄00HH2->H]HHg$mlRR$ml0U@WHHV8-H m؄00H;@@8-H m؄00HH2-$m40-.S@;@B0-HNJN$Ar \$m$?-NN;@0-6rVЁ"pN@C$NA$ $m $p4m>Њ$m R0p4m6Њ0|$m 0p0|$m 0$m \0-;@pJ-gpnD;@pJ-gp/pJ-3gpFgRm0-Y@^HH/0-Q@WHH/ mfp. m WHHgBE +@?-?- ?-N1F8-H m&؄?0H?<N1F8-H m ؄?0H?<N1FN(pNrpNNNZpNNJNAlNA퀜N0-H2-@H$m4RN*$m|R$m4$ml0Nb$m4$mx2N~$m@g.pNr$mUR$m06- $m4r$mxRNpNrNJNNx mAH /x mAH "@ <} _NNJNNx mAH /x mAH "@ <} _NNJN8-H m 0Hg?-Nfaj?-NZ?-Nar?-NZaa?-?-NX0-H8-H m؄1H0-H8-H m؄1H?-NU?-NYjNJNNF0-;@0-;@NN^N$NBmpm"vm tm rmNpNr?< NATJgN0-H`t;|`bHm^NT`V?-?-?-?-HmHmN?-0- H$mpR?HmNx?-0-"H$mtR?HmNx`L;|`D @g @g @agz @,gz @Hm @Sox @gp @tgh``NN-^g0- 2-N8-H mJ؄00HH2-HN*/x4m؊ mJ؄00HH2-HN*/x4m؊ mJ؄00HHR2-HN*/x4m؊ mJ؄00HHR2-HN*&$"NN(0- H2-H$mp4RҊo@$m40-"H2-H$mt4RҊo@$m40-"$mp64- $mp2N$mt06- $mt42-N0-"$m64- $m2N$m06- $m42-NN$0-g0-S@f0-H$mp2H4m@N$m0RЈ8-H mJ؄1H0-H$mt2H4m @N$m0RЈx4m؊ mJ؄1H$m0H0mS2-HN$m0RЈx4m؊ mJ؄1H$m0H0m S2-HN$m0RЈx4m؊ mJ؄1HP&N0-A2H00-A2H0NN#NFpNrNJN-&g0Nt+@ mx0 m|0 m0 m0`F$mxBR$m|BR:-8-NH m؅؄00HS@$m48-NH m؄00HS@$m4NJN8-H m 0HgF0-mg(;m;mN#?-NZNN#?-Nfanaz`?<E`p4N/NNJN$mt??- ?-NN$m48-H m؄00HH$m0RS$mR$m48-H m ؄00HH$m2Hf8-H m ؄AH $m$`8-H m&؄00HH$m2Hf8-H m&؄AH $m$`8-H m؄00HH$m2Hf8-H m؄AH $m$`v8-H m؄00HH$m2Hf8-H m؄AH $m$`>8-H m؄00HH$m2Hf8-H m؄AH $m$`N<60-(R@$mx40-S@$m40-$mm $m|40-H$m|R$m4$mx?$m|?$m?$m?NXHx2NNѬJfHycND,`NN0-W@$m40-V@$m4$mt??- ?-NN$m40-$mm $mt40-H$mtR$m40- $mR^HH/$m0\HHg$m?$mt?$m?$m?NXN$m0N /??$mt??- ?-N8:&N(/0-WHHg$m?$mt?$m?$m?NX0-fN $mx?$m|?$m?$m?NX?< NATJg N`TNѬUgJN$mt??- ?-NN$m48-H m؄00HH$m0RS$mR$m40- $mR^HH/$m0\HHg$m R0H$m2Hg$m0$m R0N`N#x4mN؊ m 0Hg00-NHT@?NZ0-NHT@?No0-NHT@?NYj?-NZ0-(HR@?0- HW@?0-HS@?p4m<Њr4m"Ҋo@?N"2a?-NYjNN#NFNJNAlN8-H m؄00H;@X8-H m؄00H;@?-NZ0->H0m8$ml8H mT!H$ml8H mN 0H&<:<N/??p4mXЊN8:&NN8-H m^؄1H8-H m^؄00HJ@^HH/$ml8H mN 0H2-XH^HHg$ml8H mT/0Hp4mЊ"@N8-H md؄1H8-H md؄00HJ@^HH/$ml8H mT 0H2-H^HHg.8-H mX؄4pHHR8-H m^؄00HH"@NR8-H mj؄1H8-H m^؄4pHHRp4mXЊ"N*$ml8H mB!H8-H mj؄4pHHRp4mЊ"N*$ml8H mH!H8-H md؄4pHHRp4mЊ"N*$ml8H mT!H$ml?NT`$ml8H m؄4pHHRp4mЊ"@N8-H mp؄1H8-H mp؄4pHHR8-H md؄00HHSП8-H mv؄1H8-H mp؄4pHHR8-H m^؄00HH"N*8-H m|؄1H8-H m؄4pHHR8-H m|؄00HHП8-H m؄1H8-H m؄4pHHR8-H m؄00HHmH8-H m؄00H$m40-8R@$m|4$m48-H md؄00HN`pr4m(ҊA$mx4$m48-H m^؄00HN`8-H m؄00HH$m2Hmp$m:8-H m؅؄00HJ@o($m:8-H"mNj$m|4H$mx2HN$mRR0-XHR@$mxR$mRR$m0kotY8-H m؄00HH$m2Hm"0-HR@$m|R$mRR$m0koYNJNAlN$ml8H m 0Hg ml;P;m8-H m؄00HH0m搈D/8-H m^؄00HH"@N$m48-H m؄00HHR$m2HN*/8-H mH 0H"o@8-H m؄1HN#?NNg/-/-/-NV m;PpJ->gp/8-H md؄00HH$m2HnB8-H m^؄00HH$m2H^HHgr?-$m?NX?-NYjNW$mx?$m|?$m?$m?NXN Hx2NNѬJWHH/?< NATJWHHg6N?< NAT2-Hg$mx?$m|?$m?$m?NXN 0-S@WHH/?< NATJgB0-(HT@??-8?-.?->NNg/-/-/-NVpJ->gp/0-$mܰRWHHgT0-$mܰRVHH/0-mNVHHg0pJ-?gp"pJ-@gpgNH` m;PNFN 6NJNA퀰N^ m0N#aߢaRN m;P?-NZ?-Nf?-?-NX?-NYjNN#;mJNJNA`N2p$m`JgpRfNxNFNNpJ-'gp/0-S@VHHgpJ-?gp"pJ-@gpFgN#$m`g "m mh2`N0-1f m08-H m؄00HH$m2H_HH/8-H m؄00HH$m2H\HHgBpJ-?gp"pJ-@gpg"m m2NH` m;Pa0aNpJ-?gp"pJ-@gpFg(BgaNN#`?-?-NXNFQ+NJNA퀰N^AN^QTN ;mNZ;m^;m\ m;P`:-\8-ZH m؅؄00H;@b:-`8-^H m؅؄00H;@d8-^H m؄00H;@h8-ZH m؄00H;@f8-H mp0H$m4-?g :-\8-ZH"mNj0(]@o:-`8-^H m؅؄00H;@\0-^mZf60-dH2-bHl@;@d0-dH:-`8-^H m؅؄1H8-ZH m؄4pHHR8-^H m؄00HHWHH/0-hmfWHHg NJ`0N$B?<Ep N/?<Ep(N/?<?-N&0-W@fLN:N?-`Nn:-8-^H m؅؄00H;@\aNNSVNRr`0-U@fN:-&g aN:N?-`Nna-&g BN:b`|:-\8-ZH"mNj$m0trN:-8-^H m؅؄00H;@\8-^H m؄00HH2-bHo@:-`8-^H m؅؄1H`PT` NnPT`:-\8-ZH"mNj/:-`8-^H"mNj"_N:-\8-ZH m؅؄CH:-`8-^H m؅؄AH002CbAd0020-^mZgV8-ZH m؄4pHHR8-^H m؄00HHVHH/0-hmfVHHgN$8-^H m؄00HH2-dHo@:-`8-^H m؅؄1H8-ZH m؄00HH2-bHo@:-\8-ZH m؅؄1H0-boHN:-\8-ZH"mNjtrN:-\8-ZH"mNjx4mf؊z4mbڊ|~NJ0-doHN:-`8-^H"mNjtrN:-`8-^H"mNjx4mh؊z4mdڊ|~NJ-TfN#pJ-@gp/0-^mZVHHg;mZ?HNJNS0`T$m0W@gJ$mxBR$m|BRA$x4mh؊z4mdڊ|~NJ:-`8-^H"mNjtrNBN:bNJN0-b^HH/:-\8-ZH"mNj0(]@^HHg0-dfz8-^H m؄00HN /??8-ZH m؄00HN 8:&NAH 000-bN AHNJN;@d0-dH:-`8-^H m؅؄1H0-dN /??0-bN 8:&NAH 000-hN /??0-fN 8:&NAP 00 <r4<APN"g0-bHx m$!Hx m$p!Hx m$BHx m$BH:-\8-ZH"mNj \x m$!H?<NNTx m$!HHx ?-bNN( m$!H$mtBRp4mhЊN`D$mt0N APNNx m$!H$mt0Hx m$!HA$N$mtRR$mt0koY <r4<AHN"gA$x4mh؊z4mbڊ|~NJx m$p!H0-hHx m$!Hx m$BHx m$BHA$ \x m$!H?<NNTx m$!HHx ?-bNN( m$!H$mpBRp4mdЊN`D$mp0N AHNNx m$!H$mp0Hx m$!HA$N$mpRR$mp0koYNJNA퀜NfA퀤NfANf$mp0N /??0-(N &<:<N28:&N/??8-H m؄00HHRN8:&NN$m48-H m؄00HHR$mt2H4m8@N$m48-H mp؄00HH$m0RЈ/8-H m^؄00HH"$m48-H m؄00HH$m2H$m4RҊA$m48-H m؄00HH$m2H_HH/8-H m؄00HH$m2H\HHV>NJN8-H m؄00HHT/8-H m؄00HHR$m2HN*"A$mx48-H m؄4pHHR8-H m؄00HHR$m2HN*"A$m|4$m:8-H m؅؄00HHR$mxR$m48-H m؄00HHR$m|R$m4NJNAhNAlN$ml8H m 0Hg""m ml2$ml0S@o m0N$mh:$m8H m؅؄00H$m4$m8H m 0HgD$m0N /??$m8H mAH24 NJ&(*pNA@ 00`B$m0N /??$m8H mAH24 N&(*pNA@ 00$mh0N /???<N/$mh0Nb"_N/pND"_Np=N/$m0N /???<N"_NpN/A@//?<N"_N/$m8H"m NX"_N/pPND"_N"mN$ml8H m؄4pHHR$ml8H m؄00HHDR2-HNS@$m(4$ml8H m؄00HHX/$ml8H m؄00HH0mЈ/$m(0Hr mN6-H$"N2NJNA퀰N^AN^-;gh m0 m0;mNN:?-NnQ;8-H mp؄4pHHR8-H m^؄00HH"N*/8-H m؄00HH"A$m48-H mv؄4pHHR8-H m^؄00HH"N*$m0RЈ/8-H m^؄00HHS"A$m48-H m؄00HH$m2Ho@$m4$m0m_HH/$m0m\HHg@;mN#?-NZ?-Nf?-a?-NYjNN#`N$B m;P m;PNJNQCQDQEQFQG m08-H m؄00H;@X8-H m؄00HN /??8-H m؄00HN 8:&NAP 000-XN /??8-H m؄00HN 8:&NAH 008-H m؄4pHHR8-H m؄00HHgdEp#A*NPD8-H m؄4pHHR8-H m؄00HHoE'p. m N`hEUp. m NPC`REp$A*N8-H m؄00HH2-XHoEp< m N`Ep< m NPCap|N/?< a"_N"HA*NC*N?<Hm*?</- ?<?-N&0-S@^HH/0-[@mBpJ-CgpRWHHgH?-Np -AHN>APNJN+@N +@ -Ѐo NBm0-S@or?-NYj;mZ0-Z[@f"8-H m؄00HH2-XHo*?<EpGN/N-AgN8-H m؄00H$md48-H m؄00HN`8-H m؄00HH$mdR?N$md:8-H m؅؄00HH2-XHoFN$$md?Nn0-XH$md:8-H m؅؄1H$md?NnN$B$mdRR$md0ko`Y`.N`L`&0-ZU@fPF`0-ZW@fPG`PENaN`BgNh``8-H m؄00HH8-H m؄1H8-H m؄00HH8-H m؄1HN#?-NZNN#NJN8-H m؄4pHHR8-H m؄00HHS"o@8-H m؄1H8-H m؄4pHHR8-H m؄00HH"o@8-H m؄1H8-H m؄4pHHR8-H m؄00HH"o@8-H m؄1H8-H m&؄4pHHR8-H m؄00HH"o@8-H m&؄1H8-H m ؄4pHHR8-H m&؄00HH"o@8-H m ؄1HNJNN-Eg-Dg"APvNN;@j8-H m؄00HH2-jHN*JjrЁ8-H m؄1H8-H m؄00HH2-jHN*JjrЁ8-H m؄1H8-H m؄00HH2-jHN*JjrЁ8-H m؄1H8-H m&؄00HH2-jHN*JjrЁ8-H m&؄1H8-H m ؄00HH2-jHN*JjrЁ8-H m ؄1HN N8-H m؄00H$md48-H m؄00HN`8-H m؄00HH$mdR?NN$-DfH$md:8-H m؅؄00HN AHNJN$md:8-H m؅؄1H$md?NfN$B$mdRR$md0kohY`8-H m؄4pHHR8-H m؄00HHD$m48-H m؄4pHHR8-H m؄00HHD$m4pJ-Dgp"pJ-Ggpg8-H m؄00HH$m0RЈrl@8-H m؄1H8-H m؄00HH$m0RЈrl@8-H m؄1H8-H m؄00HH$m0RЈrl@8-H m؄1H8-H m&؄00HH$m0RЈrl@8-H m&؄1H8-H m ؄00HH$m0RЈrl@8-H m ؄1H8-H m؄00H$md48-H m؄00HN`@8-H m؄00HH$mdR?N$md:8-H m؅؄00HJ@^HH/$md:8-H"mNj0(]@^HHg-Dfh$m0H$md:8-H m؅؄AHP$md:8-H m؅؄00HHrl@$md:8-H m؅؄1HN$-CgN-Gg$md?Nn`($md:8-H"mNj$m4H$m2HN$md?NnN$B$mdRR$md0koYNJNAlN$ml:8-H m؅؄00H;@b0-b^HH/$ml:8-H"mNj0(]@^HHg$ml?Nn$ml?Nn?<NNTx m$!H$ml:8-H"mNj \x m$!HHx?-bNN( m$!H-Dgx m$p!H0-bHx m$!H$mtBR8-H m؄00HSN`D$mt0N APNNx m$!H$mt0Hx m$!HA$N$mtRR$mt0koY`x m$p!H8-H m؄00HHx m$!H$mpBRp4mbЊN`D$mp0N AHNNx m$!H$mp0Hx m$!HA$N$mpRR$mp0koYNJNAXN2A퀰N^AN^ m0 m0P;Q=;m8-H m؄00HHR8-H m؄1HN#0-mNfa^aN?HNJN:A$trNN$BN#aIJ`D:-8-H"mNj$m8H$m:H$mt<H$mp>HNJN#?NNx m؄00HNFEpNx m؄00HN>NNx m؄00HNFEpNx"m NXpNfNNx"m NXpNfNNEpNx m؄00HN>NNx m؄00HNFEpNx m؄00HN>NNx m؄00HNFNE#pNx m,؄00HN>NNx m,؄00HNFE8pNx m2؄00HN>NNx m2؄00HNFEMpNx m8؄00HN>NNx m8؄00HNFEbpNx mD؄00HN>NNx mD؄00HNFEwpNx m>؄00HN>NNx m>؄00HNFNEpNx m؄00HN>NNx m؄00HNFEpNx m؄00HN>NNx m؄00HNFNEpNx m ؄00HN>NNx m ؄00HNFEpNx m؄00HN>NNx m؄00HNFEpNx m؄00HN>NNx m؄00HNFEpNx m؄00HN>NNx m؄00HNFE pNx m"؄00HHNNNNx m"؄00HHNNEpNx m(؄00HHNNNNx m(؄00HHNNNE4pNx m.؄00HN>NNx m.؄00HNFNEIpNx mZ 0HNNNNx mZ 0HNHNE^pNx mf 0HNNNNx mf 0HNHNEspNx ml 0HNNNNx ml 0HNHNEpNx m< 0HNNNNx m< 0HNHEpNx m؄00HN>NNx m؄00HNFNEpNx mr 0HNNNNx mr 0HNHNNEp)NNEpNEpNEpNE=p#NE`p'NN $m?<A*"mN/?<E0p&N/?<?-N&0-U@$m4-Ag|8-H m؄00HJ@^HH/8-H m؄00HU@^HHg@N aR$m0U@fNB`$m?$m ?$m?$m?NBga`NnNJNAN8-H m؄00HJ@^HH/8-H m؄00HU@^HHg?-?-$m?BgNN#8-H m 0Hg,?-Nfa?-NZaa?-NYj`N:?-aN$?8-H m؄00H$mRD$m4`v8-H m ؄00H$mRD$m4`V$m4`L @g2 @g* @g, @g. @g0 @gH @g` @ gx @ g @ g8-H m؄00H@^HH/$m0@nB$m0]@]HHg$$m0H$m4$m0H$m4-nfN"md m2$m0N`-nf$m0H$mdR?N$md:8-H m؅؄00HU@^HH/$md:8-H"mNj0(]@^HHgL$md:8-H m؅؄00HS@$m4pJ-ngp/8-H m 0HVHHg0N:A$$m8H$m:H|~NJA$ $m$`$md:8-H"mNj $m$$m?$m?$m?$m \/N&0-DHm$m4$m,BRBm$m0H`0-^HH/p2-H4mƒWHHg$m,SR`n0-H0mJjR$m,4`d0-HD$m,4`T m,0`J$m0HmD;@0-]HH/$m0$mR^HHgN`$m0HmD;@`v$m0Hm;@0-^HH/$m0H0mD2-H]HHg:N`2 @g @gH @gP @gR @ gJ @ g|`$m,0VHH/0-gp.p$mPJgpg-g$m0$mRmNP;pJ-ngp/8-H m 0HVHHgNA$4-H$m,2HN`ZN$$md:8-H"mNjptrN$md:8-H"mNj4-H$m,2HN$md?aҦN$B-nfR?< NAT/NѬUWHHg8N?<EVpN/NpJ-AgpVT-TfN-Tf$mdRR$md0ko0-S@;@$ml0N`$m( Rp02-$m( R0Sm0-klY0-H$m(ђ$mtRR$mt0koY$m0Hgdp2-N@"mN0-툢$mВ+@ m "@0-H mNp2-N@"mNf0-HSm`;mD$m0HgTp2-N@"mN m "@0-H$m RNp2-N@"mNf0-H$mђSmRm`$m0HVHR@WHH/0-^HHg.E +@?-?-?-A툠/$m/ mNO$m0HVHH/0-^HHg m+P0-U@o p4mЊѭ0-HD$mp4Bmp4mЊN` m( $mtBR0-N`t$m( R0gL;m`$m( Rp02-f Rm mo mn$mp0H0mЈ2-Ho@;@0-H$m(ђ$mp0mg$mtRR$mt0koY$mp0mg $mpRUBmRm0-koA"mNEp1NfC*NEphNC&N"m N`JA"mNE]pNfC*NAC&N"HANEupNf"m N?<Hm*?</- ?<?-N&-AfN m0$m\g^8-H m؄00HS@$m4$m4$m0U@f$mRR mX^HH/$m0@^HHg$mR `$m0H`N0-VoA"mN"HANEpNf/0-VN Nf"_NEpNfC*N?<Hm*?<EpN/?<?-N&0-U@lN`0-W@f ;mXP텊$mP4;mXRN`zM8-H m؅؄4pHHRzW8-H m؅؄00HH"l@;@R$mBRBm8-H m؄00H$md48-H m؄00HN`d$md:8-H m؅؄00HH2-RHo6$md:8-H m؅؄00HH$m2Hl@$m4Rm$mdRR$md0koY0-gA"mNEpNf/0-RN Nf"_NEpNf/0-N Nf"_NEpNf/$m0N Nf"_NEpNfC*N?<Hm*?<E pNC&N/0-N /???<N"_NEp#Nf/0-N /???<N"_N/?<?-N&-AfN mP0`N0-Vf?<E>pN/NNA"mNEvpNf/0-VN Nf"_NC*N?<Hm*?<AC&N"HA N"HAN/?<?-N&0-U@lN$mP4P텊0-U@f;m`0-W@f m;P`;mXN` @gV @g @g-:gbNN8-H m؄00H$md48-H m؄00HN`8-H m؄00HH$mdR?N$md0@ g$md:8-H m؅؄00H$m4$m\g$m0g$mSR$m?$m?$m?$md:8-H"mNj \/a$m0[@f0-f $md?aR`P0-o~$m0mor$m0U@f0-ml20-Hm$mR` $m0W@f0-R@$m4` m0p$m4RЊ$md:8-H m؅؄1HN`$mP0H`0-R$mRl|$md?aŤ`p0-R$mRld0-RN /??$m0N 8:&NAH 000-RH$md:8-H m؅؄1HN$$md?a4N$B``0-R$mRoT$m0^HH/pJ-gp/$m0WHHgZ0-RH$md:8-H m؅؄1HN`0$m0f(0-H$md:8-H m؅؄1HN`0-R$mRld0-RH$md:8-H m؅؄1HN$$mP0[@WHH"pJ-gpgN$md?a$md?a`N$B`( @gh @gx @g @g< @gh$mdRR$md0koYa:BgaNJNN +@0-HЀ;@?-RN/??0-N 8:&NPN$m4?-N/??0-N 8:&NPN$m4B`8-H m؄00H$md48-H m؄00HN`$md:8-H m؅؄00H$m4pJ-igp/0-R$mR^HHgD$m?N/??0-N 8:&NPN$ml4$m0H$ml0Rѭ``(pJ-gp/$m0WHHg $m0Hѭ`$mdRR$md0ko@Y -`Ѐo NQ:NJNBmV8-H m؄00H$md48-H m؄00HN`*$md:8-H m؅؄00HJ@fRmV$mdRR$md0koYNJNA클NAN$m0NF$m0NNNZ <Nv <N <N/N^Nl"_N"mN m /N"@p _Np&NND @0(H8-H m؄1HND @0(;@XND @0(;@p4mЊ8-H m؄1H0-N &<8<\):<NPN8-H m؄1H0-Hj^8-H m&؄1H8-H m ؄BpH8-H m ؄1H0-HHR8-H m؄1H8-H m؄1H8-H m؄1H8-H m"؄1H8-H m(؄1H8-H m.؄BpH8-H mZpX!H8-H mfpX!H8-H ml!ZH8-H m$m4 `4$m4 `*$m4` @g @g @g @g @g`?<Ep N/?<EpN/?<?-N&0-S@oR$mBR0-W@f$m4?<EpN/?-N2N$N$m?$m?aBgaNJNHx2NN0-WHH/?< NATJWHHg:"mx mp2$mx?N4N?< NAT2-Hg$mx?N4?< NATJg"NxNN$mh?N`P0-S@WHH/?-(0- Hm?0-Hm ??- NNgNN0-($mpR_HH/0-H0m Ј$mp2H^HHg0-tU@l40-HjR$mpR??-?-NN$mR$ml4`$$mp??-?-NN$mR$ml4$mp?N4Nh;A^;B`;C$mp0m^VHH/0-WHHg$mp?N40-f$ml0Hrl@$ml4$ml?NNJNAxNp$mx4RЊr4m(Ҋl@?0- Hm?p4m.Њr$mx4RҊo@??- BgNNJN8-H m 0Hg;mN`8-NH m 0Hg;mN8-H m؄00HH0mЈ/0-HПR@$mx40-$mxR$m48-H m؄00H$m|48-H m؄00H$m48-H m؄00HH$m2Ho@N#?-NZ8-H m 0Hg ml0$ml8H m؄00HH$m2H^HH/$ml8H m؄00HH$mx2Hlp.$ml8H m؄00HH$m2H^HH/$ml8H m؄00HH$m|2H]HHgNN#:-8-NH m؅؄00H;@$mx?8-H m؄00HHV@?Bg8-NH m؄?0H?<?-A퉮/N&?-NNJNAlN:-8-H m؅؄00HH$ml2Hgv:-8-H m؅؄00H;@\8-H m؄00HH$ml2Ho@:-8-H m؅؄1HP;N#N2jNN#`&8-H m 0HgN#NN#NJN0-S@fX:-8-NH m؅؄00H;@\N1N^N$NN60-0H$m2H4m*Ҋo@$m40->H$m2H4m@Ҋo@$m4p$mRv$mR$m|4m@$mx2m*N0-S@WHHnD;@0-fp4mЊnD;@0-Nv0-Nr0-N8-H"mNXN8-H m0 0HDNNFNN$mdBR0-fN`v0-H`b-Hg*0-H$md0R6-$mdR$mt4$mp2N\`80-H$md0R6-H$md4R$mt4H$mp2HN` @g$mdRR$md0ko~YN$Nh;A^;B`;C0-^$mpRVHH/0-`$mtRVHH2-H/?< NATg?< NATJgN0-H`n;|`\0-U@;@f`P-%fJHmHNT`>Hy :-8-H m؅؄?0H8-H m؄?0HHmHmN`@;|`8 @g @ag @m @ o @!g @Hm @Po @sg @tg`0-gFN(N0-S@fZ8-H mN 0H0mS@;@b8-H mT 0H0mS@;@d:-8-H m؅؄00HH2-bHo@$m48-H m؄00HH2-dHo@$m4$m0^HH/$m0^HHgP;p$m4RЊ0m*Ј/p$m4RЊ0m@Ј/A$(*<-@H>-*HNJN:A$trNN$8-H m 0Hg:?-NfN#?-NZ?-NZN'FN+Z?-NYjN` NNN#NFNJN8-H m 0Hg?-NfN 6A/p.|zx4m>؊v4m.֊t4m8Ԋr4m(ҊN8-H mN 0H0mS@;@b8-H mT 0H0mS@;@d:-8-H m؅؄00HH2-bHo@$m48-H m؄00HH2-dHo@$m4$m0^HH/$m0^HHgN$m0Hx m$!H$m0Hx m$!Hx mAH x m$!H0-*Hx m$!H0-@Hx m$!H?<NNTx m$!HA$Nzx m؅p0Hg($m0H0m@Ј$m6m*tm@rm*NNJN8-H m 0Hg?-NZa?-NYjNJN8-H m 0Hg20-mWHH/0-ܰmWHHFg?-NZP텅NJNHyBgNN#?-NZa|?-NYjN#NJNANa|Q;N^$m0U@f m0;mpJ-gpV텑`";mN8-H m 0HVHHV텑;mZp4mЊnD;@^$m?N`Q텓P텝N0-U@g0-S@fBgNJBgP텓`?<NJBgHmNT$m?N``?<NJBg N`p?<NJBgCZA^002$m?N``h$mt?x mV؄?0H?-NN$m4$mp?x mP؄?0H?-NN$m40-$m$mR$ml4Nİ`?< NATJgN0-H`vP텓`$m0U@f?-NЀPAN`-%g m0$m0f N`$m0U@f:-8-^H m؅؄00HJ@^HH/:-8-ZH m؅؄00HJ@^HHgL?<E.p!N/N-Ag*;mZ?-a;m^?-a m;PN`z:-8-^H m؅؄00HJ@WHH/:-8-ZH m؅؄00HJ@^HHg;mZN` :-8-ZH m؅؄00HJ@WHH/:-8-^H m؅؄00HJ@^HHg;m^EOpA*N?<N/?<N"_N"HA*N/N-Ag?-a?-N$mxRR$m|VRp NDv$m|4H2-$mx4RҊN2$m??-$mx?Np4mЊ$mxR?$m|?$m|0H^@?N ?-N m;P`b ml0?-?</-lN68-H m؄?0H8-H m؄?0H ml/N?-N ml;P?-N`$m0H`xEc0<A*NE30<NC*NC*N`VE0<A*N`BE0<A*NE0<NC*NC*N`Jg @g @gBgHm*N.`F @g @g @g| @gt @.gl @Sg @Hm @Po @bg-g$m0U@f m;PpJ-gpV텒;mZNN m0-gP;Q=Nl`;mQ= m;PNFNFQ텝NJNANpA톊Nx mP؄BpHx mV؄1H;|k;|;|1;|;| ;|3;|[-g8-ZH mAHCp""`08-ZH mAH 24&<x:<NAp 00x mP؄00H$mx4x mV؄00H$m|4$m0S@fQm0-S@$m40-Hm$mp4NN 60-HS@?Bg?-N $m0H$mxR?Bg?-N $mdBRzx$m|64-p$mx4RԊ$md2Nn8-ZH m؄00HH$md2H_HH/8-ZH m؄00HH$md2H\HHg$m?$md?$mx?N0-$m|R$mp0$m|Rlx mV؄00H$m|40-$mxRp4mЊ$mxR?Bg?-N p4mЊ$mxR?Bg?-N p4mЊ$mxR?Bg?-N p4mЊ$mxR?Bg?-N p4mЊ$mxR?Bg?-N $mdRR$md0@o?-N$mx4$m|4$m4$m4$mx??<^$m??-N"$mx??<]?-N ?<NpA0tbr$mx4RҊNpNrEpNtjr7$mxRN~EpNt~r7$mxRN~ $mP0@f0;m^A킸C킨NAH 00 <r4<A킨NBN:-8-H m؅؄1HPC-gEIp mN`Ewp mNNEpNf"H mNEp Nf/pAH&8:NNf"_NC*N?<A؄1H8-H m>؄00HnD$ml2Ho@8-H m&؄1H8-H m>؄4pHHR8-H mD؄00HHDnD$ml2Ho@8-H m ؄1H8-H m8؄4pHHR8-H m&؄00HHПnD$ml2Ho@8-H m؄1H8-H m2؄4pHHR8-H m&؄00HHПnD$ml2Ho@8-H m؄1H8-H m,؄4pHHR8-H m&؄00HHПnD$ml2Ho@8-H m؄1H8-H m؄00H$ml4x6 mAH  @0HnD$ml2Ho@8-H m ؄1Hx8 mAH  @0HnD$ml2Ho@8-H m؄1Hx: mAH  @0HnD$ml2Ho@8-H m؄1Hx< mAH  @0HnD$ml2Ho@8-H m؄1Hx? mAH  @p8-H m"؄1HxA mAH  @p8-H m(؄1HxC mAH  @p8-H m.؄1H8-H mZAH /xD mAH  @p0 _1@8-H mZAH /xF mAH  @p0 _08-H mZ 0HrX]HH/8-H mZ 0H^HHg8-H mZpX!H8-H mfAH /xH mAH  @p0 _1@8-H mfAH /xJ mAH  @p0 _08-H mf 0HrX]HH/8-H mf 0H^HHg8-H mfpX!H8-H mlAH /xL mAH  @p0 _1@8-H mlAH /xN mAH  @p0 _08-H ml 0HrX]HH/8-H ml 0H^HHg8-H ml!HxP mAH  @p0nD8-H m mAH /8-H m"؄00H _0x@ mAH /8-H m(؄00H _0xB mAH /8-H m.؄00H _0xD mAH /8-H mZAH  @p0( _0xF mAH /8-H mZAH  @p0 _0xH mAH /8-H mfAH  @p0( _0xJ mAH /8-H mfAH  @p0 _0xL mAH /8-H mlAH  @p0( _0xN mAH /8-H mlAH  @p0 _0xP mAH /8-H mHyNHyZNJBgN` ?-t?-n?-p?-rNJBgNNFN -gNNFNVQ템NJNpA톊NP텕?<N׮?<EpN/0-|H@s??-Hy FHyN;mxl m;P NFN0-S@f,?<NN/?<NNg N$`?<NJBgQ텕`?<NJBg>;mx;mlx0- H8-xH mH8-xH mp0H;@N`?<v?-n?-p?-rNJBg|;mxN8-xH mp0H$m48-xH mp0H;@N#N;mx?-xN@$m0Nb$m|4$mx2N~?-xN@N#NFpJ-gp/0-U@WHHFg?<N׮NJN$m4;|?<NJBg $mURSm?-N׮N#p2$m$$`d$m$/NB$m0$mR8-H m؄?0H8-H m؄?0H m/N$m?NNN$N`p$m$ђNѬf?-xN@-fNh`0$m0H8-xH mH$m0Nb$m|4$mx2N~?-xN@8-xH mp0H;@8-xH mp0H$m4NN#?-N׮NJNBmxQM$mdBR$md8H mp0H$m2Hg$mdRR$md0@o$md0@n md;PxPMNJNN0-xH"<N;@$m0W@\HH/ m _HHgmv$m$B$m0H`z$m$ $m$$`D$m$ $m$$`t$m$ $m$$`b$m$ $m$$$m$ $m$$`@$m$ $m$$$m$ $m$$` @g @g @g @g @g m$/0-H _@$m$ NVNNNJN$mp??-t?< NN$m4$mt?0-vH@??< NN$m4$mt?0-vH@??<NN$m4$m0H$mR;@x$m0dm@xHyAx/NNJN-NgEpNvt rXN2`EpNvt rXN2pNDvtrXN20-xN NfvtrXN2pNDvt rXN20-N Nfvt rXN2NNNd$m?NNNNJN-(gH-*g;|x`-Ng;|x`;|x mx\HH/ m_HHg(m` -*g;|x`-Ng;|x`Bmx0-mxQM mxl08-xH mp0H$m48-xH mp0H;@PM` $mBRBmEp ABNpJ-(gp"pJ-*gpgEp ABN`r-*gEp ABN`ZpJ-(gp"pJ-NgpgE&p ABN`.-NgE0p ABN`-(gE:p ABN$mh0fv0-xH"<N$ml4$ml8H mp0H$mh4pJ-Ngp"pJ-*gpg.$mh0@a\HH/$mh0@z_HHg$mhR$mh0NbCBNp>NCBNNJNAlN$ml0HjrЁ$m4$ml0Hjr?Ё$m4$m0Hmv$m|4$m0d$m|R$ml0Hr@N$Ђmt$mx4$mx0HU@?$m|0H@?$mx0H@ ?$m|0HV@?NX ml;PNJN$mp0@To-Mg-Og68-xH mp0H$m4HyPXHyHy m/N&`@8-xH mp0H mNp r N mrN mNz$m4 m;PN#$m0H8-xH mH?-xa$m0Nb$m|4$mx2N~?-xada$m?NNN#N `HmONTNNNFNJNN0-S@fP텓`npJ-%gp/ mWHHga`LN#apNDvt^rN2ABvt^rN2a-Jg?-a?-xaPJN#N NJNHyNCHyXO?<NNJNpNDvt+rXN28-xH mp0HNNfvt+rXN2NJNpNDvtPrXN2-Og$8-xH mp0HNNfvtPrXN2`"8-xH mp0H/zxvPptX"NnNJNzxvAptX$m2NnNJNzxv6ptX2-NnNJNNEDp NCNNCHN <.KEYATNACZNP\N-:g`Nx-Pg(x mAH / -H"<o@$rNz`x mAH $ <rNA`CNNNJNAN0-~HS@?0-HS@?0-HS@?0-HS@?N"20-H0m~S@;@b0-H0mS@;@d$m:8-H m؅؄00H;@0-H2-bHo@$m48-H m؄00HH2-dHo@$m4$m0^HH/$m0^HHgN$m0Hx m$!H$m0Hx m$!H$m:8-H"mNj \x m$!HHx ?-NN( m$!H0-~Hx m$!H0-Hx m$!H?<NNTx m$!HA$Nzx m؅p0Hg08-H m؄00HH0mЈ6-m~tmrm~NNJNpA톊N m0B?-?-N";|z0-z@7;@t0-Y@;@p;|͇n0-n@ ;@v0-n@;@r?-z?-n?-p?-r?<NشHyk?<0-nH]@??<Nش?<NA0tur NpNFNZEpNt}rJN~EpN4<rJN~E#pN4<rHN~EpN4<rHN~pNFNZHy?<|pAN/?<NHBg0Nb/0-|H@??-Hy HyN?<EKpN/0-|H@,??-Hy FHyNNJNAlN^Hx2NBN2$mt?x m؄?0H?-NN$m4$mp?x m؄?0H?-NN;@|$m0H`;m|pBgN-6N`p0-|N &<x:<NNN;@p?<N-60-pf UmUm`TmTmHy HmNxHy HmNx?<N-6`$m40-U@VHH/0-|U@oB0-S@WHH/0-|U@_HHg$mUR$m0U@fA $m($` A $m($Hy x m؄00HHS@?$m8H m؄4pHHRp4mЊ"A??<$m(/N$`h0-|U@l Hm2NT`0-|U@f HmNT` Hm3NT?<N-6`v?<N-6;m|?<N-6`Z m;PpN`J?<N-60-|R@;@?<N-6`*?-$m8H m؄?0HHmN:?<N-6`~0-S@f$m0H@?N/``$m0@f?-$m8H m؄?0HN@`b$m0@fV?-$m8H m؄?0HHmN:?<N-6`*?-$m8H m؄?0HHmN:?<N-6`Z;|p-@gQ@?<N-60-S@f ?<N-6Hm?NT?-NYj`Z-?f P?N`HN`@;|p-?gQ??<N-60-S@f?<N-6Hm@NT?-NYj`J;|p0-S@fEpeA*NEpc m N?<Hm*?</- ?<?-N&0-U@f(8-H m؄?0H8-H m؄?0HN`0-S@o?-N`N`;|Sp$m?N-60-S@fN#6` PUN`~Jg @g @oj @g @gN @ ob @gZ @gb @gz @o @g @g: @g @g @g @gV-Ug-:g-&gR?<Ecp$N/?<E‡p"N/?<?-N&0-S@^HHV:0-U@VHHV&-:gT0-pH`$NNh`D$m?$m ?N`0N#6`( @g @g @g``-Tg $m?N-6QUQ:Q?Q@NF`xN#$m0H`:$m0S@f ?<N-6?-NYj$m0Y@n0N2j?-NZ` @m @o @g @m @oaVN#N`N NJNQQQRBmQSQ텃QsQTQ:pA톊N0-pH`BPRE©pA*N`DPRPS 8-H m 0HVHHF8-H m HJf H?-N׮$m@PNF$m@fRm0-̰ko^Y$m@gr-Sg2x m 0HVHHV4x m 0HVHHV5`6 mpWHH/ mpWHHgx m 0HVHHVu`h$m0Hx m؄1H8-H m؄00HHx m؄1H$m 0Hx m؄1H$m 0Hx m؄1H$m0Hx m؄1H8-H m؄00HHx m؄1H-RgJ-Sg0-Hx m؄1H`0-Hx m؄1Hx m؄1Hx m؄1H`T-gN0-nHx m؄1H8-H m؄00HHx m؄1H8-H m؄00HHx m؄1H-Sg0-Hx m؄1Hx m؄1Hx m؄1H0-Hx m؄1Hx m؄BpHx m؄1H0-Hx m؄1Hx m؄BpHx m؄1HNDx m؄00H$m4x m؄00H$m 4-Rg*-Sgx m؄00H;@`(x m؄00H;@`-gx m؄00H;@n-Sg0x m؄00H;@x m؄00H;@x m؄00H;@$m@gpJ-gp/$m0U@WHHgN)YN;ml?-Nn`N%ANTNN$P;-UgN&?:-8-NH m؅؄00H;@\:-H8-NH m؅؄BpHN`Jm @o @Hg @Kg @Mg @Pg @hg~ @jgv @lgn @ngf @g @g @g @Gg @wg @g @g @g @#g @ g @/g @ g @g @ g @0g @ g @&g @ g @.g @g @g @SgNJNA퀰N^AN^QW m0 m0N,;mpJ-gp"pJ-ugpg $m0U@fp4mЊnD;@;mA8-H:-H<-H>-HNJN#Af4-H2-HN?-NZAf8-H:-H<-H>-HNJA4-H2-HN?-NZN#?-NfNFQ:QTN0-S@f?-N.JBg?-.?-8?-0?-g $m0H$m8H m؄1HP:`PT`PT` 0-U@fPTpJ-:gp"pJ-TgpgN$Af4-H2-HN?-NZ$m?N-6Af8-H:-H<-H>-HNJA4-H2-HNANN#N, m;P m;PQ:QTNJN$m8H mP؄?0H$m8H mV؄?0Hx$m4R؊ mP؄?0H$m8H mV؄00HHm?NXNJNN 6x mP؄00HT@$mx4x mV؄00HHm$m|4$m?N&zx$m|6pt"$mx4RԊ$m2Nn0-$m|R$m ?N&zx$m|6pt"$mx4RԊ$m 2Nn-g20-$m|R?-nN&zx$m|6pt"$mx4RԊ2-nNnNJNANAxN^A|N^A퀀N^A퀄N^$m8H m؄00H$m|4x$m4R؊ m؄00H$m4x m؄00H$mx4x m؄00H$m4$m0H`8-pH m؄00H$mx4x4mp؊ m؄00H$m4$m0g 0-$mRN/l`FN 6$m4x m؄00HS@$mx4$m|XR?-N&0-$m|R?-N&`J0-|S@o*8-|H m؄00H$mx40-H$mxR$m4`x m؄00H$m4N/l`x8-H m؄00H$mx4x4m؊ m؄00H$m4$mSRN/l`Lx4m؊ m؄00HR@$mx48-H m؄00H$m4$mSRN/l`P ml0N/2`@ ml0$ml8H"mNXNp$mR$m6$m|4$mx2N6pN$`^$mx?$m|?$m?$m??<N`: @o. @on @g @g @g& @g\ @gd`NJNAPNQ$Bm8-H m 0Hg0-H@?a2$mP0mf$mP0mfBm`6 mP;P`, mP;P8-H m 0Hg0-H@?a0-S@oP$NJNAPN8-H m 0HgN#?-NZ$mP?a,8-H m 0Hg2?-NYj8-H m 0Hf ?-NZaN#NJNx m 0HVHH/x m 0Hgp.8-H m 0HVHHgpJ-?gpJWHH/ mWHHgHm@NT$m4`>pJ-@gpJWHH/ m.WHHgHm?NT$m4`N18-H m 0HgRN#?-NZ$m?aZ?-NYj?-NZaN#`?<Ep&N/NNJN8-H m؄00H;@8-H m؄00H;@;|;|;| $mdBR0-N`J0-$md0mЈ$md8H m؄1H0-$md0mЈ$md8H m؄1H$mdRR$md0koYx$md4R؊ m؄00H;@x m؄00H;@NJNa($mdBR0-N`D$md8H m؄4pHHRx m؄4pHHRA/p,zx&$2-HN$mdRR$md0koY$mdBR$md8H m؄?0H?-x m؄?0HN $md8H m؄?0Hx m؄?0Hx m؄?0HN $md8H m؄00HHR@?x m؄?0Hx m؄?0HN $mdRR$md0W@obx m؄?0Hx m؄?0Hx m؄?0HN x m؄?0Hx m؄?0Hx m؄?0HN x m؄00HT@$mp4x m؄00HSN`*$mp?x m؄?0Hx m؄?0HN $mpVR$mp0koYx m؄00HV@$mt4x m؄00HSN`*x m؄?0H$mt?x m؄?0HN $mtVR$mt0koYx m؄00H$mp4x m؄00HQN`*$mp?x m؄?0Hx m؄?0HN $mpPR$mp0koYx m؄?0Hx m؄00HH^@?x m؄?0HN ?-x m؄00HHS@??-N ?-x m؄00HHS@??-N ?-x m؄00HHS@??-N ?<E9pN/0-N Nf"_N/N92?<E@pN/0-N Nf"_N/N92?< HNJNJNA$NfA|NAxN$mx?$m|?Hyh?<N<0-@(;@0-6-4-2-N \NF$m\$mp?x m؄?0H?-N/??$mt?x m؄?0H?-N/??0-N 8:&NP8:&NHN$m$4N>\NF`N?-?-?-?-NJB`4?< NATJg(N0-H`$mNJBg$mP4NG0-Hg|?-.?-8?-0?-@NJBg$mP4NG`R?-.?-@?-0?-:NJBg$mP4NG`(?-.?-:?-0?-NJBg$mP4NG`R?-*?-NJBg$mP4NG`(?-2?-NJBg$mP4NGNGP NJN-g.0-mg$0-mgN#?-NZN#Q텅NѬUVHH/$mP0WHHgt$mP0H`.NI\`NK`NI`Nv`NN`|PD8-H m؄00H;@$mt??-@?-:?-.?-08-H m؄?0H8-H mH 0H?8-H mT 0H?8-H m؄AH /NP`|QD8-H m*؄00H;@$mp??-*?-2?-8-H m6؄?0H8-H mB 0H?8-H mN 0H?8-H m؄AH /NP`BNm`: @g @g @g @g @g @g @gD`N NJN0-mfQX0-mfQ텅N8-H"mN 8-H m HNwN$NoNN#NFNJNA퀰N^AxN^A|N^Nшm($mx4Nњm4$m|4 m08-H m HN$NoN^ m;P8-H m HN$mp0H$mxR$m4$mt0H$m|R$m4Bg8-H m؄00HH0mDS@?/-NxBg8-H m؄00HH0mĐDS@?/-NxN8-H"mNX$m4H$m2HNN$Nh;A^;B`;C0-^$mpRVHH/0-`$mtRgp.0-WHHg0-f $m0H8-H m؄1H$m0H8-H m؄1H?-Nd0-mfaQ텅NN#NJNA퀰N^AN^HmXNTpJ-XgpJWHH/0-mVHHgPX-Xg ;m0-(H8-H m<؄1H0-4H8-H mB؄1H8-H m؄00HH8-H mH؄1H8-H m؄00HH8-H mN؄1H8-H m؄00HH8-H mT؄1H8-H m؄00HH8-H mZ؄1H8-H m؄BpH0-nH8-H m؄1Hp4mЊ8-H m؄1H0-nHr4mҊD8-H m؄1H`8-H m<؄00HH8-H m؄1H8-H mB؄00HH8-H m؄1H8-H mH؄00HH8-H m؄1H8-H mN؄00HH8-H m؄1H8-H mT؄00HH8-H m؄1H8-H mZ؄00HH8-H m؄1H?-Nd?-NT` m0 m08-H m H;m܆NN$No m;P8-H m H m;PN_0-mWHH/0-U@]HHg ?-NZN#NFNJNNN^N#N$mp0Hm0$m,4$mt0Hm>;@NN$mp0H$m,R$mx4$mt0Hm$m|48-H m؄00HHm(?8-H m`؄00HH0m(Јr4mҊo@?/-xNx8-H m؄00HHm4?8-H mf؄00HH0m4Јr4mҊo@?/-|Nx$m|0$mx64-42-(N0-Hg*$m|0H0m$mx6m4-4$mx2mN0-Hg*$m|0H0m$mx6m$m|4m2-(NN$Nh;A^;B`;C$mp0m^VHH/$mt0m`gp.0-WHHg0-fjp4mЊ$mx2H4m(o@8-H m؄1Hp4mЊ$m|2H4m4o@8-H m؄1H0-mfQX?-Nd?-NT`N_NoNN#NJNA8NALNAHNADNA@NA6-24-<2-*N6pN$$ml8H m؄00HN /??$ml8H mB 0HN8:&NA@ 00$ml8H mr؄00HN A@N(A@NH$ml8H m*؄1H$ml8H mN 0HN/??$ml8H mB 0HN8:&NA@ 00$ml8H mr؄00HN A@N(A@NH$ml8H m6؄1H?<$ml8H mr؄?0H$ml8H m6؄AH /N$ml8H m*؄00HH0m*Ј/$ml8H m*؄00HH0m*Ј/$ml8H m6؄00HHП2-2Ho@&0->4-<"N6NJNAlN$ml8H m 0Hg$ml8H m؄4pHHR$ml8H m؄4pHHR$ml8H m؄00HHR2-Ho@/$ml8H m؄00HHR2-Ho@/$ml8H"mNX(*,.NJNJNAlN$ml8H m 0HgT$ml8H m؄4pHHR$ml8H m؄4pHHR$ml8H"mNX$"N0-$mlRWHHV텅NJNAlNA|N^$ml8H m 0HgN 6$ml8H m$؄00HHg$ml8H m؄00H$m4`$ml8H m؄00H$m4$ml8H m$؄00HHg$ml8H m؄00H$m4`$ml8H m؄00H$m4$ml8H m؄00HHR/$ml8H m؄00HHR/A/p.|zx$m4R؊v$m4R֊$"NNJN;| m(0$m(0H~A틈N$m(0H~A틔N$m(0H~A틦N$m(0H~AN$m(0H~AxN$m(0H~AN$m(0H~A~N$m(0H~A틠N$m(0H~A팄N$m(0H~A팊N$m(0H~A판N$m(0H~A팖N$m(0H~A0N$m(0H~AN$m(0H~A틸N$m(0H~A틾N$m(0H~A틎N$m(0H~A틚N$m(0H~A*N$m(0H~AN$m(0H~AN$m(0H~AN$m(0H~A6N$m(0H~AN$m(0H~ArN$m(0H~AlN$m(0H~ANN$m(0H~ATN$m(0H~AN$m(0H~AN$m(0H~AN$m(0H~AN$m(0H~A`N$m(0H~AfN$m(0H~ABN$m(0H~AHN$m(0H~AN$m(0H~AN$m(0H~AN$m(0H~AN$m(0H~AN0-(HW@?0-4HW@??-0?->N,pN$pN(0-66-04-42-(N6pN$?-Nar0-Hgx"mNX4-4H2-(HN0-Hgx"mNX4-4H2-.HN0-Hg0-86-04-82-(N0-Hgx"mNX4-;m680-Hg0-m80-Hm8;@@0->Hm;@<0-H0m8$ml8H mT!H0-HVHH/0-HVHJ@WHHg0-0H0m*$ml8H mN!H$ml?Nh NJNAlN$ml8H m$؄00H;@$ml8H m؄00H;@($ml8H m؄00H;@*$ml8H m0؄00H;@2$ml8H m؄00H;@.$ml8H m؄00H;@0$ml8H m؄00H;@4$ml8H m؄00H;@6$ml8H m؄00H;@8$ml8H m؄00H;@@$ml8H m؄00H;@:$ml8H m؄00H;@<$ml8H m؄00H;@>NJNAlN0-(H$ml8H m؄1H0-*H$ml8H m؄1H0-2H$ml8H m0؄1H0-.H$ml8H m؄1H0-0H$ml8H m؄1H0-4H$ml8H m؄1H0-6H$ml8H m؄1H0-8H$ml8H m؄1H0-@H$ml8H m؄1H0-:H$ml8H m؄1H0-H$ml8H m؄1HNJNEpA*NEp6 m N?<Hm*0-HR@?/- ?<?-N&0-^HH/0-Hr4mҊVHHg0-HS@?abNlNJN?-a:- g;m;m`-Xg(?-a- g0-mg;m;m`?-a- f?-a- g ;m`$mdBR0-N`J0-$mdRVHH/0-$mdRfB0-$mdRVHHg$md?aڀ- f$mdRR$md0koY- g$md0mg;m md;P- fPpJ-Xgp/8-H m 0HVHHg(?-N.JBg0-mg;m;mP - f|8-H m 0Hgh0-mWHH/0-mfp.0-U@]HHg:?-N.JBg,P ;m;m8-H m 0Hg?-a- f6?-N.N/8-H m 0HVHHgP `pJ-+gp/0-U@WHHFg$mdBR0-N`$md8H m 0HVHH/$md?N.NgL0-mVHH/8-H m 0HVHHg?-N.JBg md0P - f$mdRR$md0korY- g6;m md;P0-U@l;mN#?-aXNN#NJNA퀰N^AN^ m0 m0N#Bm0-N` m;PaN$Rm0-koY m;P m;P?-a?-aNN#NJNAlNAN^$ml8H m 0Hgf m0;m ml;P8-H m HNw0-U@l;m-8f N$Noa-8fN# m;PNJN?-a0-mfN`|0-mfN[BgNCHxN~`X0-mfNv`F0-U@WHH/0-W@WHHgNw` 0-mfa`0-mfN}$NJN?-a>0-U@l";m?-N<@?-?-NX` 0-Y@l?-No`0-mf8;mNN&N#?-aN'FN+Z?-?-NX`0-mfb;mN:-8-H m؅؄00HH8-H mB!H8-H m؄00HH8-H mH!HN&N`F0-mfaR`60-ܰmf?-HyNz`0-mf?-HyNz?-a?-aNNJNN N0-mVHH/0-mVHHg?-a0-ܰmVHH/0-ܰmVHHg?-a0-U@VHH/0-U@VHHg?<a0-W@VHH/0-W@VHHg?<a0-f(0-S@VHH/0-S@VHHg2?<aX`(0-S@f 0-VHH/0-VHHgBga.0-mVHH/0-mVHHg?-a0-f"0-VHH/0-VHHg6Bga`.0-S@f&0-S@VHH/0-S@VHHg?<a0-mVHH/0-mVHHg?-a0-mg?-ar0-mVHH/8-H m 0HVHR@WHHg?-a8pJ-Xgp/8-H m 0HfB0-mVHHg?-a0-mVHH/0-mVHHg?-aNJNHyHyHyd?<d?-?-BBgx m؄00HHR@??<E6pN/NtHyHyHyd?<d?-?-BBgx m؄00HHR@??<EHNJ`4$m8H"mNX$ml8H$m:H$ml<H$mx>HNJ$mRR$mlRR$ml0koxYNJNA퀨NA퀄NA퀀NA|NAxNA퀔NAlN$m0S@;@$ml0H`A~$m8H:-H$mx4Rڊ$m|<H$mx>HNJA탄$m8H$m:H$m|<H$m>H$mx4RފNJ$m0HA~$m|4H$m2H4mN$m0HA탄$m|4H$mx2HN`jA~$m8H$m:H$m4R$m|<H$mx>HNJA탄$m8H$m:H$m|<H$m>H4mNJ$m0HA~$m|4H$m2H$mx4RҊN$m0HA탄$m|4H$mx2HN`A~$m8H$m4R$m:H$m|<H$mx>HNJA탄$m8H$m:H$m<H4m$mx>HNJ$m0HA~$m4H$m|4RԊ$mx2HN$m0HA탄$m|4H$mx2HN`A~8-H$m|4R؊$m:H$m|<H$mx>HNJA탄$m8H$m:H$m<H$m|4R܊$mx>HNJ$m0HA~$m4H4m$mx2HN$m0HA탄$m|4H$mx2HN`nJgZ @KgR @jgJ @sgB @g @Mg @lg @tg @gl @Pgd @ng\ @g @Hg @hgNJNA퀨NA퀄NA퀀NA|NAxNATN$m0H$mx0RR@$m 4$m0H$m|0RR@$m4$m0H$m0RЈx m$!Hx mAH x m$!H?<NNTx m$!H$mx0Hx m$!H$m|0Hx m$!H$mT0H`4x m$p!H$m0Hx m$!H$m0Hx m$!H$m|0Hx m$!H$md4$m 0N`*A$Nx m$AHRx m$AHS$mdRR$md0koY`$m 0Hx m$!Hx m$p!H$mx0Hx m$!H$m0Hx m$!H$md4$m0N`*A$Nx m$AHRx m$AHS$mdRR$md0koY`Jg @#g`XNJNP:ATC탊NHmZNHmN>A탢C태NC탐NA탖C탐N"HATN"mNNJNANfAdN^AlN^ m0($m4$md4$m0N`tp$md2H mNNz$ml4$ml0H``Fp_Nbt$md2H"mN`, @.g& @0m @9o @Am @Zo @\g @_g`$mdRR$md0koYNJNANp mNfC태NA태Nz;@?-NNJBf?<NAT@A;@0-A태N0<:\NlC태NC태Np4mЊNNJNA탨N?< NMTNC*N0-.$m4$md4$m0N`Lp$md4RЊ$m0RD"pA*Np1N.gp@$md4RЊNbC탨NC탨N$mdRR$md0koY?<NAT@A;@0-A태N0<:\NlC태NC태N`(NAlN$ml0NbC탨NNNJNJN-PgA`rNpNt+@H` A`rNNJNpNp\NbNBNJN-:g0A`8-H"mN AT8-H"mN AHC탮NNJN-PgE pANN`EpANNNJNNJNEop A*NE{p m N$md40-N`Fp|rN@"m N/p$md2HA탨N"_N/pND"_N"m N$mdRR$md0koYBgHm*0-HT@?/- ?<?-N&0-S@o0-U@;@0-f,pN&<:<NAx 00A태C؄AH $p^rNzNAT <.PICN~g;|a$m8H mAH /$mX8H mAH /0-H$m0R"_ _N0-,$m|4N#0-,H$m|R??-$m|?N?- Nz0- H툾H0m Јr@l ?<?- a4N#?-BgNNJN0-H$ml2H4m$Ҋo60-HH0m Ј0m$Ј$mlR$m4$ml0H0m$Ј0mD$m(4$m(0o8$m8H mAH /x$m4R؊ mAH "@$m(0H _N$m8H m H$ml4 N0-,$m|4A$8-,H$m|4R؊:-H$m|<H>-HNJA$$m|4H2-H4mҊN$m@g$z 8-H"mNj$m|4H2-HN`p A<$m|4H2-HNNJN$ml0o0-HHm $m40-H$mR$mX4$ml0H2-$H$m4RҊA$m4x$m4R؊ mp0H$ml4N0-m$mlSR$ml0H0m$Ј0mD;@V0-Vo6$m8H mAH /x$m4R؊ mAH "@0-VH _Nxp$mX4R؊ mHN#?-Nz?<?-aN#NJN$mlBR0- moRmNJN0- moj?- N0-HHm $m40-H$mR$mX4"m m2 m0$ml0Hm$$m4$ml0^HH/0-$^HHg&$mRR0-$mR0-$mXR$m0$mRp2-H$mX4Rl>$m8H mAH /$mX8H mAH /0-H$mX0R"_ _a$m??- N0-$mR\HH/p2-H$m4R]HHgz$m8H mAH /$m8H mAH /0-H$m0R"_ _a,8-:H mAH /$m8H mAH /0-H$m0R"_ _a~0-$mR\HH/0-$^HHg$mlBRRmBm$ab`N#0-,$m$m|4$m|??-0-,H$m|R?N0- HR@?Nz$m?Nz$mlBR0-$mRm(?-Nz?<?-aB?<0-HR@?a0RmN#NJN0-Hr4m Ҋ$ml40-H`pJ-*gp"pJ-%gpg20- o*$ml0m Bg0-H$mlR?A /NaX`z0-o SmNn`h0- ob0-m Bg0-H$mlR?A /NBg0-Hm,??-,NBgNzHxaN0- HR@?NzNn`-*g$mlBR;m*`-%g$mlBR;m*0-$o~Bm$a`t$ml0ol0-HH0m Ј0m$Ј/p$ml4RЊ"A$m4$m8H mp0H$ml4N0-m$mlSR0-*mo ;m*$mlBR`d0-H$ml2H4m$ҊoJ-*g?-?- ?-$/-lHmN|`&-%g0-HH0m Ј0m$Ј$mlR$m4$m8H mp0HJfNL`n?-?- ?-$/-lHmN|-gN0-H.HjR0mD;@$0-H0m$R2-Ho@$ml4$ml?Na6`j0-HH0m Ј0m$Ј$mlR$m4$m8H mp0H$ml4$ml0o*N0-H2-H4mҊo0-m$mlRR`pJ-*gp"pJ-%gpg60-m o*$ml0m Bg0-H$mlR?A /Nax`~0- mo RmNn`h0-H$ml2H4m ҊoP0-m Bg0-H$mlR?A /N?-,?-BgN?- Nz?<?- aZNn`0 @HgN @Kg @sg @Mg @tg @PgNJNA NA퀄NA|NA$$m8H:-H$m|<H~NJA$$m 4HrNNJN$mBR mp0*?-?- ?-$/-/-pN|-g 0-4m$` $m0m$Bg?-A$/N$mlBR;m*aNJN0-$o mp0*0-HH0m Ј/p4m$Њ"A$m4 md0$`F$md8H$m4R؊ mp0H$ml4N0-$mpR0-$mpRoSm$$mdSR$md0lBg?-A$/Na`` $mlBR;m*NJN?- N$ml0H2-H4m$o0-H0m$R@$ml4$ml?NNJN0-,/p Ax$2-HNNJNANAN^AN^;m*$mBR$ml0^HH"pJ-gpg0-HH0m Јm$$m4"md m2p$mR$m0RЈN`z-g@"ml m2$mp0m_HH/$md8H mp0HJWHHfH$mRR$md8H mp0H$ml4N0-m$ml0g$mdRR$md0kozY0-°mn $mlBR;m*NJNA퀠NAN^;m0-HH$mR$m40-H$mR$md4$m0N` $md8H mp0HJnSm$mdSR$md0klYNJNApNfA퀤NfA퀬NA퀠NA퀜NAN^AN^Q텛Bm4Bm6$m0HH$m0RЈ$mR$m4"m mp2`n$m8H$m4R؊ mp0H$ml4$ml0g`N0-$mR-f 0-$mİRnP텛 m;P4 mp;P6$mRR"mp m20-H$m2H4m$ҊnzNJNA퀜N0-,$m$m|40-$m|Ro0Bg$m|??-0-,H$m|0RЈS2-Ho@?N"2NJNA퀠NA퀜N8-:H mAH /0-$m$m0RЈ( mAH "@0-H _atNJN0- mo0-HHm $m40-H$mR$mX40-,$m|4p2-H$mX4Rl>$m8H mAH /$mX8H mAH /0-H$mX0R"_ _atX8--HNJ?-?-0-HS@?0-HS@?N0-6-4-2-N0-vm4-2-N?-?-?-?-N٢?-?-0-HS@?0-HS@?N,NJNA|NAxNA퀜NA퀤NANANAlN^$m0H$ml4$ml0R@$m4$m0R@$m4$m0R@$mx4$mx0H$ml8H mP؄1H0-H$mx0RЈ$m8H mP؄1H$m8H mP؄00HH0mЈ$m8H mP؄1H$m8H mP؄00HH0mЈ$mx8H mP؄1H$mx8H mP؄00HH0mЈx$ml4R؊ mP؄1H$m|0H$m8H mV؄1H"m ml2p$ml4RЊN`h$m 8H mP؄4pHHR$m8H mV؄4pHHRx$m 4R؊ mP؄4pHHR$m8H mV؄00HH0mЈ&$"a~$m RR$m 0koY$m8H mV؄00HHm$mt4$ml8H mP؄00HHR@?$mt?$m8H mP؄?0H mN/?<NH$m8H mP؄00HHR/zx$mt6p$rarr0-H$m|R;@NJN$m@Q$mp?x mP؄?0H?-Na`|$m4$mt?x mV؄?0H0-Hm?Na`N$m4$m0\HH/0-$mRlB$m0lB0-$mR\HHg$m0H$m4$m0T@$m4$m8H mV؄00H$m40-H$mR$mt4p4mЊ$m2Haa"$mR$m4x$m4R؊ mP؄00HT@$mx40-H$mR$m|4x$m4R؊ mP؄00HH$mp2Ho&$m8H m؄00HJ@l4$m8Hp m؄AH0$m8H m؄?0HN&`$m0H`$m@P`X-SgFHm6NTx mP؄?0Hx mV؄?0Hx mP؄?0Hx mV؄?0H?<N`v-gp$m@P`h-SgbHm7NTx mP؄?0Hx mV؄?0Hx mP؄?0Hx mV؄?0H?<N`JgN @gF @gF @g`$m8H mP؄00HH$mp2HoZ$mx?$m|?$m8H m؄?0H$m8H m؄?0H$m??<$m8H m؄AH /N&`6x$m4R؊ mP؄00HH$mp2Ho$mp?$m8H mP؄?0H?-Na]h$mx4$m4$mx0f$m4$m0$mxR$mx8H mP؄00H$m4x$mx4R؊ mP؄00H$m4$m?$m?$m?$mt?NX$m8H m؄?0H$m8H m؄?0H$mx?$m|?$m?$m8H m؄AH /N$$m?$m?$m?$mt?NXNJNA|NAxN;|;| m|;P0-Hm;@$mx0Hx mn؄1H$mdBR$md8H mn؄00HH0mЈx$md4R؊ mn؄1H$md8H mn؄4pHHRx$md4R؊ mn؄4pHHR0-&4-"axp$md4RЊD/$md8H mn؄00HHX/zxvp4m֊$"am>$mdRR$md0W@oLx mn؄?0H?-x mn؄?0H?-N,PQNJNAlN$ml8H mn؄?0H?-x$ml4R؊ mn؄?0H?-NXNJNANA NANANA|NAxNANA큀N$mx0H$m8H mt؄1H$m|0H$m8H mz؄1H$m0H$mx0RЈ$m8H m؄1H$m0H$m|0RЈ$m8H m؄1H$mx?$m|?$m8H m؄?0H$m8H m؄?0H?<Nش$mx?$m0H$m|R?$m8H m؄?0H/-$m ?NH$m8H m 0Hg $m?N׮$m0H2-Hl@;@NJNA N$m ?N׮N$m ?NJBWHH/0-gp.?< NATg$m ?N׮NJNA N$m 8H mt؄?0H$m 8H mz؄?0H$m 8H m؄?0H$m 8H m؄?0H?<NNJNA큰NA큈NA NAdN^"md m2$m0a|`:$md8H m 0Hg$md?aF$md8H m H$mdRR$md0koY$m 8H m H$m ?aNJNA|NA퀄NA퀀NA|NAxN$m0$m6$m|4$mx2atn$m|0Hg$mx?$m|?$m?$m?N,NJNA퀄NA퀀NA|NAxN$m0HR@?$m|0HV@?$m0HR@?$m0HR@?$mx0HV@?$m0HR@?patNJNA퀄NA퀀NA|NAxN,<z$m8H$m6H$m|4Hp$mx2Hah,<z$m|8H$m6H$m4Hp$mx2HahZNJNA큘NA큜NA NA$NANA큔NAdN^A(N^AlN^A퀤N^A퀜N^ApN^AtN^AxN^A|N^A퀀N^A퀄N^AN^AtN^A큠N^A큤N^AN^A큸N^A큄N^A큨N^Bm"Bm$Bm&Bm(Bm*Bm,Bm.Q_Q`Bm0Bm2Bm4Bm6QABmQaQbN(axPc;|8;| <;| >0->H;@@$m0HT@;@B$m4Hy?<NN\/?p$ml4RЊ mNf$m8H"mN p$ml4RЊ mN"ma{V` m$m8H"mN $m8H"mNX0($m4pJ-_gp/0-D$mRnB$m0^HHg 0-F$mR$m0HH$m2Hl@$m4$mRR$ml0gRm0` m;P&0->HЀ/$m0H2-(Hl@"A;@"-_gp4m>Њrl@m" m 0(gz;m&6p|Nbp"m N$ml4$ml0gp$ml4RЊ m Nf8-2H"mN p$ml4RЊ m N"m az $m(0H8-4H m؄1Hp m Nfp|akg.Rm4$m(BR m 0(HSr m N"m ayRm&`$m(RRRm2`. m 8-2H"mN $m(0H8-4H m؄1HRm2$ml0f $mdBR$mBR0-4av `0->H$m8H m؄1HpJ-_gp/p4mDЊ2-&H^HHg 0-@H0m(Ј$m8H m؄AHP$mBR$m8H m؄00Hau`$m8H m؄00HH$md8H m؄1H$md8H"mNX0(HR$md8H m؄1H$md8H m؄00HH$m8H m؄AHP$mdRR$m8H m؄00HH$m2Hg0$m0H$m8H m؄AHP$mRR$m0ko2Y0->H$m8H m؄AHP$m8H m؄00HH$m2Hl@$m4$mRR$m0ko\Y$m0H2-"Hl@;@"$mdBR$mBR0-4atH`~$m8H m؄00HH0m"DH$mp4$mBR$m8H m؄00Hat`($mp0H$md8H m؄AHP$mdRR$mRR$m0koY$mRR$m0kovY0->P@;@$-`gD$mBR0-0as`&0-$H$m8H m ؄1H0-m$0-$H2-@H4m*Ҋl@;@$ m 0(g0-@m$0->HЀ0m*Ј2-$Hl@;@$0-H2-$Ho@;@$0-H2-"Ho@;@"0-$HjR;@0-"HjR;@$m0HVHH/pJ-zgpJWHHg;mΈH;mЈJ`Nш;@HNњ/8-6H m ؄00HH0m␈Dm<;@J0-mHo;mH`$0-H2-H4mHҊl0-Hm;@H0-mJo;mJ`$0-H2-H4mJҊl0-Hm;@J0-HHm;@0-JHm;@L0-H0m"2-Ho@;@0-H0m$2-LHo@;@L0-"Hm;@N0-$HmL;@P0->Hm;@R0-(aN"&<:<aK<&<x:<a|vasaLmR;@TpJ-_gp/0-(aMvNaLJJBWHHgXmRXmT0-NHm>;@0-HmR;@0-HmT;@0-H H ;@0-H H ;@$mBR0-&ap0` 0-LH$m8H m ؄AHP$mRR$m0koY0-2g>$mdBR0-2ao` 0-H$md8H m؄AHP$mdRR$md0koYA탺8-PH:-NH<-LH>-Ham $m$B-bgp$m$$N 6$m0Hg^A .p|z8-PH6-NH4-LH2-Ha^ m$/p.|zx4mP؊v4mN֊t4mLԊr4mҊa]`* m$/p.|z8-PH6-NH4-LH2-Ha]$md4$m0H$md2g00-PH$md0R6-N$mdR$md4mL$md2magz$mdRR$md0[@o-_g0-Hm;@p@2-"H4m(mp2-"H4m(@hHm;@$m0HA04-H2-Hai$m0@o*?-.N$m0HA0t4mԊr,4mҊai-`gpahx$mBR0-0am`$m8H"mNX0(H@$m40-D$mRo mp0T0-$mRlV m0`L mp0R0-$mR]HH/$m8H"mNXpra~`/pND"_aag m0$m8H m ؄4pHHR$m8H"mNX$m6$$mp2ao$mRR$m0ko$Y0-2gN$mdBR$m$F$mBR0-4al` $mBR$m8H m؄00Hal`$md8H m؄00H$mx4$md8H m؄00HH$mxR$m48-6H$m4R؊ m ؄00H$m|40-8H$m|R$m4$m0$m6$m|4$mx2adp$m$S$md2Hf$p$mRv$mRt$m|Rr$mxRad$m0W@od$m$,zxp$m4R؊v$m4R֊t$m|4RԊr$m4RҊaY m$/p,zx$m6Ht$m4RԊr$mx4RҊaZ&$m0Hgx$md8H"mNXa|"man$md8H m؄4pHHR m0(HHVDH$ml4$mx0Hr$ml4RҊЁ/ mvt$m|4RԊ"aYP`*$md8H"mNXvt$m|4RԊr$mx4RҊaY$$mdRR$mRR$m0ko Y$mRR$m0koY m 0(H/pJ-dgpFg"8-6H m ؄?0HNN0NFNQcBma`{a{ApavNFpaeNaW\NQaBm$mBmPp$m4RЊai`8-PH m؄00HHR@$mdRRmP0-PkoY8-6H$m4R؊ m ؄00H$m|40-8H$m|R$m4$m|0HmB$mt40-BH$mR$m4$mBR$m8H m؄00Hah`T$m8H$md4R؊ m؄00H$mx4$m8H$md4R؊ m؄00HH$mxR$m4$mx0HmB$m40-BH$mR$m4$m?$mt?$m?$m?NJBg$m0H$md0RЈR@;@$mx?$m|?$m?$m??<NN?< NAT2-Hf&$m?$mt?$m?$m?NaCFg$mx?$m|?$m?$m??<NPapJ-agp2-H/?< NATf$mRR$m0koY`&0-S@fn?-?-L?-N$mp?NJBgNA$8-PH:-NH<-LH>-HadA탺4-LH2-HabNFA$4-LH2-Hab` m.faSDopaX$m4paW$m4paW$mx4p0$m4RЊ0mЈ/p$m4RЊ0mЈ$$mx0"aU,aSpC$mx4RЊ0mЈ/p$m4RЊ0mЈ$$m0"aTaSaRrЁ+@D?< NAT2-Hg0-S@^HH/0-S@WHHVA0-U@f BmQA`0?< NATJg"N-%g6 m.f?-?-L?-N?-PN` m!fBgaBm`0-H`~Bm$m$m( R0H/$m( R0(H/A0(*|~a`$m(/A0 /N$m0$mlRg"$m 0H$m(ђ$mdRR$md0ko,Y`satA ao0Aao(E +@$m /$m/ mNP`sasA퀄anA퀀anA|anAxanx"mNX$m8H$m:H$m|<H$mx>Ha_J`sFasEƀpR m ad?<Epap/0-VHR@?/- ?<?-a0-g,0-S@;@V8-VH m؄00H;@0-H;@`rasAaoLA큔am$m?/-?<Ep ap/?< ?-a>`rarAao A큔am$m?/-?<Epao/?< ?-a`rParAanA큔am|$m?/-?<Epao/?< ?-a`rarV?<EpaotCaT^/a`qar0?<Ep'aoNCaT8/az`qar ?<NE)paU/?-N2aM<`qaqAlalx m ؄00HHr Ё/$ml0a=,ar/pasZ"_aS$2-Tab`qLaqA큘alAamA큔alp$m?/-Bgan/?<$m?a`q aqR0-aZaZ $mdBRp4mЊa_z`6$md8H m؄4pHHRz$md8H"mNj4-"aa$mdRR$md0koYB?-x?-nBgNpaYVpaY`paY^0-6-4-nraWZpaYBpaYfaYna`pVap$m-tHa[N?-t?-n0-vHS@?0-pHS@??<aN60-Hmn$mt4$m4$md4$m8H m؄00Ha]8`$m:$m8H m؅p0Hg paWvaW$m:$m8H"mNj$mt4rmta_$m:$m8H m؅p0Hgpal>$mt4rmta_JpaW aW$m:$m8H m؅p0Hg$0-H$mt0RЈ6-v4-$mtR2-taU$mRR0- $mtR$mdRR$md0koY$m m l;|$ml4;| n;| `;| $ml4 ;|n;| 0- H$ml0RJjR$mlR;@0- Hm;@0-nR@;@$mp4EUa; mNӮ mEpaMfpaj"maKb"maZ$mp0H8-H m؄1H m0(H$mpR$mBR$mBR m l map"maZj m$m:8-H"mN4 mNӮ ma f$mRR magrp_aLDgX$m:8-H m؅p0H$m:8-H m؅H m0(HSr mag"maYpai"maJb"maY m0(H2-Ha3$m2Hl@$m4 m l mao "maYz m$m:8-H"mN4`$m0H8-H m؄1Hp$m4RЊ8-H m؄1HRm`:$mp0H8-H m؄1H`g>ag-|fNBgN\`g"aghA@ab-!g ?-\?-^?-`?-bNJBgNN0-S@WHH"pJ-{gp/?-?-?-?-Na1&gNo4aelN(NF`B?-?< Na0"p$m@Jgpga0-S@WHH/0-\HHgJ?-t?-n?-v?-pNJBg0Rm:-8-hH m؅p0HVHJ@fNn$mpBR$mtBRQg$m?-tBg0-vHR@?0-pHR@?a` @g @ag @ g @!g @.g`eaeV0-hH`?-N`~0-H`FN[0-W@]HHVP?Nl`6 @g @g @g @g @g @g @g @g @ g`0-H`\ m00-S@;@Nf m;P`jN`b?<Nx`VBgNx`L?<Nx`xNH`pN`h @g @g @g @g @g @g @ g @ g`6Jg @g @g @g @g @g @g6`aab Ala]$ml0H`N .`zN `r?-Nmb`fHyBgaHm|NT`N? @ g@ @g8``na`Ala[$ml0H`E;0<A*aRE p\a]C*aBC*aQBgHm*a`|Ef0<A*aQBgHm*a`^Q1zx m؅Hzx m؅B0H`2P1zx m؅B0Hzx m؅H`|N`t?<E'pa]/?-tEBpa\/?<?-a;mt8-H m 0HgPN#N2j?-NZNN#`,N>`$Hm&NTHyBga0` a`N76`EZ0<A*aPE@0<a\XC*aABC*aPE0<a\:C*aA$C*aP|?<Hm*aX`x @gH @gz @g @1g @g @g @g @g @g @g& @0g @g @ g. @ g, @ g.`^(a^n`^ a^fzx m؅Hz x m؅Hz x m؅Hzx m؅Hzx m؅Hzx m؅Hzx m؅Hzx m؅Hzx m؅Hzx m؅HpJ-|gpnDzx m؅HpJ-zgpnDzx m؅HpJ-!gpnDz x m؅HpJ-1gpFnDzx m؅HpJ-1gpnDzx m؅HpJ-{gpnDzx m؅Hzx m؅Hzx m؅H`\fa\Ep; m aN?<E=paY/?-/- ?<?-a0-g*;maN$aTaNoNN#`[a\>Hy@NNX$ml4$ml0^HVh-hg*$ml0HVHJ@fN `Hy Bga`Hy ?<a`[a[Hy@NNX$ml4$ml0Hr@$ml4$ml??<@NNXHy Bgar`[Pa[N^AauHp ~Aaq0<aYLx"mauENpaXx"mauEcpaXvx"mau$md4p aX$md8H"mau$mdRR$md0Q@oaX6x "mauaS@AaNE aMaLpaMVSfaMAatN`Z~aZaPX`ZraZNo4aY$+@E{p aW"HAaV"HAa@C*aKE̔paWC*a-\HaD4`X0aXva a\praW"maI0-\HV@?0-^HX@?Hy/-N(J ma]aUXa]\`WaX"?<EpaU@/a\"_a:&Epa;/a\"_a:p|a;"/?-aJa\jCaIR0-TH@0?x m ؄00HHX@?HyHmN(J$m<fJa[CaI0-TH@0?x m ؄00HHX@?Hy HmN(JAa\-HaBZ`VVaV-{gL0-Hrl@/A$2-Ha@faTa!f&<x:<aPXaW,tmrmaG4`UaVB`aV:A퀄aQ(A퀀aQ A|aQAxaQ$mx0$mpR]HH/$m0$mpRnB$m|0$mtRoB$m0$mtR\HHa `U`@aUAlaP$ml8H mt؄00HH$mp2H]HH/$ml8H m؄00HH$mp2HnB$ml8H mz؄00HH$mt2HmB$ml8H m؄00HH$mt2H^HHa `T`paa &<x:<aNNu`xaTA퀌aOA퀈aOAlaO$m0H$ml2H$m4R@a$a`Tr`2aTA퀐aOAlaO$ml0a aUhaQ$m2Ha az`T4`aTvA퀔aOdAlaO\$m0Hr$ml4RҊ@a$p$m2Haa6`S`aT2AlaO pr$ml4RҊ@hH2-Haa`S`|aSAlaNpr$ml4RҊ@haX`S`TaSAaNAaO m 24aT/ m 24aTzaP$m0RDnDaUB"_a5`T`S:aS?<NNT;@pao,;@pao";@p aoS@;@0-U@VHH/ mgp. mVHHg*EpaPL/ < OK aPr"_ta?;Aa(;|;|0-fP0;|;|`X0-S@f P0;|`D0-U@fP.;|;|`*E`NaO>p&ab0`NaO0?< NATJg`NaOQ'?< NAT/ah"g?< NATJgN`NaN?<NAT$m$$$m$ VHVL$m$ VHVKpJ-Kgp"pJ-LgpV*$m$ VHV%$m$ VHV($m$ VHVN$m$ B@H@;@pJ-%gp"pJ-(gp"pJ-*gp/ mWHHgN f$m$ $mh4P'-ZfNN(`MaMHyNNX @p!@`MaMA크aHAxaHAaHA퀼aHA퀌aHA퀈aH-Lg$m4$m4`-Kg $m$m0-H`$m0$mxR-%gl$m0$mR`^$m0$mxR-%gL$m0$mR`>$m0$mR-%g,$m0$mxR`r$m0$mR-%g`$m0$mxR`R-%g "mx m2`@"m m2`4 @Kg\ @sgT @Mgl @tgd @Hg| @Pg @Sg`LHaLA큌aGXA퀌aGtA퀈aGl0-H`@$m0$mR`\$m0$mR`N$m0$mR`@$m0$mR`2$mBR`* @Hg @Pg @Kg @sg @Mg @tg @Sg`KaKaeUWHH/?< NATg$mH$mx4Rފa5hp A$$ml4H$m|4RԊ$ml2H$mx4RҊa3z`I:aIAlaDn < aGP0A퀀a>A|a>Axa>,<z$m|8H$m6H$m|4Hp$mx2Ha8,<zxp$m4R؊$m6Ht$m|4RԊ$m2Ha,<z$m8H$m6H$m4Hp$mx2Ha,<zxp$m4R؊$mx6Ht$m|4RԊ$mx2Ha`BaBN$N$BaR`BaBN$N$j`BxaBaHyNNT/x m AH /?<NNO `B4a>zAa9DAa9`Ada9XA|a9PAxa9HAha:Ala: Aa:*Aa:"Aa:a$mHa). m$m6H$m|4H$mx2ap A$t$m|4RԊ$ml2Ha'0aaVN$mjDGGe GbFGNuG GbFGNu~Nu 24HjDBaDBNuBe B/dAрQ4<`BNutNu $HkBk Bj*DBNupNuDBBkBjDBDNuf gp`I 246jDCCe0 C/jC C@j C jr0H@{0>H@Nur{0Nu{0NutNu 246j(:<DCaf AfBfNu`"a 00Nur$o, b4< J@k @[H@NuH@RBNu4<Ѐ[NuDg8k2 b4< J@k @[H@DBNuH@RBDBNu4<Ѐ[DBNu4H@Ѓdh`^HCH@:">H@`H2g&HCH@:<HC>H@Ѓd(`HCH@:H@r` gDBgkDE`HDBDEaBDBNugDBa8DBNutNua 11!Nux`xaR`aL` 24&8:HoHoEBJAgJDfr:g,|HC҅H@:ۆ<HC>H@Ѓd`vHCH@:H@`fgDBgkDE` DBDEaDBNugDBaDBNutNuHoHoEBz:g|HC҅H@:ۆ҄ۆ<HC>H@ЃdHA@B@H@хk HAҁHAрSB BbNuJBj^tNuk(g.JBjDBAр[SBDBjNutNuAр[SBkNuJlNu0gH@rJBkB JkЀ[`DBЀ[`J.;gP:pr4<Nup`F(xa`Ba411!Nux`4 24&8:`& 24&8:`a&8:` &8:@ABJEoHnfNup`EtNugDEDBHngDBEBkQ*HEJDg?<>0rHGGdHGGdSWDуdi?<>0rHGGdHGGdSWDуdi ?<>0rHGGdHGGdSWDуd&2 H@kփAр[SBkփejRAd RdQRBJjDBNutNu?<,>CEdGH@0r`xJCgz?<0rÐdSWЃdi?<0rÐdSWЃdid?<0ÐdSWЃd&2 H@kփAр[SBkփejRAd RdQRBJjDBNutNu?<0riR?0i?`?<`@$g\kdHfiHNufnpNupNu"lDaDNuJnDaDNuzxeҁ؄d`ef Nup`C@&gTkdHöfiH@HNugmNupNuz&lDaDNuJlDxeփ؄d`efNupN"_KԆMI.2O:HQ <-H*,`N,{d d3 d# d# # d# # # # d ALH dAL H LH d AL`H L|0H>L|H>d~# # # # A`@ALH L|H>L|H>L|PH>L| H>L|H>L|H>L|H>L|`H>L|0H>L|H>QL|Nu$H$&"BA -KaXA"f B &nNuH>dd2d"d""d""""d LHC dLHLH C@d LHL|H| L|H|PCd~""""C`:LHL|H| L|H|PL|H|L|H|L|H|L|H|L|H|@L|H|pL|H|L|H|CQL|Nu`@a8A-Hhp apMa=@F?<NNTT@A0r p0Q`pdr ta0.F=@=@ACp,2QAp 2Qa@a:`x`tpeahp`(p?a(adabaHz?< NA\?<LNAfCR2A0A82r22a|"<>z0<NBLNurt=@:=A@=BpsNB0.Nu=@0=@=B0=@a"<>fpsNBNuC|2 @ e$ @bA,0A2r22a"<>N0<NBLJNu&0D4(*<B$,>2::(   F..26"8@"PQ1!P1P!0PP`0  q#p"AӘQNuA Nu|^|  R^,T:Hz(` N>Hz ?<&NN\Nu9TgNuWTNuaaaNuNuNupc?a0QNurdAd6Ag,B(dB(dH Ac<atgBAp`$NuNu?<OA`d?<IA`Z0<H Ia%Lt Ig Og Ug Ag Rg*afNup`a%p`;`0afHRa%>Er$Wgr STD:gr COM:g r LPT:f2FA$_0=@D~CA0< Bha$B2"pNu$_AF Ge><QBAFpNuahgzp=` a\gzpa#AHPBHQ?NA\ _Jk9jNuHz `Hz"` <Hz&?<&NN\Nup CNup C0Nu C NuJBgVB&8TTDуdQRBNuDAр&AdRAрAрDуNu <r4<NuQfHR$n2Jjg$_NuH LNuPfJ.fg0HR$n2Jjf$_NuHC/*%I $n2%_LNua n2H&1@$1F"8a^1| NuaA n21@h1EZ1CN1BL b "n6D(1@$DBh$1|jBhr!jLT1jPXj$"jHA1qHBhJ81hH1DP1jRRBhf1|B1|D1j>\1j@^1j:`(*6HD([fx!Db1|F1|@C$!Il1|@pNuHpa!a&I>`Lzpra$ n2 hP.SGjLNua n2"h $h224Nuaj n2H&1@2!F.1E$a Bh4NuaD n21@2!G.1F$H&8aBh4Nu B?b4<rpAv JBlDBv-|JBg Bb Bk&H>aaRFBd&8*L?a<alSF Be BgQRB`RAdR e <rRF&0xaDCձfEv+0JFjDFv-Hƌd0BFHF 0HF0ANuprt|`HQ2.d Aeg>r C 5e&!R 0c 9c0`<R"_`VC0 Ef"_Nuaa/ CFr  g 00VJAgB @ nN @mHJ@j0.4DBUBk0QSAg Q.`S@k 0`0BAF "_Nu.WAkQA 0g`8pA0XL0XL0XL0XANu n2:H>6Nu-@ _aG` VNuag`af`ae `ac` acpNuadpNu/ a|$I> _ar4Ae4v` VfANuHP0(R@kBaX $I _a@IUd4Id4Id$Id `$$$$Q @JfNuNup `0aSAfNuag`af`ae `ac` acpNuadpNuaSAkfJANuH HPhkJa $I _aIUd4Id4Id$Id `$$$$Q @JgSL`QNup `0abAf` VNuag`af`ae `ac` acpNuadpNua(4@m4v` Vf@Nu/HP0(X@kHa $I _aIUd4Id4Id$Id `$$$$Q @Jf$Nu $Nup `/^aYAfNuag`af`ae `ac` acpNuadpNua~SAkEF$p VfWANu?HP0(T@kHad $I _aLIUd4Id4Id$Id `$$$$Q @Jf4Nu0XNup `.aUAfQNuag`af`ae `ac` acpNuadpNuaSAkXf SAkXfJANuth`tpa ".Nutj`t@H|`nt)`t` tr`t2`t@-A=B|`Nv8`v(`v-` v!`v `v@-AH |`(HAHBHCHDHEHFHG-HfAD-HH@-@H|p`8z0<n\n^=E=@Hp rt=|D`z`z `z8.^n\Dn\@Hp tr=ED`Zn\n^8Hp rt=|D`:n\n^HBB=CBn=D=@p rt=|D`n\n^n\n^A0000000000prt`n\n^648HH`prt`n\n^n\n^8HH`prt`"_A `4RB`"_A42L\A` L0GF11Q-p`prHQ`@Bp'rta2 n2rt6(SC0(S@apaB\papava0paRG=GYfx-IC=C=C$tBft=B=B(tFJ=BBBB*Do>Eo:@l6Al2DDk =DVBnDEk =EnBn@cVo Acno,_NuAH`/=@a _a]Ak024E$ Bb5B5A6CC5CK5C:8AB0000DkxEkt00A<:d>:bSFSGFn\GnXDDk0BhDEk1EBh Fchh Gchh0hb"0hbpmrt-|P\H-|PpL`nNu-HNB"?<NNT-@XDbDEbEBb=ET=DV-|PBLBp n20(L=CJ?=B^C=C\=Cj@drAdnED??RGRF=GF=FHtGJ=BltBft=B`=BnGOpЇЇ b na222-IfHVMF,_Nup `'T np`??/ a, > _a4$FAFp_@[000][vx`* [g" ]g |g QSx` xQSrQ][vx`* [g" ]g |g QSx` xQStQ]BAF0-H,=@p4a2HNu 24DBaDB11!Nu 24DBa DBNu 24x6o<Ce(FC BdЄeNu B/dHDDdRdQRBNu&<:<`g BbUC BcjNu BcHDDdSkg Aр[RBNu0ftNuB H@"jNuE"eaڵ"ep`&&6NuE "e a"d&&6NuE"e a"d66NuE"e a~"d666NuE"e a^"d6Nu <}a$Ia `~$XaH`aHR?<NNT @"_ <}Nu 24JBjDB&<ڢ8L8a>&<18<:<a$L8a$&<8<(:<a L8a &< 8<9:<aL8a&<8<~:<aL8a&<8<:<aؼL8aܼL8aܴL8aؤ Bl Bn4<`4< <rJ_jDBNuH.gZ <r4<?k"SWga`TL8HaVa`A*p4. g=BNuA*pBQBX".g paBNupraHP?<NNT~U@g~tb3YAVpr0 0BBB R@ @fAV0000PB0Tp`00000\0X0Tp`T@00000P0BXpnT0raVA0p1| 1AQBX0$HTH0P P0Tp`0NuH(Fa$L(FNuSk [0NupNupa` p>`HPaa _&X Pf/|~K1zag @ ep 2tCb"2 S@HQC@ػR"_d BTAA3ApCV4$I2a222B"0@2A\xva@gF2#M 443BS@ -f HQC@ػR"_d@BAAb8RGRC`3RSG5G5C J1DcaRF Fe `RG GdNuXAVSF1F41R1h4x1EDg"<Vp-A`r n"g(t( f h fpH`ajLRB`Nuao aШNupNuaJFoHPJhja?<?B?<BNAO _*kBg?/(?<BNAO Jk NuNafoazJBkAf`a|??/?<BNA.k \Hx?<BNAO [HHNux`x*0ao< 2fJjr`Nu~dGdEH<Nup`0@F@AJhg PLNu`tLJg(HPBHh/??<@NAXLf ѨLNuJkp%`8aJBja!| ??<>NAXOJkpNu0< aF`0< CF2p`p a0`p CFp`aCF"p`Hza `Hz"J`B.@=|DNua.@FpAR@C`| @H` @HHy]a B[& &6NuE"e a"b BB[& &6 NuE"e aȵ"b B& &6NuE"e a"b"_$_HQHPbb6Bk K0*a$RHd2Hd2Hd"He`""""Q`"Z&p0P7@g R@@#( \ _& &6 -KNuHyNMXJg HyNMXJNuagpNua Nu"H Y0e$b Pr@Ag$D!("fXծ"HNup`rap`QNupaNu4pa2Nu$pa"Nup2(g"P@g2RADAH""n"r2gZAe2 1@#-I"Nu1@NuAt2<XJX[j]`p`a."n"dp`npaNu?pa2Nu/pa"NuH n&$n""Hgr k&@ S`g^ k#&@0+Hd3 Hd3 Hd# Hd# # Hd# # # # Hd`# ALH# ALHQ&f-I"LNuat ."NuaJAfCNu"X2ebP6gHRC(D#HNua@gn` a4gb0`/hd6a$ W PHd2Hd2Hd"Hd `""""Q _/a _Nu/hda$ W2( P"IdHdHd `Q`r@/JAnr W4(Ae4RBBc0?a0$2 W PA`HP"Xp0g"r~ RAfS@n _a`1V` _NuJG06#f &#o-K"CNk"c" C gT6f&#o-K"CNPv6"cgRCC(D#8`E"e a"d"_&B[NpZ`AFtЀvQBNuAFt0 9c^QBNuAFt 0QBNua`a`aCF 0gS JfS`8@a Acr `@a A cr `@a\ A cr `NEL$H`RHaLHP?.d=hdNEL=_d2 "@$Y4Ad2`0Q @Nucc&$H0*ap$RHd2Hd2Hd`""Q`fE"e a"b BB& &6 Nu r2$v60!2#RAAg$@%RCCg$B%8Nu@`r ??a"P02R@H`2Q Nu <ڢ2Y6 :fRS@g.t;ak&AA :fRS@g t;akIA??<-NAXNua^0g2.k.tak$6g .fS@gt atkAg A .fS@f.Nut a\kAg6 /fS@gtaFkJAgކA /fS@g4<;a.kAjA AbAPjAdYA??<+NAXrNurxS@k0  bS@k .g( :g"0  b DBb BdeS@jJANuSR@JANu?<%NNTNu$R"Q PLH=HAF-HHL? H>A-HLL? H>pmrt`ϲ"XXHVMFLH-E H-YLH-E H$-Y*LH.,_NuHV,@,_Nu .2 @Nu0.FHNuJ@j0.=@F=@NupNBT@HgpNu 24JBkCkNuCktNu 24JBoSBNugRBNu2(gbc  P"H`Nu/0Hab2  _ PSAvjx E(Wf* ae zb Q @Nua"XLpAg Per 1"NuHyNNX @Nu&Hz ?<&NN\Nu|a"XLXB@etAg1B# NuBnp`pBnp`p=| p|=Fn@=@b=n`ra (Hj=Ah~`:a JfBH@ RfF.f Kg" Mg sg tg Pg Hf~`xSGjtRGFcn>`jAF gp gj g grffnnpenbfJ.fj6pRGFc$SG` J.fjpRGFcRF` Ff`> `?~ap a0p a*0Nu|``CpE`bf`FgRGJGgSGSFFgCpE`Yf`Nua@Jf gH@ fa(@ fza0 b @ Ee0Nua4gNu4.rf?HyaѰNM\Nu=|D`Lja zEfpadppa`AFEg0PaEfaFRE`ܾEfp a@a8?nnnp a2RF`<a gZ"HyNN#v.C>"NN @A C#P B?< NA\#x/a?< NA\A90N zhNuA#y y~P޸|a&:|a RGk0Gg`a0GVf3u<??< NMXACNuHz ?<&NN\NupACCENrJg" XX\QNuACCr g"XQ!ACf NuHx`(Hx`"Hx`Hx`Hx`Hx` Hx`Hx !4VxH A3y Ni LHMO:|1R/:?< NAO:pdz`Z/MaȔ,_NCNuHz` Hz`Hz&$A?<&NN\NuNu4Nu$Nu?a0` ?a2@@a6` a Nu4.`Af n2LR@RANu4.`g S@SAHNutbpbr??papYa0a0`.dfNudg"J9Ckfa4fp`d`/9Cdg/9Cdg/9CNupA-H=@|p4a`S@Nu[2][Programmstop?][Stop|Cont]ԄpECgPC`LJg&B.C`a8aD*9Cfap-I,=|p4adHz*9Cg ENp9C`" _a &nO:NMI.2KԆ$<Nu[1][Error +111][Return]Eh g g>Jf`Ar Hjr-D@Hd0H@H 0H@0CNuAF"H [1][fSEfNu9CHHNu9C`D@v`v??NMXJNuJ@k??<NM"UAf J@fH@Nuaj0fpNu\@`a`]@><CF Ipa<0HNua`]@><CF Ipa Nu?|`?a0R@f|0aHJFkHPaR _Nupo`,HSHP&I>g\SG??<NMXJk Q _t&_Nu&_`aPJANuag `af`apNuapNuC`C``C` C`CJhfJfRRRRRRRHP? @CFH~8:E#P&<2 `b$bYEf`"RAf rЁЀ`&Ѐe "ЀeЁdp`DJAkfgRer?DDЁaAa8$HX :CFE` YEjT"_$P"2trDDd0d d d` QjNu`aDa DNu na^ K"ng42 $`gk2&Hg Af deђ$`ebѐXf&nNu AgebѐA``-Kx$ n&$n""Hg8" &Ak cѐ S`g"" k#&Acё2+SAI3 Q&f-I"&nNu-Kx$&ր n&$n""HgR" k&Ac b S` S`g4" k#&AcbrkX`ޑ2+SAI3 Q&f-I"&nNua `aP n2L6(n\n^HHHNua0 n20(n\HNua n20(n^HNua n20(HNuaT:ffNuarNua J[HHNu:nfa@ z^0NuJg6$:Pf,H?<"NNT&@p/&~ra :,ga &Lr`r??Q@|HyNM\0Nu#xNu"H YJQfNu YH瀀aLP|HPGRC&֛֛֛֛֛(HDDCBg6Cv6C[RCF8[[[aL6C[RCF8:GRFWfTL L-KA `$I\bfBjQNu$YbfBjQNu؄*؄؅CH`☮؅X`$_  Ia|HR"H @`̘؄*؄؅AHNu؅X`$_ IaHHR"H` nd$HJf-HS Nup"`"HPa _a8`QNua JH aL0Nua`4<H`@aBL Z0De2SCkÐCo@c2`QNuA`:A`4A`.A|`(A|`"A`A `A`A ` A `A NuA`A` A|`A@00HNuA `A`A|`A `A ` p6=1234567890-= qwertyuiop[] asdfghjkl;'`#zxcvbnm,./ -+\()/*7894561230. !"$%^&*()_+ QWERTYUIOP{} ASDFGHJKL:@~ZXCVBNM<>? 784620| 1234567890-= QWERTYUIOP[] ASDFGHJKL;'`#ZXCVBNM,./ -+\()/*7894561230. 姦 []    ϙ{} ֫ᥒ 784620и̐ȶ 姦 []  -+<и̐ȶ 1234567890-= qwertyuiop[] asdfghjkl;'`#zxcvbnm,./ -+\()/*7894561230. !"$%^&*()_+ QWERTYUIOP{} ASDFGHJKL:@~ZXCVBNM<>? 784620| 1234567890-= QWERTYUIOP[] ASDFGHJKL;'`#ZXCVBNM,./ -+\()/*7894561230. 姦 []    ϙ{} ֫ᥒ 784620и̐ȶ 姦 []  -+<и̐ȶ ` H(o<*o@/F0/H6x"MSG I<4JBg:<BeQJEm4<EDBm6CgQTDQ<&H(I6<'(Qp2I4J1 1 (1 P1 xQQNu"N MBB><&H(I6<'(Qp'2I4J1 1 PQQNu`H(o<$o@&L pM86fhXBF$<}6<BGf `g BG`fJgSBkvPSCf 6<&LR(KQ` pM85fHBF$<}BGf `g SBk"`fJgSBkQ`0<`B@`LNu`<H$o<&o@24 ABBfBJAgS@gJ @gD0` L|H|C0QH@H`"Qd2Jj``QH@S@eH@`L|NuFINALLY VISION PROVE GO! EXTRA INCIDENTAL GRIJP? FIREWORKS FOREWARDS CONFIRMATION SAYS ZORO SELECT `WILLY'THOUGHT? QUANTUM EITHER BUDDIES, finally `vision' prove:extra grijp? incidental fireworks forwards go; confirmation says zoro quantum. select willy thought,buddies either TEL:(0-95)\0123456789 ?!:.;.,'`^"~-=+*# [|](){}<>/\_ abcdefghijklmnopqrstuvwxyz: ABCDEFGHIJKLM @&$%¬ NOPQRSTUVWXYZ ɐϚ (M){M}[M]M 槦 봵 *8p00``@   @0 `x`000003``c x/( x<   <|   À   <<0p`00 ``88pp >?` +<      p { {  >66`f???088pσD`?qbp0`p0x`0030?(&|b|x>?|>><|x00 8 n>????????? z@0 px<?}yp8<00`@j@~ 8cqyyq}< 00^~>.~p^ >px^~> =,8^~>O,^~>0~p^~ 8,x^~>>9^~>4@x^~ ߠp?`p^~>??!<3 cbx8oG?@ ?@?`_`?0><@PP? ``A8B8; ? |:|@0~8><><o<|0~<||~?s T#00@0sy0 op?x~v5@p`?pPR`y@y`v}qp|͙ c`nj퍍 c`~~|?f` 0c`nj lc|`>H o<"o@24XH6)SC\IASA8:2QTHQQLNuProportional:@Number...ID:@Size In Pts:ASC....First:ASC....Last.:.......Hight:...... Width:@........Top:@UpC.=Ascent:@LoCast=Half:@.......Base:@....Descent:@ OffsetLeft:@ OffsetRght:@....Fatness:@FatUnderlin:@mask.L:@mask.S:655352556168052428436906322261166605566270846260601386280565365655146553054474 Shift Capsl Alt Alt+ShiftAlt+Capsl === HELP ===Select a character by mouse or bykeyboard. Hit ^ to enter the Re-place edit line at the left corner.Hit and then type a newcharacter to set the new definition.Hit to exit.When you hit the little square: youswitch to another replace modus thatoffers you to type an index numberthat corressponds with the locationof a character in the View-window.....................................You also can activate the [REPLACE]button in the monitor field to selcta character by using the [<|>] buts.When this but is active -it is alsopossible to hit a character with themouse somewhere in the table field.After you disactivate the [Replace]but -your selection will be taken.Hence the availability of a [CANCEL]button to restore the originl value.+++MOVEMOVEMOVEMOVE45ERASEINVERTH-MIRRV-MIRROUTLINEBOLDENLIGHTENCURSIVE14PATERNfillroundLINEfillfillCOPYswap23ALIGNDELETEDESK ACCESSORY DA_ ABOUT & INFO DI Marc Marc MDA SA_ M2Desk Pop DP M2Desk Hight DH M2Dialog Smart DS M2Dialog style DM M2Window style DW_ Time & Date DT Clock DC Blitter DB_ QUIT DQFILE FONT 1 LOAD Font 2 Load_ FONT 1 SAVE Font 2 Save_ KEY Tab Load KEY Tab Save_ Diskspace Create Folder Rename File_ KILL FILEEDIT show ZEDIT SE show ZOOM SZ show MONITOR SM_ show FONT 1 SF show INFO 1 SI_ show font 2 SF show info 2 SI_ ALIGNMENT AS_ Compress Fnt FC Un-Compress FU_ DIDOT/PICA calc Dpi Reference_ DELETE FONTOPTIONS Auto-Store info OnlyFontLoadScrew_ Normal keyboard KN Use key table KT Edit key table KE_ Width edit response Monitor bounding MB_ AREA on/off ^Q / ^Z Select Area A Define Area ^A area option infoFORMATS GEM GEM Compressed GEM 3 Compressed LQ-FONT METAFONT/TEX DOWNLOAD 24_EXTRA's Show Picture SP Load picture Save Picture_ TEST TEXT Font1 T1 Test Text Font2 T2 Load Test text TL SAVE Test text TS_ Free memory show_ GRAB ^GSPECIAL Save header font1 Save header font2_ Show Both headers_ Offset table WO Width table WW Width Compare WC Width Equalize WE Convert Scrn/Prnt Conversion fac WF_ Make Font FM+++V1.14 May 1994 *** ERROR Write down the error numberand the procedure you were busy with.Then hit any key to return to the programand save your works straigt away.All windows will be closed!As a last; Reset the system.Hit key to ret to editorQUITA,|Ests seguro?||!Lo pasado,| pasado est|NO |SI ||||||UUUUM2Font |Written by |Multi Disciplinary Artist 1993 AmsterdamTEST_MALERT_.IMGM2FONT.KEYTEST_.Q3To define an AREA,|you need to open|the ZOOM window.?Nr:Alt+numeric section? any key selectsConvert to|destination|font sizeCANCEL ||NO Just push||YES convert |How to treat this|change of hight?CANCEL ||CUT TOP ||CUT BOTTOM||SHRINK CANCEL ||ADD TOP ||ADD BOTTOM||ENLARGE ||How to treat this|change of width?CANCEL ||CUT LEFT ||CUT RIGHT||SHRINK ||SET AS CEL WIDTHCANCEL ||ADD LEFT ||ADD RIGHT||ENLARGE ||SET AS CEL WIDTHEXAMINE ALL CHARACTERS|AND CUT TO GIVEN SIZE IF|THEY EXCEED THIS WIDTH?This will kill|||| ARE YOU SURE!?|Erase character| HEADER EXAMINATION :FONT 1FONT 2 font number W 0 : font size W 2 : font name 4 : low asc nr B 36: high asc nr B 38: top-base os W 40: ascent-base os W 42: half-base os W 44: descent-base osW 46: bottom-base os W 48: max width char W 50: max width cel W 52: os left W 54: os right W 56: fatness factor W 58: underline Fat B 60: light mask B 62: skew mask B 64: flags * B 66: ptr hor os tab L 68: ptr spc os tab L 72: ptr img data L 76: scanline bytes W 80: hight tt img W 82: Ptr next font L 84: * Note on flags| x | x | x | x | x | x | Data Compression-^ Proportional when off----^ byte format 0=8080 1=68000---^ 0=use horizontal offset table----^ default system font------------------^||Based on a resolution of Dpi:|| Didot/Pica /mm /Inch /Pixel|TT Cel :|Top-Descnt:|Ascender :|Capital :|Lower cast:|Descender :|CORPS :||Hence that this only is relevant when|the font will be used to print.Thanks |Other FontEdit Dpi reference||INPUT:||Dpi= Dots Per Inch|of the used printer|||Alignment optionCANCEL|Find Width ||Center|Left|Right||Base|Ascent|Half ||Top |Descent|Grnd|*** |Character examination|to find the boarders &|use the maximum setted|width as being 'WIDTH'center themalign them Leftalign them Rightalign low-edge at Basealign topEdge at Ascentalign top-edge at Halfalign top-edge at topalign bottom at Descentalign bottom at groundCANCEL |STRAIGHT||SKIP IF <33%|<50% Are you|intending|to escape|COMPRESS FONT!|UNCOMPRESS FONT!||W&M SIZE ||SPACEBAR SIZE ||MAX WIDTH SIZE ||Examine all characters|& if relevant minimize:||LeftSide=RightSize space||At right boarder plus 1 ||At exactly right boarder||Remove unused characters||Set width of all equal||unused characters |Also UnCompress |unused characters?CANCEL|NO |YES |TO M&W SIZE:| M&W width | Exceeders | upto width | WHAT TO DO ?||Cut to M&W ||Trash exceeders ||Shrink to M&W There are|no unused|charactersSYSTEM CursCreate font at|destination???CANCEL ||Font1|Font2CANCEL ||4x5 |6x6 |8x8 ||8x16 |16x16|16x32Select kind of font|to create as font Select typeCANCEL ||NORMAL ||CURSIVEBUSY||CREATING|NEW FONT|Delete character||OF BOTH FONTS!!||!Delete character!WIDTH OVERVIEW||For each character, the currently set width is|displayed in the first width column. The second|column displayes the width that a converted font|ought to have according its conversion factor.||It helps you to judge the width of the characters|already ahead in context to a new font in mind|that is going to be related to this current font.|HORIZONTAL OFFSET TABLE (from the loaded file).||Imagine all characters on one sinle row. The|table tells a program where to find a certain|character. Corrupt data will mess up the font.||The table will be updated when saving the font.|WIDTH COMPARE||To examine the relation between two fonts|in context to the width of each character.|This is usefull to test different fonts on|their consistency.|It is a MUST to create real WYSIWYG of the|SCREEN and PRINTER version of the font.||Use the cursor keys to select a character.|The four listed keyboard commands request to|correct the width of either fnt1 or fnt2.||After returning to the main menu, the current|selected character will be put in the zoom.handyCOMPARE WIDTH EXAMINATOR SCR VS PRNTPRNT VS SCR HORIZONTAL = ok close small...1< small...2 too small large...1 too large Add Cut Enlarge Shrink SCRN VS PRNTlargerPRNT VS SCRNsmallerNotice that the source font is| than the destination font.|In context to the | mode, this does not make sense!||||Lspc Rspc |Not enough to cut to be changed||The amount of empty space aside|the character exactly matches the|amount that must be cut. What to do?CANCEL|CUT |BETTER SHRINK at left|and at right.|to be changed||ADD with|factor This will exceed|the WIDTH as was|set in the info!|Shall I expand|Conversion Display|factor in view&zoom|CANCEL |EDIT ||Printer to Screen ||Screen to Printer Edit conversion factor||INPUT:||---Indications-----------| 9 Needle 240*216 = 2.666|24 Needle 360x180 = 4 |24 Needle 360x360 = 4 |AT Laser 300x300 = 3.333|ONLY update HEADER of ???|||When you changed others than the| Title or @ marked parameters,| your font will be destroyed!!!!!|HeaderBUSY||TO LOAD|BUSY||TO|INSTALLBUSY||TO|ENCODE BUSY||TO SAVE|RAPPORT & ARROGATION||CONCERING THE HEADER||Hight of font image seem to be corrupt!|Max width of character&cel is corrupt!|Max width of character/cel is corrupt!|>I will use the one that looks ok.|Corrupt amount of characters are given!|>Examination of width-table............|>That did not work out. Feigning.......|Corrupt pointer to the font data start!|Corrupt scanline width of the font img!|>I presume that it can be recalculated.|>I will feign a scanline width.||I'am afraid that I cannot deal with it!|Hit any key to continueEXIT|Key table|editorCancelNormal +|1th character of option:|CANCEL |Request all ||Centre |Left |Right ||Base |Ascent |Half ||Top |Descent|Ground An AREA function| is still active!?CANCEL ||SWITCH OFF||LEAVE ON AMOUNT MENU STARTEND DESTINFORCECLEANPATTRN to Fnt GO!RETURNYou have to open|Font View |for this functionOpen Zedit &|View&Monitor|to Copy/SwapHzoom: Vzoom: nvertmirrormirrorutlineoldenightursive

atternround line fill^opy^wapFILL MENULINE MENUThicknessZOOM 1 FONTZOOM 2 FONTMwindow|style|option|LADOSHKA ||ANALOY ||COMPROMISIO ||KARALEVSKAYA1 VIEW2 VIEW1 INFO2 INFOMARC MARC|FILE DOES NOT EXIST.*.*Select driveCANCEL ||CURRENTPartion has | Kilobytes |free memory| PICTURE|I cannot load.|***Empty file!|SAVE|PICTURE|FILE|BUSY to Pack|GEM IMG File Screen #SAVE AS|.IMG|PICTURE|FILESomething|went wrong||I cannot handle|this file.|*** Unknown format*** Size too large|*** Syntax error|*** Call error||SHALL I TRANSFER?<1>|<2>|<3>|<4>|<5>||<6>|<7>|<8>|<9>|<0>SELECT AREA DEFINITIONSave the current font image|as PANDORA string? IMAGE AS Qx BLKERASE||entire text?|Current character:||ASCII index:|Width: BUSY TO|||Test text||||||||LADOSKA ||ANALOY ||KARALEVSKAYA||BENTOOSHA ||MARKOSKA ||WALOTKA Xalert|mialog|styling|optionOK ...Pphfffff...I do not have|enough memory|to operate.|BUSY TO|CHANGE ||AUTO-STORE is always active. Any|change in the ZOOM will be stored|as soon as you hit the VIEW window.||Selecting another character also|implies hitting the view window and|thus will store the changed data.||:recover from last action.|Shift+:retrieve the character|from the view window.|ONLY LOAD FONT Or how to get stressed!||In M2Font, you do not need this option|because you can have two fonts fully|independently in stock and manipulate|the header without the need to reload.|In Zoom|edit width|responseMASCULINE ||FEMINIME AREA OPTION INFO|For most operations that can be executed|on a single character or the whole font,|an AREA can be defined to limit the effect of|an operation within user defined area boarders.||It is extremly usefull to only copy a section,|only move a section into any direction ect...|| ^ Define Area (in Zoom window!)| ^ Area on| ^ Area off|sh Select Area definition (1 of 10)||When defining in Zoom window, use: Cursor keys|to enlarge/shrink area, Alternate & Cursor keys|or the mouse to move the area, Left mouse key|or to set and Right key or to Escape.||Also try Cursor keys with one or both Shift keys|or Control key depressed to tune the area size.|TINY 8| 10||MEDIUM 12|14|16|18||LARGE 20|22|24|26|M2Desk styling|| RETURN TO MAIN MENU------------------------ M2Font | By , MDArtist|| Free memory =Kb ||Memory use Font 1 : |File calcu Font 1 : ||Memory use Font 2 : |File calcu Font 2 : Set Time, then Date ||Time: |Date: ONLY MONOCHROM|ST RESOLUTION!LOW/MEDIUM/HIGH|ST RESOLUTION!ESCAPE ACTIONDivision by zeroOverflowSquare root only|for positive numbersLogarithm only for|numbers greater than zeroUndefined error Out of memory String too long|max. 32767 charactersArray dimensioned twiceArray not dimensionedDim index too largeOn Open only|"I"nput "O"utput "R"andom|"A"ppend "U"pdate|allowedFile already openFile # wrongFile not openInput wrong|not numericEnd of file reachedArray must have|one dimension"Out of data#Data not numeric%Disk full0Open "R"|Record length wrong1Too many "R"-files (max 31)2Not an "R"-File4Fields larger|than record length6GET/PUT|Field string length changed7GET/PUT|Record number wrongMENU error?RESERVE error@Pointer (*x) errorCASIN/ACOS ErrorEENDFUNC without RETURNZLOCAL error[FOR error\Resume (next) not possible|Fatal, For or Local]Stack ErrordGFA BASIC Compiler 3.02 E| Copyright 1986-1989|GFA Systemtechnik GmbHf2 bombs - bus errorg3 bombs - address errorh4 bombs - illegal instructioni5 bombs - divide by zeroj6 bombs - CHK exeptionk7 bombs - TRAPV exeptionl8 bombs - privilege violationm9 bombs - trace exeptionGeneral errorDrive not readyUnknown commandCRC error|disk check sum wrongBad requestSeek error|track not foundUnknown media|boot sector wrongSector not foundOut of paperWrite faultRead faultGeneral error 12Write protectedMedia change detectedUnknown deviceBad sector (verify)Insert other disk|(request)Invalid function numberFile not foundPath not foundToo many open filesAccess deniedInvalid handleOut of memoryInvalid memory block addressInvalid drive specificationNo more filesGEMDOS range error|seek wrong?GEMDOS internal errorInvalid executable file formatMemory block growth failure7   .( >T 4P  *v  J>""J 0  6 (T *&  0  8 & (   HxHP`TTN@2"4 4 4 6 ,pT&"44<4844448484444@D888848< "6* (BBBBBB& &6$ $` ^\4hVxNT& J  " (**, $ ( " (  ^:(Nb28&Z:DjN   V""6l  pB h <PXB    (Z L ">  j 4   x L^*VVp4(6 *"   $ *>0$* 8  <0 l &&@b *,d`HP6F": Z>ZT :$&΂ftP. *&"0(   " *. "   (. 4*  *H&H2P "(."6* "D@J0 2bvB $0 :B 0"8$6@ \,0$6 ,B4$j $ B  &( 6(tf> ` Bx86:,L<>f ( ~8  p06<*L`^D " "                 4RV @ "2hVdD$r ( &z4@ |((""""", 6~~\ R*("* 2(*(pJ ^r < V HV0h$ "0f66p.:>pB>T. 6\( &"(h,>..8*266R"""""n8P 00`>>(b& 0 "&HN$0 Z6(8(Zt|hz$0T02Z  R:*( * .|"2 $6 064<   F< $ʐ V>j  t  * ~ :. (n,bHPLr> ,z:$8 `(D^$@"L.J(: :J~R2H8"4 ,bv"0>`>0*^>$$@ nP~@@&&&|*NP ^, 2 N4|\R ( r>\    (v 4   r2Fp,^$<"6"\Bv|^8LZ`"VtThldr t((@P"&Xb00$4t| 8 $D& 4H x0H*l ,$*V dat de verantwoordelijkheid over de afstelling van deze parameter geheel aan u overgelaten wordt. De reden dat er niet automatisch door M2Font wordt ingegrepen op de afstelling ligt in het feit dat er nogal vrijelijk door allerlei programma's wordt omgegaan met dit gegeven. Zo heeft That's Write bijvoorbeeld de nare eigenschap om de deze parameter te negeren. De font's worden altijd als proportioneel gezien. Dit is jammer want het font declareren als niet-proportioneel maar tevens wel de breedte van de karakters niet breder te hoeven maken als nodig behoort in principe tot de mogelijkheden. Hierdoor zou een font qua geheugenruimte verkleind kunnen worden en toch een niet proportionele werking kunnen hebben. Misschien kunnen andere tekstverwerkers dit wel aan. Ik heb dat nog niet uitgeprobeerd. U begrijpt mogelijk nog niet waar ik het over heb in deze. Daarom het volgende: Stel, u wil een font niet-proportioneel gebruiken. Dus alle karakters op een gelijke afstand van elkaar hebben. In het eerste geval dient u dan te zorgen dat alle karaktercellen dezelfde breedte hebben en dat de WIDTH parameters deze breedte aangeeft. Ook dient de Proportional parameter op NO te staan. Het font neemt hiermee meer ruimte in beslag dan dat het geval zou zijn bij een proportioneel font waar immers een aantal tekens minder breed zouden zijn. Herinnerd u zich die strook papier nog? Die zou dus korter worden. De truc die mogelijk moet zijn om het font minder geheugen te laten innemen en toch alle karakters op een zelfde afstand moet houden gaat zo: Met de Compress functie laat men M2Font alle karakters afsnijden op exact de rechter flank van het karakter (optie: At exactly right boarder). Hierdoor worden alle lege posities die normaliter nodig zijn voor de onderling juiste afstand van de karakters afgesneden. Dit bespaart dus geheugenruimte. Omdat het font gewoon als niet-proportioneel te boek staat en met de WIDTH parameter aangegeven wordt op welke afstand de karakters bij niet proportionele verwerking moeten worden geplaatst zou dit font nog normaal verwerkt moeten worden. U moet dit zelf uittesten op de door u gebruikte tekstverwerker. De auteurs van That's Write versie 2 hebben met deze truc in ieder geval geen rekening gehouden. * Number -------- Met dit nummer wordt het indentificatienummer van het font bedoeld. Onduidelijk is hoe programma's hier gebruik van maken. Volgens de GEM informatie wordt bij nummer 0 het font als een systeem-font gezien. U dient dus een nummer in te geven dat groter als 0 is. In That's Write dragen de scherm en printer versie van een font hetzelfde nummer. Als uit uw documentatie ook niet blijkt waar dit nummer voor bedoeld is (beter gezegd of het werkelijke van belang is), dan doet u toch goed aan ieder font een uniek nummer te geven. * Size in Pts ------------- Hiermee wordt NIET bedoeld de hoogte in pixels! Ondanks dat in sommige documentatie wordt gemeld dat dit wel zo zou zijn. Wat wordt dan wel bedoeld? Met de aanduiding Size wordt hier bedoeld de hoogte in PUNTEN zoals die in de drukkerswereld geldig zijn. Hiermee wordt in de drukkerswereld het z.g. Corps aangeduid. 1 PUNT staat voor een bepaalde maat. U wilt natuurlijk weten welke dat is. U mag kiezen: -PICAPUNT SYSTEEM 12 Punten = 1 PICAPUNT. 6 Picapunten = 1 Inch (1 Inch = 2.54 Cm) dus 6*12=72 punten voor 1 Inch =2.54 Cm oftwel 25.4 mm. Hieruit vloeit dus voort dat 1 punt 25.4/72 mm is : dus 0.35 mm per punt. -DIDOT-BERTHOLD SYSTEEM Hierin staan 12 punten gelijk aan een AUGUSTIJN (veelvuldig in Nederland onterecht een CICRO genoemd). 1 Augustijn beslaat een afstand van 4.51 mm. Dit is dus 4.51/12 =0.375 mm per punt. CORPS ----- Het Corps geeft de groote van de schriftsoort aan. Hiermee wordt de hoogte bedoeld inclusief de stok en staartmaten Interlinie: De witruimte tussen de laagste staart van de ene regel tot aan de hoogte stok op de volgende regel noemt men de Interlinie. Dit is dus de zuivere witruimte tussen de regels (de ruimte die nimmer bedrukt zal worden). Gerelateerd aan uw font-edit situatie in M2Font betekent dit dat de Interlinie de som is van wat aan de bovenkant en onderkant van de matrix niet in beslag wordt genomen door zwart van de karakters (de accenten uitgezonderd). Filmtransport: Het Corps tesamen met de Interlinie noemt men het Filmtransport (bij tekstverwerkers wordt deze vaak Regelafstand genoemd). Stokken & Staarten De afstand tussen de HALF lijn en ASCENT lijn is de stokmaat (Ascender). De afstand tussen BASE lijn en DESCENT lijn is de staartmaat (Descender). DIDOT/PICA HELP M2Font kan voor u uitrekenen wat een gegeven afstand tussen de ASCENT en DESCENT lijn is, uitgedrukt in DIDOT of PICA punten. Het Corps dus. Hiertoe roept men de optie DIDOT/PICA HELP aan. Een alert meld dan de resulterende hoogte in Millimeters en Inches en de omgerekende waarde voor beide puntsystemen voor het actuele font. Ook wordt er getoond wat de afzonderlijke maten zijn van de de totale cel, de Kapitaal, Ascender en Descender. Omdat het Corps afhangt van de gebruikte printer-resolutie wordt deze berekening gemaakt aan de hand van een bepaald ingestelde printer-resolutie. Deze resolutie wordt uitgedrukt in Dpi: Dots per Inch. Dit is de maat om uit te drukken hoeveel puntjes een printer per Inch naast elkaar kan zetten. Als een printer aangeeft een resolutie te hebben van bijvoorbeeld 360x180 Dpi, dan wordt bedoeld dat er horizontaal 360 en vertikaal 180 punten passen in een zogenaamde 'Square Inch' (zoals wij de uitdrukking "een vierkante centimeter" kennen). De Dpi waarde kunt u instellen door de optie [Dpi Reference] aan te roepen. Zowel de optie [DIDOT/PICA HELP] als [Dpi Reference] vind u onder de DeskTop kop "EDIT" De vraag is in hoeverre het voor u van belang is de hoogte in punten correct in te stellen. Eerst dient u te moeten weten of de tekstverwerker gebruikt maakt van dit gegeven. Naar verwachting is dat niet zo omdat de maten van het font voor het scherm al zijn vastgelegd met de parameters WIDTH en HIGHT. In een systeem waarin ook de printerfont's geladen worden om uit te printen geldt dit ook voor de printerversies van het font. Wat rest zijn de systemen waarin de interne font's van de printer gebruikt worden. Hier zou het wel eens zo kunnen zijn dat deze informatie van belang is. Ook wanneer uw files door een drukker professioneel worden behandeld is het van belang dat bekend is welke maten de font's volgens het punten- systeem hebben. Het is natuurlijk ook wel prettig om van te voren te kunnen uitrekenen hoe groot een font dat men maakt uiteindelijk zal worden op papier bij gebruik van een bepaalde printer. Maar moet u nu het DIDOT of PICA systeem hanteren? Navraag bij een drukker leert dat in Nederland nog steeds het DIDOT systeem de norm is. Hoewel het verschil tussen het PICA en DIDOT verschil niet zo erg groot is, is toch handig om te weten wat men hanteerd. Als u de bovenstaande theorie over de Corpsgrootte begrijpt en kan reproduceren dan moet u beseffen dat u daarmee naar alle waarschijnlijkheid meer weet dan de meeste drukkers (uitgezonderd de echte boekdrukkers). Pas dus op met het gebruik van de terminologie als u naar een drukker gaat want het kan er uitdraaien dat de man een smoel trekt of dat hij het in Keulen hoort donderen en als gevolg van conflictgedrag zijn spraakvermogen tijdelijk verliest. !Indien het van belang is dat de hoogte in PUNTEN moet worden aangegeven, dan dient u te achterhalen of dit exclusief of inclusief de Interlinie is. Het schijnt dat er Laser en Deskjet printers zijn die deze maat inclusief de interlinie willen weten (dus niet zuiver het corps). Er zijn programma's waarbij men kan instellen of de aangegeven maat inclusief of exclusief de interlinie is. ASC...FIRST ----------- Hiermee wordt aangegeven vanaf welke ASCII index er karakters aanwezig zijn. Een algemeen geldende regel is dat het eerst aanwezig ASCII karakter de spatie is (Nr 32) omdat de tekens onder Nr 32 vaak slechts als besturings commando's geldig zijn. Dit kan echter verschillend zijn bij ieder programma. That's Write bijvoorbeeld heeft als eerste index Nr 4. In deze eerste set bevinden zich speciale symbolen die te maken hebben met de layout-besturing zoals het paginanummer symbool en afbreekteken. Als men een font inkrimpt door de index van het eerst geldige karakter te verhogen, dan worden de karakters die lager zijn dan deze waarde weggegooid. Een dialoog stelt u hiervan op de hoogte en vraagt ook of u dit wenst. Als men de waarde verlaagd, dan wordt dit in de header gedeclareerd. De karakters die erbij komen zijn echter leeg en hun breedte is op 0 gezet. Als het een niet-proportioneel font betreft kan het zijn dat u deze karakters een breedte moet geven gelijk aan die van de andere wel bezette plaatsen. Dit hangt af van hoe een tekstverwerker omgaat met het gegeven Proportioneel in relatie tot de Horizontal-offset-table. Mocht het zo zijn dat de karaktercellen inderdaad moeten worden opgevuld met niets (lege cel dus, maar wel plaats innemend), dan kunt u dit bereiken met de functie [UnCompress Font] optie [UnUsed Characters] ==> [MAX WIDTH]. * ASC...Last ------------ Hiermee wordt aangegeven tot aan welke ASCII index er nog karakters zijn. Als een programma (en printer) met de Extend ASCII set werkt, dan kan het hoogste nummer 255 zijn. Inmiddels zijn er al fontformaten die een nog veel grotere karakterset kunnen bergen. M2Font ondersteund dit nog niet. Bij het verhogen of verlagen van deze waarde zijn de opmerkingen die gemaakt zijn bij de optie ASC...First ook hier van belang. Echter, lees i.p.v verlagen: verhogen en visa versa. * Hight ------- Geeft de totale hoogte van de karaktercel aan in beeldschermpunten. Als men deze waarde wijzigt, dan wordt gevraagd hoe dit door M2Font moet worden behandeld: toevoegen/weghalen bovenaan of onderaan, vergroten of verkleinen tot aan de nieuw ingestelde waarde. * Width ------- Deze waarde geeft de breedst mogelijke karaktercel aan. Als men deze waarde wijzigt, dan wordt door M2Font gevraagd hoe dit moet worden verwerkt: toevoegen/weghalen bovenaan of onderaan, vergroten of verkleinen tot aan de nieuw ingestelde waarde of declareren als de maximale celbreedte. In de handleiding van uw tekstverwerker dient u na te gaan of er speciale omstandigheden zijn waarin een bepaalde minimale breedte-instelling van het font wordt vereist. Bijvoorbeeld voor de paginanummering waarin dan de breedte van de karaktercel op 3x de cijferbreedte dient te worden ingesteld. Men zal ook merken dat deze ingestelde breedte van invloed is op de weergave van het font in het View-venster. De WIDTH wordt namelijk gebruikt om de horizontale afstand te bepalen van de tekens in dit venster en daarmee dus hoeveel tekens op een rij passen. * Top ----- Geeft de afstand aan van de bodem van de cel tot aan de top. Afhankelijk van hoe de door u gebruikte tekstverwerker met font's omgaat staat deze waarde 1 punt onder de waarde die met HIGHT is aangegeven of wijst daadwerkelijk op het hoogste voorkomende punt in de karakterset. Noot: Dit is ook weer zo'n onduidelijk in het gebruik van het GEM formaat door de verschillende tekstverwerkers. Het is niet bij alle programma's op een zelfde wijze vastgelegd wat er gedaan wordt als deze waarde lager is dan 1 punt van de maximale hoogte van de karaktercel. Neemt men deze waarde over of houd men dan vast aan de fysieke top van de karaktercel? * Ascent -------- Drukt de afstand uit van de bodem tot aan de top van de hoofdletters (Kapitalen/Bovenkast/Uppercast) (accenten niet meegerekend). * Half ------ Drukt de afstand uit vanaf de bodem tot en met de top van de kleine letters (Onderkast/Lowercast) (accenten niet meegerekend). * Base ------ Drukt de afstand uit vanaf de bodem tot aan de onderkant van de hoofd- letters. Deze hoogte wordt basislijn genoemd (Base-line). Hoofdletters bevinden zich dus tussen de Base-line en de Ascent-line. * Descent --------- Drukt de afstand uit tussen de basislijn en de onderkant van de staarten van de letters. Ook hier geldt de noot die gemaakt is bij de parameter Top voor wat betreft het geval dat de Descent hoger is afgesteld als de absolute bodem van de cel. * Top * Ascent * Half * Base * Descent -------------------------------------- INSTELLEN MET DE MUIS: Als u, in het Zoom-venster met de muis een van de symbolen aanklikt, dan zal dit symbool gaan flikkeren ten teken dat M2Font wacht op het aanklikken van een nieuwe positie. U kunt ook op een symbool klikken en dan direct met een ingedrukte muisknop de muiswijzer naar een gewenste nieuwe positie slepen. Als u dan de muis loslaat, wordt de nieuwe positie overgenomen. Als er een nieuwe positie is gekozen, dan zal deze nieuwe waarde ook worden bijgewerkt in het Info-venster. Mocht het zo zijn dat u een symbool dat hoger dient te staan als een andere op een lagere positie zet, dan corrigeerd M2Font dat d.m.v. dit symbool de laagst toegestane waarde te geven. Als u bijvoorbeeld de ASCENT lager plaatst dan de HALF, dan maakt M2Font de ASCENT gelijk aan de HALF. Immers, in context tot de betekenis van de ASCENT en HALF is het onzinnig om de ASCENT lager te stellen dan de HALF. PRESENTATIE: De wijze waarop deze parameters aan u zijn gepresenteerd is een andere dan zoals die in de header van font is opgenomen. U krijgt namelijk de absolute nul-basis waarde voorgeschoteld. Nul-basis betekent in dit geval dat u begint met tellen bij 0 en Absoluut staat voor het feit dat er wordt gerekend t.o.v. de fysieke bodem van de cel. In de header worden de relatieve waarden vastgelegd. Als u met de optie [Load Picture] in de DeskTop menubar de illustratie "VALIGN.IMG" laad en het Picture-venster opent, dan krijgt u op een duidelijke wijze te zien wat het verschil is tussen de absolute en de relatieve waarden. De relatieve waarde is een typografisch juiste representatie van hoe de vertikale uitlijning gedefinierd dient te worden. Ik heb mij bij de representatie naar de gebruiker toe laten leiden door de wijze waarop in het TFONT programma van That's Write dit wordt aangepakt. Als ik kijk naar de illustratie die ik heb gemaakt, die er zo logisch uitziet, en terug denk aan de tijd dat ik aan het uitzoeken was hoe de zaak in elkaar stak, dan kan ik me voorstellen dat er zo'n verschil van interpretatie is omtrent deze uitlijngegevens. In geen enkel boek dat ik heb over programmeren en font's (en dat zijn er nogal wat) wordt expliciet dit schema weergegeven. Overal vindt men incomplete en nogal impliciete informatie. Dat wil zeggen dat bijvoorbeeld wel de uitlijnnamen en hun positie op de letter worden gegeven, maar verzuimd wordt te melden dat de getallen in de header relatief zijn t.o.v. van een virtuele basislijn. Nog steeds is het niet duidelijk wat GEM doet met een uitstekende Top of Bottom t.o.v de de Top en Descent waarden. Dit gebrek aan degelijke en volledige informatie maakt dat font's in de diverse tekstverwerkers anders worden behandeld. Hiermee bedoel ik niet dat de font's die in M2Font zijn bewerkt niet juist behandeld zullen worden door de tekstverwerkers vanwege een foutieve interpretatie door M2Font, maar door een gebrek aan informatie die de tekstverwerkers geven omtrent hun implementatie. Daar waar geen eenduidige norm bestaat is men vrij naar eigen inzicht te implementeren. Kwalijk is het als er dan geen duidelijke documentatie over wordt gemaakt die gerelateerd wordt aan de standaard voor zover die dan bestaat. Zo kan men in de That's Write handleiding vernemen dat That's Write eigen schermfont's gebruikt. Dit is onzin. Wat bedoeld wordt is dat er een onvolledige interpretatie van het GEM formaat wordt gehanteerd. Aan het formaat zelf is namelijk niets eigens. * Offset Left * Offset Rght ---------------------------- Deze parameters wordt door sommige programma's gebruikt voor het cursief maken van een font. De impact ervan laat zich wat moeilijk in woorden uitdrukken. Laad daarom de illustratie "LROFFSET.IMG" in voor een duidelijke visuele indicatie. Laden van dit plaatje geschied met de optie Load Picture en het openen van het Picture-venster. * Fatness --------- Geeft de verdikkingswaarde aan bij het gebruik van de stijloptie VET (FAT). M2Font zelf doet niets met deze parameter. * FatUnderlin ------------ Geeft de verdikkingswaarde van de onderstreping bij de stijloptie ONDERSTREEP (UNDERLINE). M2Font zelf doet niets met deze parameter. * Mask.L -------- Dit een masker voor de LIGHT stijloptie. De eenen en nullen stellen een lijntje voor met punten die al dan niet gezet zijn. Hierbij wordt een "0" als een niet gezette (witte punt) en een "1" als een gezette,(zwarte punt) gezien. GEM gebruikt dit om letters grijs af te beelden. In hoeverre tekstverwerkers dit gebruiken is mij niet bekend. M2Font zelf doet niets met deze parameter. Het is mogelijk dat tekstverwerkers of fonteffect- programma's deze parameter wel gebruiken. * Mask.S -------- Dit is een masker voor de SKEW optie. Joost mag weten wat dat nu precies betekend. Ik veronderstel dat Joost zal antwoorden dat dit dezelfde betekenis heeft als het Light masker maar dan in de omstandigheid van een cursief weer te geven karakter (Skewed). M2Font zelf doet niets met deze parameter. Het is mogelijk dat tekstverwerkers of fonteffect-programma's deze parameter wel gebruiken. ZEDIT KARAKTER BEWERK OPTIES ============================ Het Zedit-venster bevat een aantal opties om: -de Zoom-matrix in te stellen. -een enkel karakter te bewerken. -een serie karakters te bewerken. -een enkel karakter te copiren of te wisselen. -een serie karakters te copiren of te wisselen. Al deze bewerkingen kunnen ook beperkt worden tot slechts een deel uit het karakter met behulp van de AREA functie, een 'highlight' van M2Font. Ook is de grafische modus [R|T|X|I] bij de meeste opties van belang! R staat voor REPLACE, T voor TRANSPARENT, X voor XOR en I voor INVERSE. Om een enkel karakter te bewerken (het karakter dat in de Zoom is geladen) kan men met de muis de optie aanklikken. Een deel van de opties om een enkel karakter te bewerken kan ook met een een toetscommando worden geactiveerd. Bijvoorbeeld om het karakter te inverteren. Allereerst zal ik de Zoom-matrix instelopties bespreken alvorens over te gaan naar de bewerkingen van de karakters, * Zoom maten ------------ De geruitte buttons en de buttons Hzoom: x en Vzoom: x geven de maatinstelling van de Zoom aan. Als u op de geruitte buttons klikt, dan wordt de zoom-maat met twee verhoogd of verkleind. Ik ben zo vrij aan te nemen dat u direct begrijpt welke button verkleind en welke vergroot. Ook kunt u per stap van 1, afzonderlijk voor de horizontale en vertikale maat van de zoom, de buttons Hzoom: x en Vzoom: x bedienen. Als u links van het cijfer klikt wordt het getal verhoogd, klikt u rechts van het cijfer, dan wordt het verlaagd. Zoals reeds in de inleiding was opgemerkt is het gunstig voor de snelheid van de Zoom om de horizontale maat op 8,16 of 32 af te stellen omdat in dat geval een optimale machinetaal-routine de vergroting tot zijn rekening neemt. In het geval van een anders ingestelde horizontale maat wordt de Zoom met de LINE_A BITBLOCK TRANSFER uitgevoerd die weliswaar behoort tot een van de meest krachtige grafische mogelijkheden van uw computer maar toch trager is dan de geoptimaliseerde machinetaal-routine. Omdat de snelheid van LINE_A routine ook bepaald wordt door het al dan niet aanwezig zijn van een BLITTER, wordt bij afwezigheid hiervan het verschil dramatisch (factor 10 trager dan de machinetaal-routine). De vertikale maat is niet van invloed op de keuze of de LINE_A of machinetaal-routine wordt gekozen. Overigens is dit snelheidsverschil pas echt van belang bij font's waarin de Zoom niet het gehele karakter kan tonen in een veld en er dus veel geschoven moet worden. Sneer: Het is ronduit beschamend te zien dat er fontprogramma's bestaan die opzich een aantal leuke opties hebben, maar de zoom opbouwen als betrof het een animatie-filmpje. Daar bestaan overigens twee soorten in: 1) De programma's waarbij de auteur niet begrepen heeft dat er ook met het programma zal worden gewerkt. 2) De programma's die zonodig tot in de eeuwigheid compatibel willen blijven met nieuwe computerseries en dus GEM VDI functies gebruiken om deze garantie te hebben. Het gevolg is dat de maker zichzelf rijk rekent en u met de gebakken peren zit. * Zoom-weergavenstijl --------------------- Onder de maatinstelling kunt u drie buttons op dezelfde rij vinden onder de namen Rast,T en W. Hiermee kunt u 9 verschillende stijlen van zoom-matrix weergave instellen. Rast: Dit staat voor RASTER. Als de button actief is, dan wordt er een raster over het vergrote karakter in de Zoom gelegd. T : Dit staat voor TILE (tegel). Hiermee worden de punten (vierkantjes) in de matrix niet tegen elkaar geplaats maar 2 beeldpunten van elkaar af zodat een Tegel & Naad effect ontstaat. X : Dit staat voor XOR. Het effect hiervan hangt af van de instelling van de Rast en T optie. Het kan zijn dat het raster erdoor in de grafische XOR modus over de matrix wordt heengelegd waardoor ook een soort tegeleffect ontstaat of dat de naden van de tegels smaller worden als de de T optie aanstaat. In alle gevallen waarin de X aanstaat heeft het nog het effect dat bij veranderingen in de matrix de weggehaalde punten en de bijgekomen punten er anders uitzien als de punten die er reeds waren. Dit kan bijzonder handig zijn wanneer men bij bepaalde mutaties de 'oude' punten weg moeten om te zien wat nieuwe doen maar tevens een indicatie wenselijk is waar de oude punten stonden. Indien enkel de X aanstaat worden de vertikale uitlijn posities als stippellijnen door de matrix heen getrokken. * Reactie van de muisknoppen in de zoom matrix: ----------------------------------------------- M2Font bied u vier verschillende mogelijkheden om enkel-punten of hand- getekende series van punten te zetten of weg te halen. Deze vier mogelijkheden kunnen worden gekozen met de menu buttons [W|B|F|A]. -W: White: Hiermee wordt bepaald dat het indrukken van de linker muisknop de kleur WIT geldig is (punten weghalen) en bij de rechter muisknop de kleur ZWART (punten zetten). -B: Black: Is de omkeerfunctie van W. Deze optie wordt het meest gebruikt in andere programma's. -F: First: De eerste punt die aangeraakt wordt bepaald de kleur zolang de muisknop is ingedrukt. Het maakt hierbij niet uit welke muisknop wordt bediend. Om een witte punt zwart te maken moet men dus starten op een zwarte punt, de muis ingedrukt houden en naar de witte positie schuiven. Deze optie heeft alleen zin voor bepaalde handgestuurde punt-serie handelingen. -A: Auto : De aangeklikte punt krijgt de tegengestelde kleur en de kleur die dit tot gevolg heeft blijft gehandhaafd zolang de muis is ingedrukt. Deze optie is vooral handig om bij enkel-punts handelingen punten te verwijderen en anderen te zetten. * Grafische modus ----------------- De balk waarin zich de buttons [R|T|X|I] bevinden dienen om de grafische modus in te stellen die in acht wordt genomen bij het bewerken van een of meerdere karakters. -R: REPLACE : OVERSCHRIJF/VERVANG modus Deze modus wordt gebruikt als er geen speciale toepas- singen beoogd worden. Zoals de naam zegt vervangt het de oude situatie door de nieuwe. Bij tekenen houd dit in dat het resultaat DEKKEND is. -T: TRANSPARENT : TRANSPARANT/MENG modus Deze modus mengt de oude met de nieuwe situatie. Dit betekent dat delen die geplaatst worden op het bestaande het oude niet noodzakelijkerwijs afdekken. -X: EXCLUSIVE OR : EFFECT modus Hier wordt de achtergrond (het oude) op een speciale wijze gemengt (verknoopt) met het nieuwe. Over deze modus valt een compleet boek te schrijven. Uitproberen dus. -I: INVERSE : OMKEER modus Als Replace maar tevens een INVERSIE. In bepaalde gevallen INVERSE TRANSPARENT: er wordt dan een inversie van het nieuwe transparant gemengt met de achtergrond. voorbeelden: -Als bij het copiren van een karakter naar een andere positie waar reeds een karakter aanwezig is de transparant modus wordt geactiveerd, dan zal het bron-karakter zich mengen met het doel-karakter op de plaats van het doel-karakter. Stelt men bijvoorbeeld een AREA in, dan kan een bepaald deel uit het bron-karakter transparant over het doel-karakter worden gecopierd. -U heeft het linker bovendeel van een vorm getekend in de Zoom en wenst dit naar vier zijden te spiegelen. Bijvoorbeeld een kwart-cirkel. U kiest de transparant modus en voert achtereenvolgens een Hmirror en een Vmirror uit. -U heeft op een copie van een font, in een ander venster dan het origineel, deze verdikt en vervormd. In grote lijnen hebben bewerkt en origineel font nog gemeenschappelijkheden. Nu gaat u deze twee font verknopen om zo een effectvol font te maken. U stel de grafische modus in op X en copiert vervolgens het hele origineel-font naar het bewerkt-font in de XOR modus. Dit copiren doet u met de COPY optie in de serie (multi) modus. Hoe dit moet kunt u zodadelijk in beginsel al uitgelegd zien. Het bewerken van een serie (reeks) karakters of het gehele font. ---------------------------------------------------------------- Om meer dan een karakter als een serie te bewerken dient men met de rechter muisknop de optie aan te klikken. Er veschijnt dan een submenu waarin men op zijn minst aan kan geven waar de start en waar het einde van de serie ligt. Ook wordt aangegeven in de kop van het submenu of het font 1 dan wel font 2 betreft (het cijfer wordt achter de menutitel geplaatst). Afhankelijk van de soort bewerking kunnen er nog meer instellingen aanwezig zijn. Het kiezen van het begin en het einde van de serie: U kunt voor de parameters START en END de displays instellen met de muis via de [<|>] 'up/down counting buttons' of door met de muis op de waarde te klikken en met de cursorinvoer een index invoeren. Maar veel handiger is om: op de button START te klikken zodat deze geinver- teert wordt ten teken dat u in het venster van het font dat is aangegeven een karakter kan gaan kiezen dat als het begin van de serie zal gelden. U kunt in het venster scrollen om bij het juiste karakter te komen, maar andere venster-handelingen kunt u niet doen. Ook kunt u tijdens het actief zijn van de button verder geen andere dingen doen als het selecteren van een Start karakter en eventueel het uitschakelen van de button. Als u een teken gekozen heeft dan schakelt de button zich uit en verschijnt de index op het display. Nu klikt u op de END button en herhaald de handeling om het einde van de serie aan te geven. Als u de button zelf weer wenst uit te schakelen dan moet u op de rechter muisknop drukken. Nadat u de juiste start en eind posities van de serie heeft aangegeven kunt u op de GO! button klikken om de bewerking uit te voeren. Als u de bewerking niet wenst uit te voeren, dan klikt u op de [Return] button of slaat de , of toets aan. Ook kunt u op de rechter muisknop drukken. De Start en Einde instelling die u in een van de submenu's instelt wordt door alle andere submenu's overgenomen. Hierdoor kunt u eenvoudig verschillende bewerkingen op een bepaalde serie uitvoeren. LET OP! Als een AREA van toepassing kan zijn voor een bepaalde optie (en dat is voor nagenoeg alle opties zo), dan wordt bij een actieve AREA u gevraagd of het juist is dat deze aanstaat. Merk ook op dat de AREA een time-out kent. Dit betekent dat als u een actieve AREA 10 minuten lang niet gebruikt, deze automatisch door M2Font inactief wordt gemaakt en dus wordt genegeerd. * MOVE ------ De bovenste optiebalk van de ZEDIT menu wordt ingenomen door vier buttons met ieder een pijl in een hoofd-windrichting. Zij hebben als functie het karakter in de matrix te verschuiven. Hetgeen dat wegschuift aan een bepaalde zijde komt aan de tegengestelde zijde hiervan weer tevoorschijn. U kunt meerdere karakter in serie met HOME bewerken en ook de AREA functie is hier werkzaam. Ook kent het submenu voor serie behandeling nog de optionele parameter AMOUNT. Hiermee kan worden aangegeven hoeveel pixels er geschoven moet worden. LET OP! De AMOUNT waarde wordt ook overgenomen bij een manuaal behandeling van een enkel karakter als de buttons met de muis worden bediend. De move optie is ook te activeren met de cursortoetsen. In dit geval heeft de AMOUNT waarde geen effect. Wanneer de rechter Shift toets wordt ingedrukt, dan wordt per 2 pixels verschoven. Drukt men de linker Shift toets in, dan wordt per 4 pixels verschoven. Drukt men beide Shift toetsen in dan wordt er per 8 pixels verschoven. Ook het numeriek toetsenbord is actief. De cijfers <2,4,6,8> hebben dezelfde betekenis als de de cursortoetsen met dit verschil dat nu de grafische modus ook werkzaam is. Als men een serie karakters gaat MOVEN, dan is de grafische modus ook van toepassing (bij een enkel karakter wordt replace gebruikt). * Home ------ Hiermee wordt de inhoud van een karakter schoon gemaakt zonder dat de breedte instelling verloren gaat. U kunt meerdere karakter in serie met HOME bewerken en ook de AREA functie is hier werkzaam. U kunt ook met de toets deze optie activeren. * Invert -------- Geeft de grafische inversie van het karakter (zwart wordt wit en wit wordt zwart. U kunt meerdere karakter in serie met INVERT bewerken en ook de AREA functie is hier werkzaam. Deze optie is ook te activeren met de toets. * Hmirror * Vmirror -------------------- Spiegelt het karakter horizontaal/vertikaal. U kunt meerdere karakter in serie met Hmirror/Vmirror bewerken en ook de AREA functie en de grafische modus is hier werkzaam. * Outline * Bolden * Light ---------------------------- Dit zijn feitelijk MOVE operaties waarbij de grafische modus reeds is vastgelegd om zo een coventioneel effect te creren. Met de optionele parameter JUMP kan men aangeven hoeveel verschuiving men wenst. De AREA functie is bij deze opties werkzaam. Ook kan men in het submenu aangeven in welke richting er geschoven moet worden. LET OP! De JUMP waarde is feitelijk gelijk aan de AMOUNT waarde bij de MOVE optie. Alle submenus's nemen deze waarde van elkaar over. Als dus de AMOUNT bij MOVE op 3 wordt ingesteld dan zal men kunnen constateren dat de JUMP waarde daarmee ook op 3 is gezet. Verandering van de JUMP waarde betekent ook het wijzigen van de AMOUNT waarde bij MOVE acties. Het attribuut van de richting wordt overgenomen door alle andere submenu's die dit attribuut kennen. De instellingen van het submenu zijn ook geldig voor het bewerken van een enkel karakter. De opties kunnen ook worden aangesproken met respektievelijk de , , en toetsen. ! Noot : Merk op dat voor bovengenoemde de BOLDEN, LIGHTEN en OUTLINE functies een betrekkelijk simpel principe is gebruikt. Hierdoor zal niet onder alle omstandigheden het resultaat zijn zoals men dit gedacht had. Er wordt namelijk niet aan 'real image processing'@ gedaan maar simpelweg via een 'Overlay' techniek in een bepaalde grafische modus gewerkt. @ Bij image-processing wordt puntsgewijs en analyse gemaakt van een karakter om zodoende op een veel nauwkeurige wijze ook bij kleine font's een mooi resultaat te krijgen. Het programmeren van een heuse (en vooral snelle) image-processor vergt dusdanig veel tijd dat dit pas relevant wordt als er een voldoende grote groep gebruikers voor het M2Font programma is. ! Merk ook op dat de AREA functie ook van toepassing is bij het gebruik van de BOLDEN,LIGHTEN en OUTLINE optie. * Cursive --------- Met deze optie maakt men een karakter, een serie karakters of het gehele font cursief. Ook kan men een BEND uitvoeren (verbuiging). De parameters hebben de volgende betekenis: START: Geeft zoals reeds is uitgelegd het eerste karakter uit de serie aan. END : Geeft zoals reeds uitgelegd het laatste karakter uit de serie aan. SKEW : Als deze button aan staat wordt het cursiveren geactiveerd. De waarde die bij SKEW hoort bepaald het aantal pixels dat de top zal gaan hellen t.o.v. de bodem. Als deze waarde op 1 staat wordt er natuurlijk niets gecursiveerd. STEP : Bepaald de sprongafstand. Het cursiveren geschied d.m.v. lijnen te verschuiven. Met de STEP waarde kan men lijnen weglaten. Ook wordt door het instellen van de STEP waarde de Skew waarde beinvloed. Er geldt dat: SKEW waarde = SKEW/STEP BEND : Als deze button aan staat wordt het verbuigen geactiveerd. De waarde die bij BEND hoort bepaald de hoeveelheid slagen die de verbuiging zal maken. Bij waarde 1 wordt er een enkelvoudige verbuiging gemaakt. FORCE: Bepaald de sterkte van de verbuiging. Deze waarde is dus alleen van belang als de BEND button aan staat. CLEAN: Als deze button aan staat wordt de achtergrond waar het origineel op staat verwijderd alvorens de operatie plaats vindt. Staat de button uit, dan wordt de operatie uitgevoerd over het origineel heen! Er vindt dan dus een menging van origineel met de bewerking plaatst. (let op de grafische modus). PATTRN:Als deze button actief is, dan wordt de bewerking uitgevoerd in een verknoping met het actueel gekozen patroon. Met het richtings-attribuut kunt u instellen naar welke richting de bewerking moet worden uitgevoerd. De grafische modus is van toepassing bij de bewerking met "CURSIVE" en als klap op de vuurpijl is ook de AREA functie van toepassing. Het zal duidelijk zijn dat wat gemakshalve de Cursive optie is gedoopt in feite een effect-generator die veel meer kan dan alleen cursiveren. Als u gaat experimenteren met de optie, neem dan een niet al te klein font en voer de testen uit op een enkel karakter dat u steeds met in zijn originele toestand kunt terug plaatsen. U stelt dan de parameters van het menu in maar geeft geen GO! commando (omdat dit dan een serie-bewerking laat uitvoeren), maar drukt de rechter muisknop of klikt op [Return] of slaat of aan om het submenu te verlaten en slaat dan aan om het actueel in de Zoom geladen karakter te bewerken. LET OP! Als u gaat cursiveren, dan dient u vooraf te kijken of de breedte van de karakters breed genoeg zijn om de expansie van het karakter te kunnen bergen. Als dit niet het geval is, dan kunt u de WIDTH parameter in het Info-venster vergroten en met de optie ADD pixels toevoegen aan het font. Of u deze pixels toevoegd aan de linker op rechter zijde hangt af van de richting waarin u gaat cursiveren. Indien u een SKEW uitvoert naar boven of naar onder toe, dan geldt hetzelfde, zij het dan dat u het font eerst vertikaal dient te expanderen en de bijkomende pixels met de ADD optie aan de boven of onderkant van de cel dient toe te voegen. Deze noodzaak tot expanderen om ruimte in de karaktercel te creren is nodig bij alle effecten die u uitvoert en leiden tot een resultaat dat buiten de oorspronkelijke breedte van het karakter gaat lopen. U vraagt zich misschien af waarom M2Font dat niet voor u doet (het was toch zo'n slim programma?). Welnu, het programmeren van dit soort zaken lijkt op het eerste gezicht simpel, maar in de praktijk blijkt steeds weer dat er flink wat venijn in steekt, De oorzaak hiervoor is de flexibiliteit van bijvoorbeeld de SKEW & BEND ("Cursive") optie zoals die in M2Font is geimplementeerd. Het gevaar ontstaat dat er handelingen niet worden voorzien en dus het middel erger wordt dan de kwaal. M2Font wil niet over een nacht ijs gaan. * Pattern --------- Als deze optie wordt geactiveerd (met de muis of met

), dan zal het actueel geladen karakter in de Zoom met een patroon worden verknoopt. Dit is dus niet hetzelfde als de FILL optie (hoewel dit in sommige gevallen wel tot hetzelfde resultaat leid). Wat gebeurt is het volgende: Alles wat zwart is in het karakter wordt als een sjabloom gebruikt om deze zelfde vorm uit een 'patroonvel' te knippen. Dit in tegenstelling tot vullen waarbij slechts een afgebakend gebied gevuld wordt, om het even of dat een wit of zwart gebied is. U kunt ook een serie karakters achter elkaar met deze optie bewerken als het met de rechter muisknop het submenu oproept voor serie bewerking. Ook de grafische modus en de AREA functie kunnen worden gebruikt. Het kiezen van het patroon: Onder de

attern button ziet u het patroon dat actueel is. Door met de rechter muisknop op dit vak te klikken verschijnt een menu waarin alle patronen staan die momenteel beschikbaar zijn. U kiest een patroon door met de muis op het desbetreffende patroon de klikken. U verlaat het menu weer door of op de CLOSE button te klikken of door een klik met de rechter muisknop of door , dan wel de toets aan te slaan. De LOAD optie is bij deze versie van M2Font nog niet geimplementeerd. * Round ------- Als u deze button actief maakt, dan kunt u met cirkels en ellipsen tekenen in het MONITOR venster. Steeds als u wat neerzet op het karakter in het Monitor-venster zal dit worden overgeheveld naar de Zoom. U tekent dus niet rechtstreeks in de Zoom. De cirkelvorm waarmee u tekent verschijnt pas als u de muis binnen de maat van de karaktercel heeft gezet en een keer met de linker muisknop een klik heeft gegeven. U kunt de cirkelvorm bewegen met de muis. Om vervolgens dan de vorm ook te plaatsen klikt u nogmaals met de linker muisknop. Als u op de rechter knop drukt, dan verlaat u deze tekenmodus. Als u klaar bent met het gebruik van de Round optie schakelt u deze weer uit. Zowel de grafische modus, de AREA functie en de lijnstijl zijn van invloed op deze optie. LET OP! -Als u de normale lijnstijl gebruikt (doorgetrokken lijn) en de grafische modus op I zet, dan gebeurt er niets! -De AREA wordt in het Zoom-venster gedefinierd. Echter, u tekent in het Monitor-venster! De cirkelvorm is tijdens de zichtbaarheid ervan bij het tekenen te wijzigen in vorm en grootte. Ook kan de contourdikte worden ingesteld n kunt u de cirkelvorm vullen met het actueel gekozen patroon. De volgende toetscommando's zijn geldig om dit te doen: Cursortoetsen: De cirkelvorm horizontaal en vertikaal vergroten en verkleinen. De beide Shift toetsen hebben als functie de stapgrootte waarin de vorm groter of kleiner wordt te bepalen. Cijfertoetsen: Hiermee wordt de lijndikte ingesteld van 1 tot 12. <1>...<9><0><-><=> : Schakelt het vullen aan/uit. : Simuleert een klik met de linker muisknop. De Round optie is ook te (de)activeren met de functietoets . * Line ------ Hiermee kunt u lijnen trekken in de Zoom-matrix. Als u de optie actief maakt dan wordt er gewacht op het zetten van twee punten: het beginpunt en het eindpunt. Als het eindpunt is gezet, dan wordt de lijn getrokken. Merk op dat de Line optie actief blijft zolang het eindpunt van de lijn niet is gezet. U dient deze zelf uit te schakelen als u wil afbreken. Dit afbreken kunt u doen door nogmaals op de Line button te klikken of of te gebruiken. Ook mag u 'scrollen' in het Zoom-venster tijdens het actief zijn van deze optie zodat u niet wordt gebonden aan hetgeen er (toevallig) zichtbaar is in de Zoom-matrix. Feitelijk mag u tijdens het actief zijn van deze optie doen wat u wil. Als M2Font een situatie tegenkomt die vereist dat de Line optie wordt uitgezet, dan doet M2Font dit zelf. Als u met de rechter muisknop op de Line button klikt, dan verschijnt er een submenu waarin u de lijnstijl en lijndikte kunt kiezen. De lijnstijl kiest u door op de lijn naar wens te klikken met de muis. De lijndikte kunt u instel- len met de [<|>] 'up/down counting' faciliteit en ook door op het getal te klikken voor een invoer met het toetsenbord. LET OP! De grafische modus is van invloed bij de Line optie. Ook de AREA functie kan worden geactiveerd om een gebied te begrenzen. De muisknop-kleurresponsie [W|B|F|A] is ook hier geldig zodat u ook witten lijnen kunt zetten. Als u de grafische modus I heeft gekozen met een normaal door- getrokken lijn, dan gebeurt er niets. BONUS & PUNTEN: meerdere lijnen in een keer: -------------------------------------------- In plaats van een enkel beginpunt en een enkel eindpunt kunt u ook een reeks van beiden aangeven waar tussen allen lijnen worden getrokken. Dit werkt als volgt: U laat niet de muis los bij het aangeven van het beginpunt. U trekt een aantal punten in willekeurig richting of vorm. Nu laat u de muisknop los en doet hetzelfde voor het eindpunt. Nadat u de muisknop heeft losgelaten worden alle beginpunten met alle eindpunten verbonden. Zijn deze ongelijk in aantal, dan wordt dit gecompenseerd. Deze optie is niet alleen handig om exotische vormen te maken, maar ook zeer confortabel voor een aantal ogenschijnlijk eenvoudige zaken. Bijvoorbeeld: U wenst 3 strakke lijnen horizontaal of vertikaal langs een reeds bestaande contour te trekken. U kunt dan natuurlijk drie maal de Line optie aanspreken en drie maal een lijn zetten, maar als u moet 'scrollen' in de Zoom om beide punten te zetten is dit geen handige methode. Veel slimmer is om gebruik te maken van de 'bonus'. U trek een kort lijntje van drie punten als zijnde het aangeven van de breedte van de lijn voor het beginpunt en doet hetzelfde voor het eindpunt. De drie lijnen worden dan in een keer gezet. Waar u wel op dient te letten dat de richting waarin u de beginreeks en eindreeks zet dezelfde zijn, anders worden de punten kruislings met elkaar verbonden met het snijpunt in het midden. * Fill ------ Voor het vullen van gebieden in de Zoom-matrix. Als u deze optie actief maakt, dan kunt u een punt klikken, ergens in de matrix. Het gebied waarin deze punt ligt wordt dan tot aan de grenzen gevuld met het actueel gekozen FILL-patroon. Dit werk hetzelfde zoals u gewend bent in tekenprogramma's. Merk op dat de vulgrenzen niet worden bepaald door de grenzen van het Zoom-venster, maar door de feitelijke karaktergrenzen. De muisknop kleurmodus is hier werkzaam, dus u kunt zowel positief als negatief vullen (zwart of wit). Het kiezen van het patroon: Onder de ill button ziet u het patroon dat geldig is. Door met de rechter muisknop op dit vak te klikken verschijnt een submenu waarin alle patronen staan die momenteel beschikbaar zijn. U kiest een patroon door met de muis op het desbetreffende patroon de klikken. U verlaat het menu weer door of op de CLOSE button te klikken of door een klik met de rechter muisknop of door , dan wel de toets aan te slaan. De LOAD optie is bij deze versie van M2Font nog niet gemplementeerd. * Copy ------ Om een enkel karakter te copiren binnen het zelfde font of naar een ander font kunt u deze optie gebruiken. Het karakter dat gecopierd gaat worden bevindt zich in de Zoom. De plaats waar naar u het gaat copiren dient u te kiezen in een van de twee View-vensters. Dit kiezen gaat op exact dezelfde wijze als het kiezen van karakters om deze in de Zoom te laden. U kunt ook tijdens het actief zijn van de Copy optie 'scrollen' in de vensters om zo de juiste positie waar naar u wenst te copiren in het vensterveld te krijgen. Nadat u het doel (destination) hebt aangegeven zal het karakter gecopierd worden maar nog niet definitief worden overgenomen. U ziet dat de Copy button door M2Font weer inactief is gemaakt ten teken dat de Copy actie heeft plaats- gevonden. Als u nu nogmaals met de muis klikt, dan wordt het karakter ook overgenomen in het View-venster (Auto-store). Mocht u de Copy actie ongedaan willen maken dan kan dat met de toets. Deze is zowel werkzaam voordat de Auto-store is uitgevoerd als erna. Merk op dat de functie via de Zoom loopt. Na een Undo dient dus ook nog een Auto-store uitgevoerd worden als u het karakter dat met Undo tevoorschijn is gekomen in de Zoom ook door het View-venster wil laten overnemen. Als de locatie waar naar u copierd in een ander font ligt dan de oorsprong van het karakter dat gecopierd gaat worden n de maatvoering van beide font's verschillend is, dan zal M2Font aan u vragen hoe dit verwerkt moet worden. U kunt dan besluiten te vergroten of te verkleinen (al naargelang), te 'Pushen' of te annuleren. Met een PUSH wordt hier bedoeld dat het karakter niet wordt aangepast. Als het bron-karakter kleiner is, dan wordt het in het doel-karakter in de linker bovenhoek geplaatst en als het groter is wordt er een uitsnede van genomen die past binnen de maat van het doel-karakter. Zowel de grafische modus als de AREA functie zijn van toepassing op de COPY optie. U kunt dus ook delen uit een karakter naar een andere positie copiren en deze zowel dekkend over te plaatsen als te mengen met het doel-karakter. Hiermee kunt u op een doeltreffende wijze karakter maken die opgebouwd zijn uit diverse delen van andere karakters. ! Merk op dat na een copy actie de zoom is geladen met het doel-karakter. U kunt de Copy optie ook activeren met ^. Het copiren van meerdere karakters in serie -------------------------------------------- Door met de rechter muisknop op de Copy button te klikken, roept u het submenu op om een serie karakters in een keer te copiren. Zoals reeds in de inleiding tot de ZEDIT opties is uitgelegd, dient u het begin en het eind van de serie aan te geven. Dit aangeven dient u te doen in het View-venster voor het actuele font. Welke dat is, kunt u zien aan het cijfer achter de titel in het submenu. Als begin en einde staan gedefinierd, dan dient u aan te geven of u binnen het actuele font wenst te copiren of naar het ander font toe. Dit doet u door de button [Fntx to Fntx] als dan niet actief te maken. Als laatste dient nog gedefinierd te worden waar het begin ligt van de doel- serie (het eerste karakter waar naar gecopierd gaat worden). U maakt eerst de button DESTIN actief en gaat dan in het doel-View-venster de start van de doel-serie aangegeven. !Merk op dat als u de DESTIN button eenmaal actief heeft gemaakt er niets ander kan worden ondernomen dan het kiezen van het doel-karakter of het uitzetten van de button. Geeft u het GO! commando, dan wordt er gecopierd. Indien de karakters vergroot of verkleind moeten worden, zal M2Font u daarover berichten. !Als u bij het kiezen van START, END en DESTIN in het verkeerde View-venster bezig bent, dan zal er geen reactie volgen. Als u het proces van kiezen wil annuleren kunt u een klik met de rechter muisknop geven. De button die aanstaat zal inactief worden. Indien u uiteindelijk helemaal niet wenst te copiren dan verlaat u het submenu gewoon met [Return] of door een klik op de CLOSE button of door het aanslaan van de , of toets. Ook bij dit meervoudig copiren is de grafische modus en AREA functie van toepassing. * Swap ------ Met deze optie kunnen twee karakters van plaats wisselen. Het karakter dat is geladen in de Zoom verwisselt van plaats met een ander karakter dat u kiest nadat u de Swap-button heeft geactiveerd. U mag karakters wisselen die zich niet binnen hetzelfde font bevinden. Echter de Swap optie kent geen mogelijkheden tot het aanpassen van de maten van de te wisselen karakters. Er wordt dus, indien nodig, een uitsnede gemaakt. De Swap optie kent ook niet de mogelijkheid om meerdere karakters in serie met elkaar te wisselen noch een AREA functie mogelijkheid. Voor een toekomstige versie van M2Font wellicht nog een onderwerp om over na te denken. * Align ------- Deze optie maakt het mogelijk om een karakter op een van de vertikale lijn- posities (Top, Ascent, Half ect...) te plaatsen. Ook kan er horizontaal uitgelijnd worden (Left, Center, Right). Het uitlijnen van het actueel in de Zoom aanwezige karakter doet u d.m.v. met de linker muisknop op de Align-button te klikken. Een dialoog zal dan verschijnen waarin u een keuze kunt maken omtrent de soort uitlijning die u wenst. Ook kunt een sprong maken naar de dialoog die het hele font bewerkt [Request all]. Om een enkel karakter uit te lijnen kunt u ook met de toetsen een commando hiertoe geven. Deze commando's luiden als volgt: Het is de bedoeling dat u eerst de aanslaat en vervolgens de tweede letter die staat aangegeven. AC Center Centreert het karakter. AL Left Plaatst het karakter geheel naar Links. AR Right Plaatst het karakter geheel naar Rechts. AB Base Plaatst de bodem van het karakter op de Base-line. AA Ascent Plaatst de top van het karakter tegen de Ascent-line AH Half Plaatst de top van het karakter tegen de Half-line. AT Top Plaatst de top van het karakter tegen de Top-line. AD Descent Plaatst de bodem van het karakter op de Desent-line. AG Ground Plaatst de bodem van het karakter op de absolute bodem v/d cel. AS Roept de dialoog op om het gehele font uit te lijnen. Om een serie karakters uit te lijnen kunt u met de rechter muisknop op de Align button klikken. Het submenu voor de serie bewerking zal dan opkomen. U kiest het begin en eindpunt zoals reeds is beschreven en geeft het GO! commando. Alvorens M2Font tot het uitvoeren van de opdracht overgaat krijgt u nog een dialoog waarin beschreven wordt wat er gedaan gaat worden en mogelijk valt er nog iets te kiezen over de wijze waarop dit gaat geschieden. Het nut van de horizontale Align optie is het grootst. U kunt met de Left, Center en Right opties een heel font consistent maken qua spatiring. Het maakt uit of u bij de spatiring van een font uitgaat van karakters die allen links staan in de cel of zijn gecentreerd. Als u alle karakters links zet, dan zal de linker kantlijn in een tekst het meest strak zijn. Echter, afhankelijk van de breedte van de letters zoals de "i" kan dit een lelijke spatiring geven in de lopende tekst. U kunt dit probleem natuurlijk later nabewerken. Ook kunt u bijvoorbeeld de karakters allen naar links zetten om ruimte te creren aan de rechter zijde ten behoeven van navolgende bewerkingen. Het nut van de vertikale uitlijning is betrekkelijk bij een letterset. Dit komt omdat in het alfabet verschillende families van soorten letters voorkomen, ieder met hun eigen typische regels voor de vertikale positie. Een serie van hoofdletters of symbolen valt echter heel goed in een handomdraai vertikaal uit te lijnen zodat ze allen gelijkwaardig zijn. Dit hangt natuurlijk af van het soort font en symbolen. * Delete -------- Met deze optie wordt het karakter dat actueel in de Zoom staat verwijderd uit het font. In tegenstelling tot de HOME optie wordt dus ook de breedte op nul gezet. Ook kunt u de toets gebruiken. Merk op dat afgezien is van de combinatie ^ omdat deze niet handig is vanwegen het feit dat er twee handen nodig zijn om deze aan te slaan. Mocht u pardoes op slaan als misgreep naar een andere toets: De toets biedt bevrijding. Voor het verwijderen van een serie karakters kunt u met de rechter muisknop op de Delete button klikken. In het submenu dat dan verschijnt kunt u de start en het einde van de reeks aangeven die gewist moet worden. Let erop dat het wel het juiste font betreft. Dit staat aangegeven d.m.v. het cijfer achter de menutitel in het submenu. Mocht dit niet het font zijn dat u wenst, dan verlaat u het submenu en stelt het juiste font in d.m.v. een karakter uit dat font in de zoom te zetten of door twee maal aan te slaan (Font Flip). Noot: Als u karakters manuaal wist met , dan worden deze intern niet echt weggegooid. Voor u zijn ze niet meer in het View-venster aanwezig, maar ze zijn nog wel terug te halen. Dit kan simpel genoeg door de breedte er weer van in te stellen. Indien u een karakter manuaal wist en direct deze weer wenst terug te halen door het opnieuw instellen van de breedte, dan zult u merken dat het karakter niet terugkomt. Dit dient u met de of Shift toets te doen Bij het terughalen van voorheen gewiste karakters is er n maar! Als u een font gaat laden, schrijven of u vraagt met de ABOUT&INFO een statistiek aan, dan worden bijden font's opgeschoond. Dit wil zeggen dat ook intern alle karakters die op "0" zijn gezet ook daadwerkelijk intern worden verwijderd. Ook in geval van een geheugenconflict vindt er een opschoning plaats. === Tik-test === ================ Font kent een 'mini-tekstverwerker' om de geladen font's uit te proberen. Op een blanco scherm kunt u een tekst typen met gebruik van n font. Welk font dat is hangt af van de optie die men heeft gekozen in de DeskTop menubar. Tijdens de tik-test kan men omschakelen naar het andere font. De gehele tekst wordt dan opnieuw gezet. * Gebruik hiervoor ^ (Switch). Spatiring: In de wijze waarop de tekst wordt gespatierd speelt het een rol of u de 'Proportional' parameter in het Info-venster op YES of NO heeft staan. Staat deze op YES, dan wordt natuurlijk de afstand tussen de karakters bepaald door de breedte die voor de karakters is ingesteld. Als het font staat gedeclareerd staat als niet-proportioneel, dan wordt de afstand bepaald door de 'Width' parameter uit het Info-venster. Tekstverwerker? Als u gaat werken met de Tik-test, dan denkt u in eerste instantie misschien dat deze werkt zoals u gewend bent van een tekstverwerker. Voor wat een aantal functies betreft kan zelfs de indruk ontstaan dat M2Font sneller werkt dan dat u gewend bent. Toch dient u zich te realiseren dat het hier gn echte tekst- verwerker betreft. Zoals gezegd, is het een 'mini'. Hierin zijn alleen die functies in opgenomen die nodig zijn om een redelijke test met een font te doen. Alles laden: Bijzonder is wel het feit dat u alles als test-tekst mag inladen. Het maakt M2Font niet uit of het een ASCII file dan wel iets heel anders is. Dit in tegenstelling tot de meeste tekstverwerkers die bij het laden van een file het laden afbreken als zij de een ASCII 0-index tegenkomen. Omdat in hulpbestanden van een programma dit "0-teken" veelvuldig aanwezig kan zijn, is het van betekenis te weten dat dit er schuldig aan is dat hulpbestanden niet zijn te bekijken via de DeskTop optie 'SHOW' noch door deze in een tekstverwerker te laden. M2Font laad alles in als zijnde karakters tot een maximum aantal van 8192. Hierbij worden alle 0-indexen vervangen door spaties (ASCII 32 index). * Een tekst laden of een tekst bewaren doet men met de DeskTop menubar opties "Load test text" en "Save test text". Formatering: De wijze waarop het geladen bestand wordt geformateerd als zijnde afzonderlijke regels hangt enerzijds af van het 'tegenkomen' van een z.g. Carriage Return (ASCII index Nr 13) of Line Feed (ASCII index Nr 10) en anderzijds van het feit of de maximale regellengte is bereikt (128 karakters). Bladeren Of de hoeveelheid geladen karakters ook zichtbaar zijn hangt af van de fontmaat waarin u de tekst plaatst met de tik-test. U kunt met een aantal toetscommando's door de tekst bladeren. Hierbij kan zowel omhoog/omlaag als van links naar rechts worden gebladerd. * ^ Een pagina terug. *Ook Shift * ^ Een pagina vooruit. *Ook Shift * ^ Blader naar het begin van de regel. * ^ Indien op het einde van de beelschermregel:blader naar rechts. Als niet op het einde: cursor naar einde beeldschermregel. * ^<[> Blader naar links. Indien er niets valt te bladeren: naar begin van de regel. * ^<]> Blader naar rechts. Indien er niets valt te bladeren: naar het einde van de regel. In het concept van de tik-test routine was in eerste instantie uitgegaan dat men een tekst typt met het oog op de typografische betekenis ervan. Hiervoor volstond het concept om de regellengte binnen de limiet van het beeldscherm te houden. Dus niet naar rechts te kunnen bladeren. Echter, omdat een gemaakte test-tekst met lange regels voor een klein font niet confortabel te gebruiken was als tekst voor een groot font, is later toch een blader-optie en Wrap mogelijkheid gemplementeerd. Feitelijk zijn er na het opzetten van de basisstructuur nog velen functies meer bijgekomen omdat de praktijk hiertoe uit nodigde en het ook een uitdaging was om deze functies te programeren. De weg die echter was ingeslagen in programmeer-technische zin leende zich niet goed om in korte tijd een gegarandeerde 'fool-proof' blader-naar-rechts-en-bewerk mogelijkheid in te bouwen. Bij het testen van de uitbreidingen werden fouten ondekt en vervolgens opgelost. De zwakheid van deze 'trial & error' methode bestaat eruit dat het niet uitgesloten is dat door een bepaald gebruik er toch nog een fout op treedt. Het hele concept moet nog eens op theoretische basis onder de 'loop' genomen worden. Bij het uitbreiden van de mogelijkheden komt men op een kritisch punt van discussie te staan. Deze valt als volgt te typeren: Als er niets is, heeft niemand er over en als er mogelijkheden zijn geschapen, dan valt men er over. M2Font is geen tekstverwerker maar een Font programma! De tik-test is erg praktisch, maar houd het gevaar in dat het naar meer gaat smaken en dit heeft consequenties voor de programma-grootte. Er rijst dan de vraag of deze ruimte niet moet worden besteed aan mogelijkheden die meer met het editen van de font's zelf te maken hebben. Al met al zijn er dus de nodige beperkingen, maar wat er mee kan is winst als met dit vergelijkt met de meeste andere font-programma's. Voor het testen van een font worden de mogelijkheden voldoende geacht en omdat alles te laden is heeft men nog een interessante mogelijk om bepaalde hulpbestan- den eens te bekijken t.b.v. een groter inzicht in de betekenis van die bestanden voor het programma dat deze gebruikt n of deze mogelijk informatie bevatten die voor verandering vatbaar is (niet doen met M2Font!). Verlaten van de Tik-test: Als u met de rechter muisknop klikt, dan verlaat u het tik-test scherm en keert terug naar het hoofdprogramma. Hiervoor kunt u ook de toets aanslaan. Tekst wegschrijven: Als u een test-tekst gaat wegschrijven, dan doet M2Font dit in vorm van een gewone ASCII file. Hierbij wordt op het einde van iedere regel een Carriage Return n een Line Feed aan de regel 'vastgeplakt' zodat de tekst in alle programma's die ASCII kunnen laden kan worden gebruikt. Notities maken: U kunt dus ook, tijdens het werken met M2Font, een notitie schrijven die u dan later verwerkt in een tekstverwerker of dient als en READ-ME bestand. Als u dit gaat doen, is het verstandig om gebruik te maken van het 8x8 of het 8x16 systeem-font. Deze kunt u met de [Make Font] optie eenvoudig en snel in een van de View-vensters aanmaken. Merk opdat als men een ASCII tekst laad die niet in M2Font is gemaakt en deze na verandering weer wegschrijft, er een verschil kan zijn ontstaan in de regellengte-formatering en het aantal regels. M2Font kapt geladen regels af als zij de 128 karakters overschrijden en zet de rest op een volgende regel. Ook kent M2Font een vast aantal van 64 regels. Lege regels worden weggeschreven als zijnde een Carriage-Return+Line Feed. Cursor beweging: * Beweeg de cursor 1 positie / 'Scroll' een regel. * Zet cursor links-boven. * ^ Keer terug naar het begin van de tekst en zet de cursor links-boven. * Schakelt het knipperen van de cursor aan/uit. Het bewegen van de cursor geschied zoals men gewend is. Indien de cursor onder of bovenaan het scherm staat, dan zal respectievelijk een opwaardse en neerwaardse cursorbeweging de pagina een regel laten 'scrollen' als deze niet reeds respectievelijk aan de top of bodem staat. In tegenstelling tot een tekstverwerker kunt u met de cursor gewoon naar iedere regel op het beeldscherm gaan zonder eerst deze regel aan te melden door het gebruik van de Return toets. De meest rechtse positie wordt bepaald door het laatste teken op de regel (zoals u dus gewend bent). * ^ Cursor naar het logische begin van de regel. Shift Cursor naar het fysieke begin van de beeldschermregel. * ^ Cursor naar het logische einde van de regel. Als logische en fysieke einde samenvallen: blader rechts. Shift Cursor naar het fysieke einde van de beeldschermregel. Merk op dat er bewust voor gekozen is om een onderscheid te maken tussen het logische einde en het fysieke beeldscherm-einde van een regel. De reden hiertoe is het feit dat dit mij in de omstandigheid van een Font-programma zinvol leek. Men dient (...) ervoor te zorgen dat een test-tekst horizontaal beschouwd binnen het beeldscherm bereik past om zo een goed relationeel overzicht te houden omtrent het typografisch karakter van het Font. * Cursor naar het begin van de volgende regel. Cursor & Muis: De cursor is ook met de muis ergens in de tekst te plaatsen. U klikt gewoon de positie aan waarop u de cursor wenst te zetten. Tekens wissen: * Verwijder het teken rechts van de cursor. * Verwijder het teken links van de cursor. * Shift Indien de cursor op een spatie staat, dan wordt deze spatie en ook de navolgende spaties tot aan het eerstvolgende woord gewist. Tekens invoegen: * Voeg een spatie in, rechts van de cursor. Tijdens de tik-test typt u altijd in de overschrijf-modus! Dit in tegen- stelling tot wat u waarschijnlijk gewend bent. Als u een teken wenst in te voegen, dan doet u dit met de Insert toets. Er wordt dan een spatie ingevoegd. Zet u nu op deze plaats een karakter uit een proportioneel font, dan is het waarschijnlijk dat dit niet precies past binnen de ruimte die was geschapen met het invoegen van een spatie. Dit wordt echter weer gecorrigeerd bij een aantal andere handelingen waarbij de regel opnieuw wordt berekend. Ook kunt u de gehele regel opnieuw laten tekenen door ^ te gebruiken. Regels wissen: * ^ Ook ^ Verwijder de regel waar de cursor op staat. Regel terughalen: 'Undelete' * ^ Ook Haalt de laatst met ^ of ^ gewiste regel terug. (voegd deze in op de regel waar de cursor staat). Regels invoegen: * ^ Ook Shift Dit is alleen geldig als de cursor aan het begint of aan het einde van de regel staat. Staat de cursor ergens IN de regel, dan wordt er een Wrap-Down gedaan. Word Wrap: * ^ Ook Shift Als de cursor ergens in de regel staat wordt deze regel vanaf de cursorpositie naar de volgende regel verplaatst. Er wordt dus eerst een regel ingevoegd onder de cursorregel. De cursor wordt 'meegenomen' naar de ingevoegde regel. Merk op dat hiermee de laatste regel in het geheugen (dus niet de laatste beeldschermregel) gewist wordt. De reden hiertoe ligt in het feit dat er een statisch aantal van 64 regels beschikbaar zijn voor de test-tekst en er dus bij een Wrap-Down een moet wegvallen (logischerwijze de onderste). * Shift Wrap Up Als de cursor op het einde van een regel staat (het logische einde), dan wordt een Wrap-Up gedaan indien er ruimte is op de regel om een deel van de volgende regel te verplaatsen achter de cursor. De regel waarvan het Wrap deel is afgehaald wordt vervolgens naar links geschoven. Mocht een Wrap-Up actie als resultaat hebben dat de 'Bron-regel' leeg achterblijft, dan wordt deze regel gewist en verplaatst het onderliggende tekst gedeelte zich een regel naar boven. Merk op dat als u visueel aan het einde van de regel staat dit nog niet betekent dat dit ook werkelijk het logische einde van de regel is. Spaties kunnen nog volgen en deze zijn niet zichtbaar maar worden wel als tekens gezien. Dit wordt ook duidelijk als men de ^ gebruikt die de cursor aan het absolute einde plaatst achter de eventueel nog aanwezige spaties. Redraw: * ^ Draw Gehele tekst opnieuw zetten. * ^ Huidige regel opnieuw zetten. Omdat bij het gebruik van een proportioneel font in een aantal gevallen de grafische opbouw niet correct geschied, moet men een 'Redraw' uitvoeren om deze weer juist te plaatsen. Omdat er altijd in de Overwrite-modus wordt getypt ontstaat bij een 'Insert' en het daarna invullen van deze positie met een karakter een foutief beeld. Een volgende actie kan dit dan wel weer wegtrekken, maar men kan dit dus ook forceren door gebruik van de ^ of ^ toets. Tekst wissen: * ^ Erase De gehele tekst wordt gewist (het geheugenblok wordt 'schoongeveegd'). Een Alert vraagt eerst nog om een extra bevestiging. Bijzondere functies: * ^ Capital Alle normale letters in hoofdletters. * ^ Lowercast Alle normale letters in kleine letters. * ^ Obverse Ieder woord beginnen met een hoofdletter. Met deze functies heeft u de mogelijkheid om de gehele tekst op een bepaalde wijze weer te geven in relatie tot de normale karakters uit het alfabet. Dit kan handig zijn om te bestuderen hoe de hoofdletters, kleine letters en de samenhang er tussen zich tot elkaar verhouden. realiseer u dat deze omvorming in het tekstgeheugen wordt gedaan alvorens deze opnieuw te tonen. Het zijn dus 'destructieve' opties die de tekst definitief wijzigen. * ^ Geeft alle '0'-posities aan d.m.v. een punt. Ook M2Font gebruikt het 0-index teken om het logische einde van een regel te kunnen herkennen. Door gebruik van ^ wordt er ook zichtbaar waar deze 0-tekens zich bevinden. De zin van deze optie is op dit moment beperkt omdat bij het laden van een 'vreemde' file alle 0-indexen worden vervangen door spaties. Fixeren: * ^ Scherm fixeren. Ik herinner u er nogmaals aan dat met de toetscombinatie ^ het scherm, zoals dat in zijn geheel zichtbaar is, kan worden gefixeerd als zijnde een plaatje. Dit plaatje wordt dan in het Picture-venster geplaatst en kan dus in het hoofdprogramma bekeken worden. Ook kan het als een plaatje worden weggeschreven naar disk in GEM IMG, DEGAS PI3 of SCREENDUMP formaat. Het kunnen bekijken van de getypte tekst kan een goed hulpstuk zijn bij het verder werken aan een font. Weergave van niet aanwezige karakters: -------------------------------------- Het staat helemaal niet vast of alle karakters (de indexen) waaruit een test- tekst bestaat ook werkelijk aanwezig zijn in het font. M2Font geeft dit aan. Ieder karakter dat niet in het font aanwezig is wordt aangegeven met een zwart vlak en in dit vlak wordt met het 6x6 systeem-font aangegeven welk karakter daar volgens de systeem-font-indeling bij hoort. Op deze wijze wordt het dus snel zichtbaar of bepaalde karakters ontbreken. === AREA === ------------ Prominent aanwezig in deze handleiding is het begrip AREA. Hiermee wordt een een gebied bedoeld binnen het karakter in de Zoom. Het definiren van een Area leidt ertoe dat operaties op het karakter begrenst worden tot dit gebied of dat het gebied dient als 'grondstof' om mee te opereren. In het laatste geval kan het resultaat buiten het het gebied treden. Het definiren van een AREA: ---------------------------- Een Area wordt gedefinierd in de zoom-matrix. Met de toetscombinatie ^ vangt men aan. Een kader (dubbel kruis) verschijnt in de matrix om de positie en de maat aan te geven. | | Met de muis kan het kader worden bewogen | | naar de gewenste positie. U zet de linker -------+--------------+-------- bovenhoek op het gewenste punt en gaat dan |::::::::::::::| de maat van het kader vergroten of verkleinen |::::::::::::::| totdat u met het kader het juiste gebied |::::::::::::::| hoogte heeft omsloten. Dan drukt u de toets in |::::::::::::::| (zonder gebruik van de Control toets) om |::::::::::::::| definities het gebied aan te melden. Als u |::::::::::::::| op drukt, dan annuleert u. -------+--------------*-------- | breedte | | | -Maat wijziging van het kader: Om het kader te vergroten of te verkleinen gebruikt u de cursortoetsen: : per 8 pixel Linker Shift +: per 1 pixel Rechter Shift +: per 16 pixel Control +: per 8 pixel breedte+hoogte simultaan. of of de linker muisknop melden de Area aan. of of de rechter muisknop annuleren het proces. Merk op dat GEM u de mogelijkheid biedt om de muiswijzer (het kader in dit geval) ook te verplaatsen met behulp van de Alternate+cursortoetsen. Er wordt dan per 8 pixels verschoven. Drukt u ook de Linker Shift-toets hierbij in, dan wordt per 1 pixel verschoven. Gebruik NIET de GEM functie om met de toetsen een muisklik te simuleren! U kunt dan namelijk (onvoorspelbaar soms) een totale Crash veroorzaken die niet door M2Font kan worden afgevangen. Laat de actuele area zien terwijl u een nieuwe aan het definiren bent. Het kiezen van de Area-definitie: --------------------------------- M2Font kan 10 verschillende gebieden onthouden (presets). U kiest de preset door met Shift+ de daarvoor bestemde dialoog op te roepen. Deze heeft 10 keuze buttons die genummerd zijn van <1> tot <0> (10). U kunt een preset selecteren met de muis maar ook door een toets aan te slaan in het aangegeven bereik. Om dus preset 5 te kiezen kunt u Shift+ en dan <5> aanslaan. De dialoog komt wel op, maar wordt in dit geval met een toetsdruk afgehandeld. U kunt ook naar de DeskTop menubar gaan, onder de kop OPTIONS en daar de optie [Select Area] aanklikken en dan in de dialoog met de muis op de [5] button klikken. In het bijzonder als u een serie Area bewerkingen gaat uitvoeren kan het handig zijn om de verschillende gebieden onder aparte presets onder te brengen in plaats van steeds opnieuw een nieuwe definitie te moeten maken. Het aan/uit schakelen van de AREA-functie: ------------------------------------------ ^ : Schakelt de Area-functie aan. ^ : Schakelt de Area-functie uit. LET OP! M2Font schakelt de Area zelf uit als u langer als 10 minuten geen handeling verricht waarin de Area werkzaam is. De reden hiervoor is dat het voor de hand ligt dat er vergeten wordt de Area uit te schakelen en vervolgens een bewerking verkeerd uitpakt. Dit wordt dus ondervangen door de Area na 10 minuten uit te schakelen nadat er geen handelingen meer zijn verricht waarin de Area werkzaam kan zijn. Als er dan toch moet worden nagedacht, dan is hiermee bepaalt dat; als u met Area's aan het opereren bent de gewoonte aanneemt, om bij bewerkingen waarbij meerdere karakters gelijktijdig betrokken worden, altijd eerst ^ gebruikt om de Area te activeren. Ook kan als argument voor deze keuze worden aange- voerd dat het waarschijnlijk is dat u een bewerking zonder Area wil uitvoeren omdat de Area functie voor meer specifieke bewerkingen dient. De foutkans wordt hiermee dus gereduceerd. Dit is belangrijk omdat u bij een serie- bewerking geen Undo tot uw beschikking heeft. Tot slot nog iets over de reden van de ^ en ^. Deze keuze heeft zich niet laten bepalen doordat de letters voor een term staan die met de actie te maken heeft. De keuze kent puur ergonomische redenen. Houd van uw linkerhand maar eens de ringvinger op de Control-toets en de middelvinger op de . De wijsvinger kan dan op de rusten en voor het bedienen van de toets gebruikt u de middelvinger die nomaliter op de rust. Ik haal deze combinatie expres aan omdat deze stof tot nadenken zou kunnen zijn voor software-bedenkers. Bij de keuze van de toetsen om bepaalde opties aan te spreken wordt meestal HET WOORD als uitgangspunt genomen. Wij leven in de tijd waarin de dictatuur van het woord geldt. Het feit dat het woord iets is van het hogere denken (een latere stap in de evolutie van het dier mens) is tevens de zwakte ervan. Wij denken en onthouden veel beter bij de gratie van de assiocatie n, in context tot een toetsenbord, speelt het motorisch geheugen een grote rol. Ik besef dat ik hier nogal stellig een bewering doe waar niet iedereen het mee eens zal zijn. Sterker nog, de meeste mensen zullen het niet met mij eens zijn. Vandaar dat ik ook spreek over een dictatuur. Om u van dienst te zijn: de staat voor Quad/Quadratus (Quadraat) en de voor Zoneless (Zone-loos). Nawoord ======= Bij deze ben ik aan het slot gekomen van deze korte handleiding. Misschien vond u het niet kort. Ik moet bekennen dat het langer is geworden dan oorspronkelijk was gedacht. Ondanks de principekeus om de handleiding voor deze eerste versie van M2Font simpel te houden, had ik mij niet een bepaald aantal aanslagen als limiet gesteld, maar veeleer een bepaalde tijd. Deze handleiding is van het begin tot het einde als een lopende tekst geschreven zonder er naderhand teveel in te gaan rommelen. Dit is betrekkelijk vlot gegaan en over de velen schrijffouten maak ik me niet al te druk. Ik heb immer de hoop dat oefening kunst zal baren en stel deze oefening ter uwe beschikking. Mogelijk had u liever gezien dat ik, in plaats van dat 'gewauwel' over de achtergronden van bepaalde faciliteiten en de ongeremde kritiek, meer had geschreven over het werken met bepaalde opties. Als u M2Font echter wel kunt waarderen, dan geef ik u ter overpeinzing dat het een onverbrekelijk aan het ander gebonden zou kunnen/moeten zijn in de zin van een oorzakelijk verband. Mogelijk vind u mijn zinnen te lang en vind u ook dat ze nog het nodige aan oudbollig taalgebruik bevatten. In mijn beroepsgroep is het gebruikelijk dit soort kritiek naast zich neer te leggen en stug door te gaan in de overtuiging goed te doen. Ik hoop dat het feit dat de schrijfkunst niet tot mijn specialisme behoort uw oordeel mag verzachten en dat u plezier mag hebben in het gebruik van M2Font. Marc Marc, Beeldend Kunstenaar ******************************************************************** Deze diskette is samengesteld door de Stichting ST, Postbus 11129, 2301 EC Leiden. Onze bibliotheek van public domain programma's omvat op dit moment (zomer 1994) al meer dan negenhonderd disks. Daarop vindt u programma's op elk gebied, van tekstverwerker en database tot de leukste spelletjes, de fraaiste tekenprogramma's en de handigste utilities. Ook bevat onze bibliotheek een speciale afdeling voor public domain disks met Macintosh software, die te gebruiken zijn onder de ALADIN emulator. Deze MAC-PD serie bevat tot nu toe ongeveer vijfendertig disks. ******************************************************************** U vindt in het twee maandelijks tijdschrift "ST" (Onafhankelijk tijd- schrift van en voor gebruikers van Atari ST computers) een overzicht en een bespreking van de inhoud van de nieuwe public-domain diskettes. Dit tijdschrift bevat tevens een bestelkaart zodat U vlot over de software kunt beschikken. De november/december uitgave 1993 bevat de aanvullin- gen en wijzigingen van dat jaar. In uitgave nov/dec 1992 is een over- zicht van de Public Domain bibliotheek (bijgewerkt tot dec. 1992) te vinden. De Stichting ST geeft ook een speciale PD catalogus disk (database met filenamen) uit. Deze public domain disk is geproduceerd en gedistribueerd door: ************** Stichting ST afd. Software Bakkersteeg 9A 2311 RH LEIDEN ************** Ondanks onze controle komt het af en toe voor dat een diskje niet goed is gecopieerd.Mocht U dit overkomen, aarzel dan niet en stuur de defecte disk aan ons terug. U krijgt dan direct een vervangende disk toegestuurd. ************************************************************************ Teneinde het voor ons mogelijk te maken om productiefouten op te sporen en vervolgens in de toekomst te vermijden, zijn alle disks, geproduceerd door de Stichting ST, voorzien van een groen productienummer. ************************************************************************