Mojca Miklavec wrote:
Hello,
A while back I wrote this dirty code (read as: hack) in attachment that allows multiple optional parameters in metapost functions, for example:
draw_text("text"); draw_text(angle(30),"text"); draw_text(angle(30),align(right),"text"); draw_text(align(center),"text");
The code compiles fine with mkii, but not with mkiv. I would be grateful for any hints about how to fix this.
I get the error:
mplib | mp terminal: ! Missing `,' has been inserted. <to be read again> , textext->...etextext(SUFFIX2)(rawtextext((EXPR3)), origin)else:thetextext(SUF...
dummy->begingroup(TEXT2) endgroup gp_put_text->...tt)=tt.enddef;pict:=dummy((TEXT1)) ;let,=@;endgroup;draw(gp_t... <*> ...m, 1cm), angle(30), textext.drt("rotated")) ; ; ! An expression can't begin with `;'. <inserted text> 0 <to be read again> , textext->...etextext(SUFFIX2)(rawtextext((EXPR3)), origin)else:thetextext(SUF...
Thanks a lot, Mojca
(The code is taken out of http://dl.contextgarden.net/modules/t-gnuplot/metapost/context/third/gnuplot... and I'm slowly plucking up my courage to port the code to mkiv.)
\startMPcode def fuzzy(expr a, b, c) = draw image( draw textext(c) ; currentpicture := currentpicture rotatedaround(center currentpicture,b) shifted a ; ) ; enddef ; fuzzy((1cm,1cm), 30, "rotated") ; \stopMPcode ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------