Hans van der Meer wrote:

I'm sorry, I ran it in a few variations, but neither does work here:

ah .. all those users who want to stress this tex-mp game to the limits ... keep in mind that tex in mp is actually a hack!

your unknown will go away when you redefine the color commands to be unexpandable

\unexpanded\def\startcolor
 {\ifincolor
    \expandafter\doglobalstartcolor
  \else
    \expandafter\noglobalstartcolor
  \fi}

\unexpanded\def\stopcolor
 {\ifincolor
    \doglobalstopcolor
  \else
    \noglobalstopcolor
  \fi}

\setupcolors[state=start]
\startMPenvironment           % both with and without: [global]
    \setupcolors[state=start]
\stopMPenvironment
\setupMPpage[offset=2mm]
\startuseMPgraphic{test}
label(textext("\color[green]{XYZ}"), (0,0)); % returns black XYZ on execute label(textext("\startcolor[red]{XYZ}\stopcolor"), (0,20)); % returns "unknown" on execute
\stopuseMPgraphic
\starttext
\forceMPTEXgraphictrue
\startMPpage
    \includeMPgraphic{test}
\stopMPpage
\stoptext

I tried to run this on context-live but there got both outputs to "unknown".

color itself ... mp only reads back the character (+ some rule) data, nothing else, so color needs to be applied at another level (there is some limited and therefore useless special support)

so, the best i can give you is:

% output=pdf

\unexpanded\def\startcolor
 {\ifincolor
    \expandafter\doglobalstartcolor
  \else
    \expandafter\noglobalstartcolor
  \fi}

\unexpanded\def\stopcolor
 {\ifincolor
    \doglobalstopcolor
  \else
    \noglobalstopcolor
  \fi}

\setupcolors[state=start]

\startMPenvironment           % both with and without: [global]
   % only font and macro defs make sense here
\stopMPenvironment

\setupMPpage[offset=2mm]

\startuseMPgraphic{test}
   draw thelabel(textext("XYZ"), (0,0)) withcolor \MPcolor{green} ;
   draw thelabel(textext("XYZ"), (0,20)) withcolor \MPcolor{red} ;
\stopuseMPgraphic

\starttext
\forceMPTEXgraphictrue
\startMPpage
   \includeMPgraphic{test}
\stopMPpage
\stoptext


_______________________________________________
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context

Reply via email to