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 ___________________________________________________________________________________