[NTG-context] C with macron

Hans Hagen j.hagen at freedom.nl
Wed Aug 24 09:35:49 CEST 2022


On 8/24/2022 8:47 AM, Mikael Sundqvist via ntg-context wrote:
> Hi,
> 
> On Wed, Aug 24, 2022 at 2:23 AM Thangalin via ntg-context
> <ntg-context at ntg.nl> wrote:
>>
>> Hi again,
>>
>> Re: https://tex.stackexchange.com/q/364024/2148
>>
>> How do you typeset a C with a macron below?
>>
>> \starttext
>> M\withmacron{c}Anulty
>> \stoptext
>>
>> Thank you.
> 
> It seems that you can use "0331 for this:
> 
> Mc\char"0331 Anulty
> 
> There also is a built-in command \buildtextmacron:
> 
> M\buildtextmacron{c}Anulty
> 
> (Not sure if it uses the "0331.)
> 
> This does not give any "fancy" raised c̱ though. Maybe someone else
> has better ideas.
An early morning exercise:

\setupbodyfont[pagella]

\startTEXpage [offset=1dk]

     \def\MacScale{.7}%
     \def\MacRule {.1}%
     \def\MacKern {0}%

     \protected\def\Mac
       {\dontleavehmode \showglyphs
        \begingroup
        \scratchwidth   \fontcharwd\font`M\relax
        \scratchdistance\MacScale\fontcharwd\font`c\relax
        \scratchoffset  \dimexpr\fontcharht\font`M 
-\MacScale\fontcharht\font`c \relax
        \scratchdepth   \MacRule\exheight
        \kern\scratchwidth
        \vrule
          width  \scratchdistance
          height \dimexpr \scratchoffset- \scratchdepth\relax
          depth  \dimexpr-\scratchoffset+2\scratchdepth\relax
        \relax
        \kern-\dimexpr\scratchwidth+\scratchdistance\relax
        M%
 
\glyphscale\numexpr\numericscale\MacScale*\glyphyscale/\plusthousand\relax
        \glyph
          yoffset \scratchoffset `c
        \kern\MacKern\emwidth
        \endgroup}

     \dostepwiserecurse{5}{8}{1}{
         \def\MacScale{.#1}%
         \Mac Anulty
         \par
     }
     \def\MacScale{.6}
     \def\MacKern {-.1}
     \Mac Anulty
\stopTEXpage

After all, we want to be able to cut'n'paste the name.

Hans

-----------------------------------------------------------------
                                           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