From f5db49f15c3f9ec7dba40d6120b89df2cd0030ff Mon Sep 17 00:00:00 2001 From: Hans Hagen Date: Mon, 31 Dec 2007 11:54:00 +0100 Subject: stable 2007.12.31 11:54 --- metapost/context/base/mp-tool.mp | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'metapost') diff --git a/metapost/context/base/mp-tool.mp b/metapost/context/base/mp-tool.mp index 01114bfac..a98f73922 100644 --- a/metapost/context/base/mp-tool.mp +++ b/metapost/context/base/mp-tool.mp @@ -2377,6 +2377,35 @@ def break = exitif true fi ; enddef ; +%D New too: + +primarydef p xstretched w = + (p if (bbwidth (p)>0) and (w>0) : xscaled (w/bbwidth (p)) fi) +enddef ; + +primarydef p ystretched h = + (p if (bbheight(p)>0) and (h>0) : yscaled (h/bbheight(p)) fi) +enddef ; + +primarydef p snapped s = + hide ( if path p : + forever : + exitif (bbheight(p) <= s) and (bbwidth(p) <= s) ; + p := p scaled (1/2) ; + endfor ; + elseif numeric p : + forever : + exitif p <= s ; + p := p scaled (1/2) ; + endfor ; + fi ; ) + p +enddef ; + % done endinput ; + +end + +end -- cgit v1.2.3