Dear Emanuel,
> Le 2 déc. 2023 à 12:08, Emanuel Han via ntg-context <ntg-context@ntg.nl> a
> écrit :
>
> Hi Mikael,
>
> here's a very simple mwe for the label(textext()) issue. On page 1, the text
> "Word 1" should be drawn in position z1. On page 2, the same text in the same
> position should be visible, and the text "Mot 2" in position p2 should be
> added. And so on.
>
> \startMPinclusions
>
> picture p[];
> path TheFrame ;
> TheFrame := fullsquare scaled 5in ;
>
> z1 = (60,40);
> z2 = (40,90);
> z3 = (10,70);
>
> p1:=image(
> label(textext("Word 1"), z1);
> );
>
> p2:=image(
> label(textext("Mot 2"), z2);
> );
>
> p3:=image(
> label(textext("Parola 3"), z3);
> );
>
> \stopMPinclusions
>
> \starttext
>
> \dorecurse{3}{ % Frame
> \startMPpage[pagestate=start]
> currentime := #1 ;
> % Just for learning :
> draw TheFrame withpen pencircle scaled .1in withcolor magenta ;
> draw textext("T="&decimal(currentime)) scaled 2 shifted(0,2in) withcolor
> magenta ;
> for k=1 upto currentime: draw p[k]; endfor
> setbounds currentpicture to TheFrame ;
>
> desiredformat := 1080;% In pixels (will be converted by default at 72dpi)
> currentpicture := currentpicture xysized (desiredformat ,desiredformat );
>
> \stopMPpage
> }
>
> \stoptext
>
> On Dez. 2 2023, at 5:22 pm, Mikael Sundqvist <mic...@gmail.com> wrote:
> Hi Emanuel,
>
> I am not sure I understand your question, and since you use fonts that
> i do not have, I cannot test your example as is. But, maybe, if you
> want to redraw a picture, you can do
>
> addto currentpicture also p1;
>
> where you want it.
>
> /Mikael
>
> PS For the text thing, I did not get it. Could one have a _very
> simple_ example showing only that problem and no other problem?
>
> On Sat, Dec 2, 2023 at 12:58 PM fv leung <fvle...@gmail.com> wrote:
> >
> > You didn't specify the color of path A in p2 and p4. So it's drawn in black.
> > The other issue, I can't help.
> >
> > Emanuel Han via ntg-context <ntg-context@ntg.nl> 於 2023年12月2日 週六 下午7:23寫道:
> >>
> >> So is there a way to circumvent these issues? Or an explanation for this
> >> behavior, so that I can try to find a solution by myself?
> >>
> >> Thanks
> >> Emanuel
> >>
> >> On Nov. 29 2023, at 12:25 pm, Emanuel Han via ntg-context
> >> <ntg-context@ntg.nl> wrote:
> >>
> >> Dear Aditya and Fabrice,
> >> thanks for your responses.
> >>
> >> I included some of Fabrice's code into mine for testing purpose, and
> >> indeed the multipage works now.
> >> What is bizarre is that issues appear now that didn't appear before:
> >>
> >> Path A is drawn with color red on page 1, and in color black on all
> >> following pages, while it should stay red.
> >> textext(<text>, <pair>) is overwriting <text> with
> >> "T="&decimal(currentime) which has been used previously in textext()
> >> before the for k=1 endfor loop. This overwriting happens only for the
> >> first textext() which occurs inside the for k=1 endfor loop. All other
> >> textext() inside the for k=1 endfor loop are not drawn at all. If the line
> >> « draw textext("T="&decimal(currentime)) scaled 2 shifted(0,2in) withcolor
> >> magenta ; » is commented out, the first textext() inside the for k=1
> >> endfor loop is not drawn neither. It must be an issue with textext(),
> >> because when I replace textext() by lmt_outline[], the text is drawn.
> >>
> >> Adjusted mwe:
> >>
> >> \enableregime[utf] % enable unicoded input
> >>
> >> \definefontfamily [RomanFont] [rm] [calluna]
> >>
> >> \definefontfamily [KoreanFont] [rm] [applemyungjo]
> >>
> >> \definefontfamily [JapaneseFont] [rm] [hannotatesc]
> >>
> >> \definefontfeature
> >> [fea]
> >> [mode=node,language=dflt,script=arab,
> >> init=yes,
> >> medi=yes,
> >> fina=yes,
> >> isol=yes,
> >> calt=yes,
> >> rlig=yes,
> >> tlig=yes,
> >> trep=yes,
> >> curs=yes,
> >> kern=yes,
> >> mark=yes
> >> ]
> >>
> >> \starttypescript [serif] [notonaskharabic]
> >> \definefontsynonym [notonaskharabic-Light] [name:notonaskharabic]
> >> [features=fea]
> >> \definefontsynonym [notonaskharabic-Bold] [name:notonaskharabic]
> >> [features=fea]
> >> \definefontsynonym [notonaskharabic-Italic] [name:notonaskharabic]
> >> [features=fea]
> >> \definefontsynonym [notonaskharabic-Bold-Italic] [name:notonaskharabic]
> >> [features=fea]
> >> \stoptypescript
> >>
> >> \starttypescript [serif] [notonaskharabic]
> >> \usetypescript[serif][fallback]
> >> \definefontsynonym [Serif] [notonaskharabic-Light] [features=fea]
> >> \definefontsynonym [SerifItalic] [notonaskharabic-Italic] [features=fea]
> >> \definefontsynonym [SerifBold] [notonaskharabic-Bold] [features=fea]
> >> \definefontsynonym [SerifBoldItalic] [notonaskharabic-Bold-Italic]
> >> [features=fea]
> >> \stoptypescript
> >>
> >> \starttypescript [notonaskharabic]
> >> \definetypeface [notonaskharabic] [rm] [serif] [notonaskharabic] [default]
> >> \stoptypescript
> >>
> >> \usetypescript[notonaskharabic]
> >>
> >> \setupbodyfont [RomanFont]
> >>
> >> \usecolors[crayola]
> >>
> >> \startMPinclusions
> >>
> >> picture p[];
> >> path TheFrame ;
> >> TheFrame := fullsquare scaled 5in ;
> >>
> >> z0 = (0,0);
> >> z1 = (60,40);
> >> z2 = (40,90);
> >> z3 = (10,70);
> >> z4 = (30,50);
> >> z5 = (90,70);
> >> z6 = (-10,70);
> >>
> >> path A; A = z0..z1..z2..z3..z4 ;
> >> pair AStartPoint; AStartPoint = point 0 of A;
> >> pair AEndPoint; AEndPoint = point 4 of A;
> >> path B; B = z5..z6;
> >> pair BStartPoint; BStartPoint = point 0 of B;
> >> pair BEndPoint; BEndPoint = point 1 of B;
> >> path C; C = AStartPoint..AEndPoint;
> >>
> >> p1:=image(
> >> draw A withcolor red;
> >> );
> >>
> >> p2:=image(draw A; label(lmt_outline [
> >> text = "\JapaneseFont 日本語"
> >> ], AEndPoint););
> >>
> >> p3:=image(
> >> label(textext("\notonaskharabic \textdir TRT دانگ") scaled 1.2,
> >> BStartPoint);
> >> );
> >>
> >> p4:=image(draw A; label(lmt_outline [
> >> text = "\KoreanFont 한국어"
> >> ], AStartPoint););
> >>
> >> p5:=image(
> >> label(textext("bāng"), BEndPoint);
> >> draw C withcolor green;
> >> );
> >>
> >> p6:=image(
> >> draw B withcolor blue;
> >> );
> >> \stopMPinclusions
> >>
> >> \starttext
> >>
> >> \dorecurse{6}{ % Frame
> >> \setupMPpage[background=color, backgroundcolor=SpringGreen]
> >> \startMPpage[pagestate=start]
> >> currentime := #1 ;
> >> % Just for learning :
> >> draw TheFrame withpen pencircle scaled .1in withcolor magenta ;
> >> draw textext("T="&decimal(currentime)) scaled 2 shifted(0,2in) withcolor
> >> magenta ;
> >> for k=1 upto currentime: draw p[k]; endfor
> >> setbounds currentpicture to TheFrame ;
> >>
> >> desiredformat := 1080;% In pixels (will be converted by default at 72dpi)
> >> currentpicture := currentpicture xysized (desiredformat ,desiredformat );
> >>
> >> \stopMPpage
> >> }
> >>
> >> \stoptext
> >> On Nov. 27 2023, at 11:25 pm, Aditya Mahajan <adit...@umich.edu> wrote:
> >>
> >> On Mon, 27 Nov 2023, Fabrice L wrote:
> >>
> >> > Hi,
> >> >
> >> > It is fun fact very easy to do. You just use \startMPpage (…)
> >> > \stopMPpage multiple times. Here is an example which build an animation
> >> > of a particle moving according to a Brownian motion.
> >>
> >> A very similar option is to pass a variable to a metapost drawing. This is
> >> what I use:
> >>
> >> https://adityam.github.io/context-blog/post/metapost-animation/
> >>
> >> It only works when viewed in acrobat, you can just comment out the
> >> animation part and wrap it in \startTEXpage .. \stopTEXpage to get
> >> multi-page animation.
> >>
> >> Aditya___________________________________________________________________________________
> >> If your question is of interest to others as well, please add an entry to
> >> the Wiki!
> >>
> _____________________________________________
I do not understand why your original code does not work, and I know Mickael
has offered you a solution, but there is, just for curiosity, another one to
achieve your goal using \MPinclusions :
% 8 < ———————————————
\starttext
\startMPinclusions
path TheFrame ;
TheFrame := fullsquare scaled 5in ;
pair Coord[] ;
string TheText[] ;
TheText[1] := "Word 1" ; Coord[1] := (60,40) ;
TheText[2] := "Word 2" ; Coord[2] := (40,90) ;
TheText[3] := "Word 3" ; Coord[3] := (10,70) ;
\stopMPinclusions
\dorecurse{3}{ % Frame
\startMPpage%[pagestate=start]
currentime := #1 ;
% Just for learning :
draw TheFrame withpen pencircle scaled .1in withcolor magenta ;
draw textext("T="&decimal(currentime)) scaled 2 shifted(0,2in) withcolor
magenta ;
for k=1 upto currentime:
draw textext(TheText[k]) shifted Coord[k] ;
endfor ;
\stopMPpage
}
\stoptext
% 8 < ———————————————
Fabrice.
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the
Wiki!
maillist : ntg-context@ntg.nl /
https://mailman.ntg.nl/mailman3/lists/ntg-context.ntg.nl
webpage : https://www.pragma-ade.nl / https://context.aanhet.net (mirror)
archive : https://github.com/contextgarden/context
wiki : https://wiki.contextgarden.net
___________________________________________________________________________________