mp-figs.mpiv /size: 1243 b    last modification: 2020-07-01 14:35
1%D \module
2%D   [       file=mp-figs.mpiv,
3%D        version=2003.01.15,
4%D          title=\CONTEXT\ \METAPOST\ graphics,
5%D       subtitle=figures,
6%D         author=Hans Hagen,
7%D           date=\currentdate,
8%D      copyright={PRAGMA ADE \& \CONTEXT\ Development Team}]
9%C
10%C This module is part of the \CONTEXT\ macro||package and is
11%C therefore copyrighted by \PRAGMA. See licen-en.pdf for
12%C details.
13
14if known context_figs : endinput ; fi ;
15
16boolean context_figs ; context_figs := true ;
17
18% todo: check defined
19
20def registerfigure(expr name,width,height) =
21    begingroup ;
22    save s ; string s ; s := cleanstring(name) ;
23    scantokens( s & "_width  := " & decimal(width )) ;
24    scantokens( s & "_height := " & decimal(height)) ;
25    endgroup ;
26enddef ;
27
28vardef figuresize(expr name) =
29    save s, p ; string s ; pair p ;
30    s := cleanstring(name) ;
31    scantokens( "p := " & "(" & s & "_width" & "," & s & "_height" & ")" ) ;
32    p
33enddef ;
34
35vardef figurewidth(expr name) =
36    xpart figuresize(name)
37enddef ;
38
39vardef figureheight(expr name) =
40    ypart figuresize(name)
41enddef ;
42
43let figuredimensions = figuresize ; % for old times sake
44
45def naturalfigure(expr name) =
46    externalfigure name xyscaled(figuresize(name))
47enddef ;
48