Hey---

I'm trying to insert outlined text (derived from MetaFun example code) into a document and it seems to work up to the point that the text has depth (descenders). There's a previous post that mentions using textcommand for titles to ensure that the appropriate baseline is used but I haven't figured out why that would work; for my purposes, I'm insert the text inline so that solution wouldn't work here. I have included a MWE that demonstrates the problem; I've tried putting both the text and the outlined text in a box, then adjusting the outlined text by the depth of the text itself but that doesn't seem to work. I expect that there's an easy way either in MP or ConTeXt, but I haven't found it yet.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% \OutlinedText[glyph][outline]{text}
\def\OutlinedText{\dodoubleempty\doOutlinedText}

\def\doOutlinedText[#1][#2]#3%
{%
    % ((((\type{#1}::\type{#2}::\type{#3}))))
    \ifsecondargument
        \makeOutlinedText{#1}{#2}{#3}%
    \else\iffirstargument
        \makeOutlinedText{#1}{black}{#3}%
    \else
        \makeOutlinedText{white}{black}{#3}%
    \fi\fi
}

\def\makeOutlinedText#1#2#3%
{%
    \startMPcode
    draw outlinetext.b("#3")
         (withcolor "#1")
         (withcolor "#2" withpen pencircle scaled 1/16);
    \stopMPcode
    \autoinsertnextspace
}

\starttext
    start
         \OutlinedText{aaa}
    and  \OutlinedText{Bbb}
    and  \OutlinedText{ggg}
    and  \OutlinedText{Yyy}
    finish
\stoptext

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


(Here is the code with my attemps to shift the baseline; the \dp & \wd approach seems to do nothing, and the \lower doesn't compile and I haven't pursued why yet.)


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% \def\makeOutlinedText#1#2#3%
% {%
%     \newbox\tBox
%     \newbox\uBox
%     \setbox\tBox\hbox{#3}
%     \setbox\uBox
%     \hbox{%
%         \startMPcode
%         draw outlinetext.b("#3")
%              (withcolor "#1")
%              (withcolor "#2" withpen pencircle scaled 1/16);
%         \stopMPcode
%     }%
%     % \lower\uBox\dp\tBox
%     \ht\uBox=\ht\tBox
%     \dp\uBox=\dp\tBox
%     \unbox\uBox
%     \autoinsertnextspace
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


Any feedback or suggestions would be appreciated.
 ---K

Kevin W. Rudd, Ph.D.
CAPT, USN (Ret)

Computer Architecture & Computer Engineering 
Advanced Computing Systems (ACS) Research Program 
Laboratory for Physical Sciences (LPS) 

443-654-7878 
kevin@lps.umd.edu

Visiting Research Professor
United States Naval Academy

rudd@usna.edu