diff options
author | Hans Hagen <pragma@wxs.nl> | 2013-08-24 02:40:00 +0200 |
---|---|---|
committer | Hans Hagen <pragma@wxs.nl> | 2013-08-24 02:40:00 +0200 |
commit | 710bc1b1db31b0d14c37c85922350b2b47a8bf8c (patch) | |
tree | 2534f0aa26ce392e8665154578f78c400fc6889f /metapost/context/base/mp-mlib.mpiv | |
parent | d1ee576345717d670c5ee5297222fab3a38762dc (diff) | |
download | context-710bc1b1db31b0d14c37c85922350b2b47a8bf8c.tar.gz |
beta 2013.08.24 02:40
Diffstat (limited to 'metapost/context/base/mp-mlib.mpiv')
-rw-r--r-- | metapost/context/base/mp-mlib.mpiv | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/metapost/context/base/mp-mlib.mpiv b/metapost/context/base/mp-mlib.mpiv index e768efaec..81b09d6dc 100644 --- a/metapost/context/base/mp-mlib.mpiv +++ b/metapost/context/base/mp-mlib.mpiv @@ -264,6 +264,37 @@ vardef installlabel@# (expr type, x, y, offset) = numeric labyf @# ; labyf @# := y ; enddef ; +% we save the plain variant + +vardef plain_thelabel@#(expr p,z) = + if string p : + plain_thelabel@#(rawtextext("\definedfont[" & defaultfont & "]" & p) scaled defaultscale,z) + else : + p shifted (z + labeloffset*laboff@# - (labxf@#*lrcorner p + labyf@#*ulcorner p + (1-labxf@#-labyf@#)*llcorner p)) + fi +enddef; + +def plain_label = % takes two arguments, contrary to textext that takes one + draw plain_thelabel +enddef ; + +let mfun_label = label ; +let mfun_thelabel = thelabel ; + +def useplainlabels = + let label = plain_label ; + let thelabel = plain_thelabel ; +enddef ; + +def usemetafunlabels = + let label = mfun_label ; + let thelabel = mfun_thelabel ; +enddef ; + +plain_compatibity_data := plain_compatibity_data & "save label, thelabel ;" & "useplainlabels ;" ; + +% next comes own own: + vardef thetextext@#(expr p,z) = % interim labeloffset := textextoffset ; if string p : |