[NTG-context] MetaFun labels and xsized
Hans Hagen
j.hagen at xs4all.nl
Fri Dec 25 22:09:08 CET 2020
On 12/25/2020 6:36 PM, Fabrice L wrote:
> Hi,
>
>> Le 25 déc. 2020 à 12:30, Pablo Rodriguez <oinos at gmx.es> a écrit :
>>
>> Dear list,
>>
>> I have this minimal MetaFun sample (the only one in my real document):
>>
>> \setupbodyfont[pagella]
>> \starttext
>> \startMPcode
>> pair a ; a := (1, 1) ;
>> pair b ; b := (1, 10) ;
>> pair c ; c := (10, 10) ;
>> pair d ; d := (10, 1) ;
>> draw (a--b--c--d--a) xsized .75TextWidth;
>>
>> draw thelabel.lft("α",a) ;
>> draw thelabel.lft("β",b) ;
>> draw thelabel.top("γ",c) ;
>> draw thelabel.rt("δ",d) ;
>> \stopMPcode
>> \stoptext
>>
>> Is there a way to relate adapt the labels to the xsized positions used?
>
> I’m sure somebody could find a more elegant solution, but here is a simple one:
>
> \setupbodyfont[pagella]
> \starttext
> \startMPcode
> pair a ; a := (1, 1) ;
> pair b ; b := (1, 10) ;
> pair c ; c := (10, 10) ;
> pair d ; d := (10, 1) ;
> path square ;
> square := (a--b--c--d--cycle) xsized .75TextWidth ;
>
> draw square xsized .75TextWidth;
>
> draw thelabel.lft("α",point 0 of square) ;
> draw thelabel.lft("β",point 1 of square) ;
> draw thelabel.top("γ",point 2 of square) ;
> draw thelabel.rt("δ",point 3 of square) ;
> \stopMPcode
> \stoptext
>
> Fabrice.
>
\startMPcode
path p ; p := (
( 1, 1) --
( 1, 5) --
(10, 10) --
(14, 4) --
cycle) xsized .75TextWidth;
draw p ;
freelabel("\strut α",point 0 of p,center p) ;
freelabel("\strut β",point 1 of p,center p) ;
freelabel("\strut γ",point 2 of p,center p) ;
freelabel("\strut δ",point 3 of p,center p) ;
\stopMPcode
-----------------------------------------------------------------
Hans Hagen | PRAGMA ADE
Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-----------------------------------------------------------------
More information about the ntg-context
mailing list