长亭外,古道边……现在开始回忆。
起初,在 card-env.tex 里,我定义了一个叫作 foo 的 overlay,
\defineoverlay
[foo]
[\uniqueMPgraphic{绘图代码}]
将它作为一个叫作 canvas 的框框的背景,
\defineframed
[canvas]
[frame=off,
width=\textwidth,
height=\textheight,
framecolor=darkred,
rulethickness=.25em,
location=lohi,
empty=yes,
background=foo]
然后,在任何一份 ConTeXt 源文件里,例如在 bar.tex 里,载入 card-env.tex,
\environment card-env
便可使用这个背景为叫作 foo 的 overlay 的框框 canvas 了。
为了让 canvas 能够在页面居于正中,我用了标准的 makeup:
\startstandardmakeup[align=middle]
\strut\canvas{涂鸦}\strut
\stopstandardmakeup
由于那个叫作 foo 的 overlay,它实质上是一幅 MetaFun 代码绘制的图形,即
\uniqueMPgraphic{绘图代码}
之后,我在这幅 MetaFun 代码绘图区孜孜不倦:
\startuniqueMPgraphic
% 涂鸦
% 创造蜗牛
% 创造山海经地理学
% 创造名门
% 让 Lua 高挂在夜空
\stopuniqueMPgraphic
至此,MetaPost 编程以及一部分 MetaFun 宏的用法,我……我们已经很熟悉了。倘若还有更多的追求,那为什么不阅读:
绘画是一门技艺。使用 MetaFun 绘画的技艺,我自认为在技术方面我已经给出了入门性质的全面的指引,但艺术方面,很抱歉,我在这方面的潜质目前尚未被任何人包括我自己发现。
MetaPost 不擅长创造人类数万年来用真正的画笔创造的那样的作品。但是反过来,持有真正的画笔的人类也不擅长创造 MetaPost 能够创造出来的那样的作品,如同人类下围棋最厉害的人,也难以战胜一个并不是真的会下围棋的程序。
知其白,守其黑。知其雄,守其雌……大路朝天,各走一边,芳草碧连天。
网友评论