ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
* \definefont
@ 2000-11-02  1:02 Denis B. Roegel
  2000-11-02 10:15 ` \definefont Hans Hagen
  0 siblings, 1 reply; 2+ messages in thread
From: Denis B. Roegel @ 2000-11-02  1:02 UTC (permalink / raw)
  Cc: roegel

Another example of font problem is given below.
First, as in the previous examples, if I put `pos',
`ppl', or `pcr' in \setupbodyfont, the second run of pdfetex 
gets stuck. Second, how do I access \RotFont below?
\definefont[RotFont][RegularBold] doesn't make
it accessible since I run into an error.
Finally, this example (from the metafun manual
page 141, September 25 version) uses \vbox\bgroup...\egroup.
Why not \vbox{...} which seems to work too?

Thanks,

Denis

\setupcolors[state=start]
\starttext

\startMPenvironment
%\setupbodyfont[loc,mt,ppl,pcr,10pt]
%\setupbodyfont[loc,mt,10pt]
\definefont[RotFont][RegularBold]
\stopMPenvironment

% doesn't work if \bfd is replaced by \RotFont

\def\processrotationtoken#1%
  {\appendtoks#1\to\MPtoks
   \setbox\MPbox=\hbox{\bfd\the\MPtoks}%
   \startMPdrawing
     n:=n+1;len[n]:=\the\wd\MPbox;
   \stopMPdrawing
   \startMPdrawing[1]
     pic[n]:=btex \bfd#1 etex;
   \stopMPdrawing}

\def\rotatetokens#1#2#3#4% delta extra radius tokens
  {\vbox\bgroup
   \MPtoks\emptytoks
   \resetMPdrawing
   \startMPdrawing
     picture pic[];
     numeric wid,len[],rot;
     numeric delta,extra,radius,n,r;
     len[0]:=n:=0;
     delta:=#1;extra:=#2;radius:=#3;
    \stopMPdrawing
    \handletokens#4\with\processrotationtoken
    \startMPdrawing
      r:=len[n]/Pi;
      for i=1 upto n:
        wid:=abs(xpart lrcorner pic[i]-xpart llcorner pic[i]);
        rot := extra+delta-((len[i]-.5wid)/len[n])*(180+2delta);
        draw pic[i]
          rotatedaround (origin,-270) shifted (-r-radius,
           ypart-.5[ulcorner pic[i],llcorner pic[i]])
          rotatedaround (origin,rot);
      endfor;
    \stopMPdrawing
    \MPdrawingdonetrue
    \getMPdrawing
    \resetMPdrawing
    \egroup} 

\startcombination[3*1]
  {\rotatetokens {0} {0}{0}{Does it work ok?}} {A}
  {\rotatetokens {20} {0}{0}{Does it work ok?}} {B}
  {\rotatetokens {20} {30}{0}{Does it work ok?}} {C}
\stopcombination

\stoptext


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2000-11-02 10:15 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-11-02  1:02 \definefont Denis B. Roegel
2000-11-02 10:15 ` \definefont Hans Hagen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).