From fdd3cea7faff04a5b62069ac88895817288a5199 Mon Sep 17 00:00:00 2001 From: Hans Hagen Date: Wed, 15 Feb 2006 17:41:00 +0100 Subject: stable 2006.02.15 17:41 --- metapost/context/base/mp-core.mp | 32 +++++++++++++++++++++++++------- 1 file changed, 25 insertions(+), 7 deletions(-) (limited to 'metapost') diff --git a/metapost/context/base/mp-core.mp b/metapost/context/base/mp-core.mp index eb038163e..7845649fc 100644 --- a/metapost/context/base/mp-core.mp +++ b/metapost/context/base/mp-core.mp @@ -720,14 +720,24 @@ fi ; % fallback - multipar := - - llxy[fpos] -- - lrxy[tpos] -- + % multipar := + % llxy[fpos] -- + % lrxy[tpos] -- + % urxy[tpos] -- + % ulxy[fpos] -- cycle ; + % + % save_multipar (1,1,multipar) ; + + % we need to take the boundingbox because there can be + % more lines and we want a proper rectange + + multipar := + ulxy[fpos] -- urxy[tpos] -- - ulxy[fpos] -- cycle ; + lrxy[fpos] -- + llxy[tpos] -- cycle ; - save_multipar (1,1,multipar) ; + save_multipar (1,1,boundingbox(multipar)) ; else : @@ -963,6 +973,14 @@ fi ; endgroup ; fi ; + % potential safeguard: + + % for i=1 upto nofmultipars : + % if length p <= 4 : + % multipars[i] := boundingbox(multipars[i]) ; + % fi ; + % end ; + % quick hack for gb: one_piece_multi_par := (nofmultipars=1) and (pn=tn) ; @@ -1349,4 +1367,4 @@ def ProcessSyncTask(expr p, c) = fill p withcolor c ; enddef ; -endinput ; \ No newline at end of file +endinput ; -- cgit v1.2.3