Re: dvilj Font Basics?

Walker Pendleton <[email protected]>
Newsgroups gmane.comp.tex.tetex.general
Message-ID <[email protected]>
On 23 Nov 2004, Thomas Esser wrote:
> On Tue, Nov 23, 2004 at 02:15:51PM -0800, Walker Pendleton wrote:
>> /var/cache/fonts/tfm/local/io/io.tfm, and I put io.2600pk in
> ...
>> But dvilj4 doesn't seem to find the io.2600pk file, and I don't
>> know
>
> dvilj4 works with 600dpi. So, I guess that you should generate your io
> font for mode ljfour, not proofmode.
>
> Thomas

My mistake: typo in the email.  The pk file is actually named
"io.2400pk".  In the exercise, calls for mode "localfont", and
"mag=4".  "\mode=ljfour" also produces these "io.2400pk" files,
because 600 * 4 = 2400.

Allow me to explain Knuth's exercise:

The io.mf file from the exercise seems to be included in teTeX's own
texmf/metafont/base/io.mf file.  Knuth instructs you to type a bit
more at the terminal, so you end up with:

    %this first line entered on the terminal:
    \mode=localfont; mag=4; % and then "input io.mf"
    mode_setup;
     em#:=10pt#; cap#:=7pt#;
     thin#:=1/3pt#; thick#:=5/6pt#;
     o#:=1/5pt#;
    define_pixels(em,cap);
    define_blacker_pixels(thin,thick);
    define_corrected_pixels(o);
     curve_sidebar=round 1/18em;
    beginchar("O",0.8em#,cap#,0); "The letter O";
     penpos1(thick,10); penpos2(.1[thin,thick],90-10);
     penpos3(thick,180+10); penpos4(thin,270-10);
     x1l=w-x3l=curve_sidebar; x2=x4=.5w;
     y1=.49h; y2l=-o; y3=.51h; y4l=h+o;
     penstroke z1e{down}..z2e{right}
                ..z3e{up}..z4e{left}..cycle;
     penlabels(1,2,3,4); endchar;
    def test_I(expr code,trial_stem,trial_width) =
     stem#:=trial_stem*pt#; define_blacker_pixels(stem);
     beginchar(code,trial_width*em#,cap#,0); "The letter I";
      penpos1(stem,15); penpos2(.9stem,12); penpos3(stem,10);
      x1=x2=x3=.5w; y1=h; y2=.55h; y3=0; x2l:=1/6[x2l,x2];
      penstroke z1e..z2e{down}..z3e;
      penlabels(1,2,3); endchar; enddef;
    % Here's the terminal-entered bit
    code=100;
    for s=7 upto 10:
     for w=5 upto 8:
      test_I(incr code,s/10,w/20);
    endfor endfor end.

And then you start "tex", & have a conversation with it, at the
terminal, which goes something like:

    [TeX prompts with "**"]testfont
    [TeX chats, you type:]
    io scaled 4000
    [TeX prompts with "*"]\mixture
    [TeX asks for "background character"]O
    [TeX asks for "starting character"]e
    [TeX asks for "ending character"]t
    [TeX prompts with "*"]\end

...which then leaves you with a testfont.dvi that I can't print with
dvilj.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.