% Dingbat characters as of 3-3-89 by Doug Henderson % To be run with plain.bas. % Last modified on 3-27-89 font_size=10pt#; % make the pxl or pk files be in ...\pixel\pxl1500 def clear_all = clearit; clearxy; enddef; %%% % turn pt,in,cm etc. into pixel values %%% mode_setup; %%% % define your variables here %%% string s[]; picture p[]; numeric anchor_scale; anchor_scale=10; path the_anchor,ring_of_anchor,tilted_anchor,tilted_ring; % how much to tilt the anchor numeric akilter; akilter:=20; picture holdit,holdem,flower_x,flower_y; path collar, thumb, index_finger, the_bird, ring_finger, pinky_finger ; a#:=12pt#; b#:=12pt#; glyph_width#:=10pt#; glyph_height#:=7pt#; uniform_square#:=20pt#; triangle_size#:=12pt#; check_width#:=10pt#; check_height#:=10pt#; check_depth#:=0pt#; dash#:=2pt#; %flu_width#:=31pt#; %flu_height#:=15pt#; flu_width#:=62pt#; flu_height#:=30pt#; anchor_height#:=150pt#/anchor_scale; anchor_width#:=130pt#/anchor_scale; anchor_depth#:=0pt#; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Very thin weight stroke for flouron (not advised for < 600dpi) %thinish#:=.25pt#; %thinthick#:=.45pt#; %thickish#:=.75pt#; % Normal weight stroke for flouron thinish#:=.5pt#; thinthick#:=1pt#; thickish#:=1.5pt#; % Heavy weight stroke for flouron %thinish#:=1pt#; %thinthick#:=2pt#; %thickish#:=2.5pt#; % Strokes widths for the flower from 1-12 (= 1 pixel - 4.5pt) flower_one#:=.25; flower_two#:=.5; flower_three#:=.5pt#/1.5; flower_four#:=.5pt#/1.5; flower_five#:=1pt#/1.5; flower_six#:=1.5pt#/1.5; flower_seven#:=2pt#/1.5; flower_eight#:=2.5pt#/1.5; flower_nine#:=3pt#/1.5; flower_ten#:=3.5pt#/1.5; flower_eleven#:=4pt#/1.5; flower_twelve#:=4.5pt#/1.5; hand_scale=6; hand_width#:=110pt#/hand_scale; hand_height#:=80pt#/hand_scale; hand_depth#:=0pt#; %%% % define your pixels here, do this for each variable defined above %%% define_pixels(glyph_width,glyph_height,uniform_square,triangle_size); define_pixels(check_width,check_height,check_depth,dash,thinish,thickish); define_pixels(thinthick,flu_width,flu_height,a,b); define_pixels(flower_one,flower_two,flower_three,flower_four,flower_five); define_pixels(flower_six,flower_seven,flower_eight,flower_nine,flower_ten); define_pixels(flower_eleven,flower_twelve); define_pixels(hand_width,hand_height,hand_depth,dash); define_pixels(anchor_height,anchor_weight,anchor_depth); %%% % define a macro which pauses until the user hits the return key %%% def whoa= s0:= readstring; enddef; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Define all the pens we use %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% pickup pensquare scaled .2pt; smallpen:=savepen; pickup pensquare scaled .4pt; bigpen:=savepen; pickup pensquare scaled .8pt; bigger:=savepen; pickup pencircle scaled .1pt; razorpen:=savepen; pickup pencircle scaled 2pt; bigdotpen:=savepen; pickup pencircle scaled 1.1pt; lildotpen:=savepen; pickup pensquare scaled 1.6pt; chunkypen:=savepen; pickup pencircle scaled .35pt; ringpen:=savepen; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Let the dingbat characters begin %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Anchor for TUG dingbat contest"; beginchar("O",anchor_width#,anchor_height#,anchor_depth#); %%% % x variables %%% x1=8/130w; % x1 x2=6/130w; % x2 x3=13/130w; % x3 x4=x25=x26=x31=30/130w; % x4 x25 x26 x31 x5=x22=60/130w; % x5 x6=x14=x18=x19=90/130w; % x6 x14 x18 x19 x27=x28=x45=54/130w; % x27 x28 x45 x17=x35=x56=66/130w; % x17 x35 x56 x7=107/130w; % x7 x8=114/130w; % x8 x10=112/130w; % x10 x12=94/130w; % x12 x13=99/130w; % x13 x15=72/130w; % x15 x16=67/130w; % x16 x20=70/130w; % x20 x21=65/130w; % x21 x23=55/130w; % x23 x24=50/130w; % x24 x29=53/130w; % x29 x30=48/130w; % x30 x32=21/130w; % x32 x33=26/130w; % x33 %%% % y variables %%% y1=y10=65/150h; % y1 y10 y2=y8=43/150h; % y2 y8 y3=y7=45/150h; % y3 y7 y4=y6=25/150h; % y4 y6 y5=13/150h; % y5 y21=y23=130/150h; % y21 y23 y22=136/150h; % y22 y45=y56=20/150h; % y45 y56 y18=y26=y27=y35=118/150h; % y18 y26 y27 y35 y19=y20=y24=y25=124/150h; % y19 y20 y24 y25 y17=y28=40/150h; % y17 y28 y16=y29=36/150h; % y16 y29 y15=y30=35/150h; % y15 y30 y14=y31=38/150h; % y14 y31 y13=y32=50/150h; % y13 y32 y12=y33=54/150h; % y12 y33 %%% % path assignments %%% the_anchor = z25--z26--z27--z28 & z28..z29..z31..z32 & z32--z33--z1--z2--z3 & z3..z4..z45 & z45--z5--z56 & z56..z6..z7 & z7--z8--z10--z12--z13 & z13..z14..z16..z17 & z17--z35--z18--z19--cycle; ring_of_anchor = z20..z22..z24; tilted_anchor = the_anchor rotated akilter; tilted_ring = ring_of_anchor rotated akilter; %%% % draw the character, show how ring meets anchor %%% pickup razorpen; fill the_anchor; pickup ringpen; draw ring_of_anchor; %%% % after clearing previous path (upright anchor) fill the tilted path %%% %clearit; %fill tilted_anchor; %draw tilted_ring; %showit; %message"When thru viewing, press Enter to continue"; %whoa; labels(range 1 thru 4,45,5,56,range 6 thru 19); labels(range 20 thru 33,35); endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Hand pointer to the left"; beginchar("N",hand_width#,hand_height#,hand_depth#); %%% % x variables %%% x1=9.5/110w; % x1 x2=15/110w; % x2 x3=x6=20/110w; % x3 x6 x4=19/110w; % x4 x5=x8=16/110w; % x5 x8 x7=21/110w; % x7 x9=10.5/110w; % x8 x10=5/110w; % x10 x11=42.5/110w; % x11 x1112=61/110w; % x1112 (a point between 11 and 12) x12=67/110w; % x12 x13=x24=70/110w; % x13 x24 x14=57.5/110w; % x14 x15=76/110w; % x15 x16=77/110w; % x16 x17=58/110w; % x17 x18=82.5/110w; % x18 x19=83/110w; % x19 x20=57/110w; % x20 x21=94/110w; % x21 x22=102/110w; % x22 x23=90/110w; % x23 x25=43.5/110w; % x25 x26=62.5/110w; % x26 x27=75/110w; % x27 x28=74/110w; % x28 %%% % y variables %%% y1=y24=63/80h; % y1 y24 y2=y25=64/80h; % y2 y25 y3=63.5/80h; % y3 y4=59/80h; % y4 y5=y17=40/80h; % y5 y17 y6=18/80h; % y6 y7=13/80h; % y7 y8=12.5/80h; % y8 y9=13.5/80h; % y9 y10=39.5/80h; % y10 y11=15/80h; % y11 y1112=17.5/80h; % y1112 (a point between 11 and 12) y12=20/80h; % y12 y13=27.5/80h; % y13 y14=28/80h; % y14 y15=32/80h; % y15 y16=39/80h; % y16 y18=44/80h; % y18 y19=y21=50/80h; % y19 y20=51/80h; % y20 y22=55/80h; % y22 y23=62/80h; % y23 y26=71/80h; % y26 y27=72/80h; % y27 y28=67/80h; % y28 collar=z1..z2..z3 & z3..z4..z5..z6..z7 & z7..z8..z9 & z9..z10..z1; thumb=z25..z26..z27..z28..z24; index_finger=z4..z25..z24..z23..z22..z21..z19..z20; the_bird=z17--z16..z18..z19; ring_finger=z14--z13..z15..z16; pinky_finger=z6..z11..z1112 & z1112..z12..z13; pickup razorpen; draw collar; draw thumb; draw index_finger; draw the_bird; draw ring_finger; draw pinky_finger; labels(range 1 thru 11,1112,range 12 thru 28); endchar; "Flowery flouron"; beginchar("J",flu_width#,flu_height#,0); % first stroke = x1 thru x8 x1=.02w; x2=.10w; x3=.23w; x4=.38w; x5=.51w; x6=.73w; x7=.85w; x8=x14=x19=.98w; % second stroke = x9 thru x14 x9=.22w; x10=.17w; x11=.165w; x12=.20w; x13=.58w; % x14=x8=x19 % third stroke = x15 thru x19 x15=.32w; x16=.46w; x17=.65w; x18=.82w; % x19=x8=x14 % first stroke = y1 thru y8 y1=.05h; y2=.19h; y3=.26h; y4=.24h; y5=.18h; y6=.13h; y7=.14h; y8=y14=y19=.19h; % second stroke = y9 thru y14 y9=.99h; y10=.92h; y11=.85h; y12=.71h; y13=.32h; % y14=y8 % third stroke = y15 thru y19 y15=.67h; y16=.74h; y17=.71h; y18=.48h; % pen positions for stroke 1 penpos1(flower_one,135); penpos2(flower_five,135); penpos3(flower_nine,90); penpos4(flower_twelve,90); penpos5(flower_ten,67); penpos6(flower_five,85); penpos7(flower_four,90); penpos8(flower_three,135); % pen positions for stroke 2 penpos9(flower_one,135); penpos10(flower_seven,180); penpos11(flower_eight,180); penpos12(flower_seven,210); penpos13(flower_six,210); penpos14(flower_three,270); % pen positions for stroke 3 penpos15(flower_one,115); penpos16(flower_seven,100); penpos17(flower_nine,70); penpos18(flower_five,45); penpos19(flower_three,45); % now draw our three strokes penstroke z1e..z2e..z3e..z4e..z5e..z6e..z7e..z8e; penstroke z9e...z10e...z11e...z12e{dir 315}...z13e...z14e; penstroke z15e..z16e..z17e..z18e{dir 315}..z19e; penlabels(range 1 thru 19); flower_x:=currentpicture; endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Right flower"; beginchar("K",flu_width#,flu_height#,0); currentpicture:=currentpicture+flower_x; currentpicture:=currentpicture reflectedabout((.5[0,0],1),(.5[0,0],0)); currentpicture:=currentpicture shifted (w,0); flower_y:=currentpicture; endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Flipped left flower--matches J"; beginchar("L",flu_width#,flu_height#,0); currentpicture:=currentpicture+flower_y; currentpicture:=currentpicture reflectedabout((0,.5[0,h]),(1,.5[0,h])); endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Flipped right flower--matches K"; beginchar("M",flu_width#,flu_height#,0); currentpicture:=currentpicture+flower_x; currentpicture:=currentpicture reflectedabout((0,.5[0,h]),(1,.5[0,h])); endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "DLA satelite dish"; beginchar("I",a#,b#,0); numeric zero; zero=0; % define the coordinates we will work with here z1=origin; z2=(a,zero); z3=(a,b/5); z4=(zero,b/5); x5=3/10(x2-x1); y5=y4=y6; x6=7/10(x2-x1); x7=4/10(x2-x1); y7=y8=y9=3/10(b); x8=6/10(x2-x1); x9=x10=1/2(x2-x1); x11=1/10(x2-x1); y11=9/10(b); x12=3/10(x2-x1); y12=.53(b); x13=9/10(x2-x1); y13=5/10(b); y10=4.5/10(b); % draw the bottom platform of the dish pickup pensquare xscaled .5pt yscaled .5pt filldraw z1--z2--z3--z4--cycle; % draw the base of the dish, which sits on top of the bottom platform pickup penrazor; filldraw z5--z7--z8--z6--cycle; % draw the arm holding the dish, which sits on the base of the dish pickup penrazor xscaled .5pt; draw z9--z10; % draw the dish now pickup pencircle xscaled .5pt yscaled .5pt; draw z11..z12..z13; % dish mod, complete the dish top % draw z11--z13; labels(range 1 thru 13); endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Left flouron"; beginchar("E",flu_width#,flu_height#,0); pickup pencircle; x1=.23w; x2=.10w; x3=.05w; x4=.10w; x5=.19w; x6=.25w; x7=.26w; x8=.20w; x9=.22w; x10=.26w; x11=.48w; x12=.62w; x13=.71w; x14=.84w; x15=.90w; x16=.97w; x17=.93w; x18=.84w; y1=.07h; y2=.07h; y3=.33h; y4=.57h; y5=.65h; y6=.61h; y7=.53h; y8=.55h; y9=.75h; y10=.80h; y11=.67h; y12=.56h; y13=.53h; y14=.55h; y15=.60h; y16=.80h; y17=.92h; y18=.87h; penpos1(thinish,270); penpos2(thinish,225); penpos3(thickish,180); penpos4(thinish,135); penpos5(thinish,90); penpos6(thinish,45); penpos7(thinish,0); penpos8(thinish,225); penpos9(thinish,135); penpos10(thinish,90); penpos11(thinish,45); penpos12(thinish,45); penpos13(thinish,90); penpos14(thinthick,135); penpos15(thinthick,135); penpos16(thinthick,180); penpos17(thinish,225); penpos18(thinish,270); penstroke z1e..z2e..z3e..z4e..z5e..z6e..z7e..z8e..z9e..z10e..z11e..z12e.. z13e..z14e..z15e..z16e..z17e..z18e; penlabels(range 1 thru 18); holdit:=currentpicture; endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Right flouron"; beginchar("F",flu_width#,flu_height#,0); currentpicture:=currentpicture+holdit; % currentpicture:=currentpicture reflectedabout((.5[l,r],1),(.5[l,r],0)); currentpicture:=currentpicture reflectedabout((.5[0,0],1),(.5[0,0],0)); currentpicture:=currentpicture shifted (w,0); holdem:=currentpicture; endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Flipped left flouron--matches F"; beginchar("G",flu_width#,flu_height#,0); currentpicture:=currentpicture+holdem; currentpicture:=currentpicture reflectedabout((0,.5[0,h]),(1,.5[0,h])); endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Flipped right flouron--matches E"; beginchar("H",flu_width#,flu_height#,0); currentpicture:=currentpicture+holdit; currentpicture:=currentpicture reflectedabout((0,.5[0,h]),(1,.5[0,h])); endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Check mark"; beginchar("D",check_width#,check_height#,check_depth#); pickup pencircle; y1=.4h; y2=.15h; y3=.85h; x1l=0+eps; x2=1/3w; x3=.85w; penpos1(dash,45); penpos2(dash,90); penpos3(dash,170); penstroke z1e--z2e--z3e; penlabels(1,2,3); endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Square (filled) with dots border design"; beginchar("C",triangle_size#,triangle_size#,0); x1=x3=good.x(1/2triangle_size); x2=good.x(1/10triangle_size); x4=good.x(9/10triangle_size); x5=x6=good.x(3/10triangle_size); x7=x8=good.x(7/10triangle_size); x9=x10=good.x(2/10triangle_size); x12=x11=good.x(8/10triangle_size); y1=good.y(1/10triangle_size); y9=y12=good.y(2/10triangle_size); y5=y8=good.y(3/10triangle_size); y2=y4=good.y(1/2triangle_size); y6=y7=good.y(7/10triangle_size); y10=y11=good.y(8/10triangle_size); y3=good.y(9/10triangle_size); pickup razorpen; fill z1..z5..z2 & z2..z6..z3 & z3..z7..z4 & z4..z8..z1..cycle; pickup bigdotpen; drawdot z9; drawdot z12; drawdot z10; drawdot z11; labels(range 1 thru 12); endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Square (unfilled) with dots border design"; beginchar("B",triangle_size#,triangle_size#,0); x1=x3=good.x(1/2triangle_size); x2=good.x(1/10triangle_size); x4=good.x(9/10triangle_size); x5=x6=good.x(3/10triangle_size); x7=x8=good.x(7/10triangle_size); x9=x10=good.x(2/10triangle_size); x12=x11=good.x(8/10triangle_size); y1=good.y(1/10triangle_size); y9=y12=good.y(2/10triangle_size); y5=y8=good.y(3/10triangle_size); y2=y4=good.y(1/2triangle_size); y6=y7=good.y(7/10triangle_size); y10=y11=good.y(8/10triangle_size); y3=good.y(9/10triangle_size); pickup bigpen; draw z1..z5..z2; draw z2..z6..z3; draw z3..z7..z4; draw z4..z8..z1; pickup bigdotpen; drawdot z9; drawdot z12; drawdot z10; drawdot z11; pickup lildotpen; erase drawdot z9; erase drawdot z12; erase drawdot z10;erase drawdot z11; labels(range 1 thru 12); endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Z border design"; beginchar("Z",glyph_width#,glyph_height#,0); pickup bigger; % define our x values for the border design x1=x6=x7=good.x(glyph_width); x4=6/8good.x(glyph_width); x8=2/8good.x(glyph_width); x2=x3=x5=0; % design our y values for the border design y1=y2=0; y7=y8=1/3good.y(glyph_height); y3=y4=2/3good.y(glyph_height); y5=y6=good.y(glyph_height); draw z5--z6--z7--z8; draw z1--z2--z3--z4; %draw bot z5--z3; %draw top z1--z7; labels(range 1 thru 8); endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "S border design"; beginchar("S",glyph_width#,glyph_height#,0); pickup bigger; % define our x values for the border design x1=x6=x7=0; x2=x3=x8=good.x(glyph_width); x4=good.x(2/8glyph_width); x5=good.x(6/8glyph_width); y1=y2=0; y5=y6=good.y(1/3glyph_height); y3=y4=good.y(2/3glyph_height); y7=y8=good.y(glyph_height); draw z1--z2--z3--z4; draw z5--z6--z7--z8; %draw top z1--z6; %draw bot z8--z3; cullit; labels(range 1 thru 8); endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Overlapping thick\thin line border design--- character 1 (top-left)"; beginchar("a",uniform_square#,uniform_square#,0); x1=x2=good.x(1/10uniform_square); x3=x4=good.x(4/10uniform_square); x5=x8=good.x(uniform_square); x6=x7=good.x(2/10uniform_square); y1=y6=good.y(0); y2=y3=good.y(6/10uniform_square); y7=y8=good.y(8/10uniform_square); y4=y5=good.y(9/10uniform_square); pickup chunkypen; draw z1--z2--z3--z4--z5; pickup bigpen; draw z6--z7--z8; p1:=currentpicture; labels(range 1 thru 8); endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Overlapping thick\thin line border design--- character 2 (top-middle)"; beginchar("b",uniform_square#,uniform_square#,0); x1=x3=good.x(0); x2=x4=good.x(uniform_square); y1=y2=good.y(9/10uniform_square); y3=y4=good.y(8/10uniform_square); pickup chunkypen; draw z1--z2; pickup bigpen; draw z3--z4; p2:=currentpicture; labels(1,2,3,4); endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Overlapping thick\thin line border design--- character 3 (top-right)"; beginchar("c",uniform_square#,uniform_square#,0); x1=x6=good.x(0); x2=x3=good.x(6/10uniform_square); x7=x8=good.x(8/10uniform_square); x4=x5=good.x(9/10uniform_square); y1=y2=good.y(9/10uniform_square); y6=y7=good.y(8/10uniform_square); y3=y4=good.y(6/10uniform_square); y5=y8=good.y(0); pickup chunkypen; draw z1--z2--z3--z4--z5; pickup bigpen; draw z6--z7--z8; p3:=currentpicture; labels(range 1 thru 8); endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Overlapping thick\thin line border design--- character 4 (middle-left)"; beginchar("d",uniform_square#,uniform_square#,0); x1=x2=good.x(1/10uniform_square); x3=x4=good.x(2/10uniform_square); y1=y3=good.y(0); y2=y4=good.y(uniform_square); pickup chunkypen; draw z1--z2; pickup bigpen; draw z3--z4; p4:=currentpicture; labels(1,2,3,4); endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Overlapping thick\thin line border design--- character 5 (middle-right)"; beginchar("e",uniform_square#,uniform_square#,0); currentpicture:=currentpicture + p4; currentpicture:=currentpicture reflectedabout((.5[0,0],0),(.5[0,0],1)); endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Overlapping thick\thin line border design--- character 6 (bottom-left)"; beginchar("f",uniform_square#,uniform_square#,0); currentpicture:=currentpicture + p1; currentpicture:=currentpicture reflectedabout((0,.5[0,uniform_square]),(1,.5[0,uniform_square])); endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Overlapping thick\thin line border design--- character 7 (bottom-middle)"; beginchar("g",uniform_square#,uniform_square#,0); currentpicture:=currentpicture + p2; currentpicture:=currentpicture reflectedabout((0,.5[0,uniform_square]),(1,.5[0,uniform_square])); endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "Overlapping thick\thin line border design--- character 8 (bottom-right)"; beginchar("h",uniform_square#,uniform_square#,0); currentpicture:=currentpicture + p3; currentpicture:=currentpicture reflectedabout((0,.5[0,uniform_square]),(1,.5[0,uniform_square])); endchar; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% bye