summaryrefslogtreecommitdiff
path: root/metapost
diff options
context:
space:
mode:
Diffstat (limited to 'metapost')
-rw-r--r--metapost/context/base/mpiv/mp-grap.mpiv4
-rw-r--r--metapost/context/base/mpiv/mp-mlib.mpiv16
2 files changed, 18 insertions, 2 deletions
diff --git a/metapost/context/base/mpiv/mp-grap.mpiv b/metapost/context/base/mpiv/mp-grap.mpiv
index 4fd8ee5bd..313adfda7 100644
--- a/metapost/context/base/mpiv/mp-grap.mpiv
+++ b/metapost/context/base/mpiv/mp-grap.mpiv
@@ -160,8 +160,8 @@ enddef ;
% New :
-save graph_background ; color graph_background ; % if defined, fill the frame.
-save graph_close_file ; boolean graph_close_file ; graph_close_file = false ;
+color graph_background ; % if defined, fill the frame.
+boolean graph_close_file ; graph_close_file = false ;
def begingraph(expr w, h) =
begingroup
diff --git a/metapost/context/base/mpiv/mp-mlib.mpiv b/metapost/context/base/mpiv/mp-mlib.mpiv
index 6daf5672e..9a4446560 100644
--- a/metapost/context/base/mpiv/mp-mlib.mpiv
+++ b/metapost/context/base/mpiv/mp-mlib.mpiv
@@ -1026,6 +1026,8 @@ vardef mfun_do_outline_text_flush (expr kind, n, x, y) (text t) =
mfun_do_outline_text_r (n, x, y) (t)
elseif kind = "p" :
mfun_do_outline_text_p (n, x, y) (t)
+ elseif kind = "u" :
+ mfun_do_outline_text_u (n, x, y) (t)
else :
mfun_do_outline_text_n (n, x, y) (t)
fi ;
@@ -1049,6 +1051,18 @@ vardef mfun_do_outline_text_f (expr n, x, y) (text t) =
endfor ;
enddef ;
+vardef mfun_do_outline_text_u (expr n, x, y) (text t) =
+ mfun_do_outline_n := 0 ;
+ for i=t :
+ mfun_do_outline_n := mfun_do_outline_n + 1 ;
+ if mfun_do_outline_n = n :
+ fillup i shifted(x,y) mfun_do_outline_options_f
+ else :
+ nofill i shifted(x,y)
+ fi ;
+ endfor ;
+enddef ;
+
vardef mfun_do_outline_text_d (expr n, x, y) (text t) =
for i=t :
draw i shifted(x,y) mfun_do_outline_options_d ;
@@ -1154,6 +1168,8 @@ vardef outlinetext@# (expr t) text rest =
mfun_do_outline_text_set_d rest ;
elseif kind = "b" :
mfun_do_outline_text_set_b rest ;
+ elseif kind = "u" :
+ mfun_do_outline_text_set_f rest ;
elseif kind = "r" :
mfun_do_outline_text_set_r rest ;
elseif kind = "p" :