我所寻找的是这样的:
pickup pencircle scaled 50 yscaled .5;
draw z1{rotated 40} .. {rotated 60}z3;
这意味着笔一开始旋转了 40 度,但最终在笔划结束时旋转了 60 度。
我正在尝试使用 Metapost 为我正在设计的字体生成字母形式,但不幸的是,如果不使用贝塞尔曲线来描述某些形状可能会很尴尬。
答案1
您可以使用Metapost 从 Metafont 继承的penpos
和penstroke
宏来实现这一点。不幸的是,它们没有记录在通常的手册中,但它们的工作原理如下所述元字体书。下面是一个例子:
prologues := 3;
outputtemplate := "%j%c.eps";
beginfig(1);
z1 = origin;
z2 = 200 right rotated 10;
penpos1(8,40);
penpos2(10,60);
drawoptions(withcolor .7[blue, white]);
penstroke z1e..z2e;
endfig;
end.
这个想法是,对于您定义的每个点(z1、z2 等),您还定义penpos1
、penpos2
等,其中参数是笔尖的宽度和旋转。然后使用penstroke
您想要的路径调用宏。但请注意,您必须写 not,z1..z2
but z1e..z2e
。后缀通过 中的一些宏魔法以正确的顺序e
转换为l
和。 r
penstroke
您可以在中阅读源定义plain.mp
。