On 10/17/2025 5:04 AM, Emanuel Han via ntg-context wrote:
I can live with the proposed hack by Mikael. Thank you.

I’m still curious if the developers (Hans, …?) agree with me on the need for improvement of the lmt_outline feature. Would be nice to hear a feedback.

No matter what direction you run, things like this always are sensitive for overlap, so the two-step drawing is what i'd use.

Btw, you can also do this, for less huge shadows:

\startTEXpage
\setupeffect[outer][rulethickness=1pt]
    \startoverlay
      {\starteffect[outer]%
         Auflage Zupfinstrument {\notonaskharabic \textdir TRT کرن}%
       \stopeffect}
      {\starteffect[inner]\red
        Auflage Zupfinstrument {\notonaskharabic \textdir TRT کرن}%
       \stopeffect}
    \stopoverlay
\stopTEXpage



Best regards
Emanuel

On 13 Oct 2025, at 13:35, Mikael Sundqvist wrote:

    Hi,

    Is it an option to draw twice?

    \startMPpage[offset=1DK]

    draw lmt_outline [
    text = "Auflage Zupfinstrument",
    kind = "draw", drawcolor = "blue", rulethickness = 4,
    ] scaled 10 ;

    draw lmt_outline [
    text = "Auflage Zupfinstrument",
    kind = "both", fillcolor=white, drawcolor = "white",
    ] scaled 10 ;

    \stopMPpage

    /Mikael

    On Mon, Oct 13, 2025 at 6:23 AM Emanuel Han via ntg-context
    [email protected] <mailto:[email protected]> wrote:

        Dear list,

        it seems that when using lmt_outline and kind=„reverse“, the
        drawing order is drawcolor of letter one, then fillcolor of
        letter one, then drawcolor of letter two, then fillcolor of
        letter two, and so on. The result is that the previous letters
        are covered by the drawcolor of the following letters, which is
        not beautiful and makes the text less readable.

        I think the correct drawing order should be drawcolor of all
        letters, then fillcolor of all letters.

        Btw ligatures (fl in „Auflage“ and fi in „Zupfinstrument“ in
        following mwe) are spared from this cumbersome behavior.

        I need the desired behavior with Arabic text at the moment, but
        any script is actually affected.

        \mainlanguage[de]
        \definefontfeature[default]
        [mode=node,liga=yes,kern=yes,tlig=yes,
        ccmp=yes,language=dflt,
        protrusion=quality,
        expansion=quality]

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

        \definecolor [transparentgray] [s=.9,t=.8,a=1]

        \starttext

        \startMPcode{doublefun}
        draw lmt_outline [
        text = "Auflage Zupfinstrument {\notonaskharabic \textdir TRT کرن}",
        kind = "fill", fillcolor = "black", drawcolor =
        "transparentgray", rulethickness = 4,
        ] xsized TextWidth ;

        draw lmt_outline [
        text = "Auflage Zupfinstrument {\notonaskharabic \textdir TRT کرن}",
        kind = "reverse", fillcolor = "blue", drawcolor =
        "transparentgray", rulethickness = 4,
        ] xsized TextWidth shifted (0,-2cm);

        draw lmt_outline [
        text = "Auflage Zupfinstrument {\notonaskharabic \textdir TRT کرن}",
        kind = "reverse", fillcolor = "gray", drawcolor = "blue",
        rulethickness = 4,
        ] xsized TextWidth shifted (0,-4cm);
        \stopMPcode
        \stoptext

        ------------------------------------------------------------------------

        If your question is of interest to others as well, please add an
        entry to the Wiki!

        maillist : [email protected] <mailto:[email protected]> /
        https://mailman.ntg.nl/mailman3/lists/ntg-context.ntg.nl
        <https://mailman.ntg.nl/mailman3/lists/ntg-context.ntg.nl>
        webpage : https://www.pragma-ade.nl <https://www.pragma-
        ade.nl> / https://context.aanhet.net <https://
        context.aanhet.net> (mirror)
        archive : https://github.com/contextgarden/context <https://
        github.com/contextgarden/context>
        wiki : https://wiki.contextgarden.net <https://
        wiki.contextgarden.net>

        ------------------------------------------------------------------------

    ------------------------------------------------------------------------

    If your question is of interest to others as well, please add an
    entry to the Wiki!

    maillist : [email protected] <mailto:[email protected]> / https://
    mailman.ntg.nl/mailman3/lists/ntg-context.ntg.nl <https://
    mailman.ntg.nl/mailman3/lists/ntg-context.ntg.nl>
    webpage : https://www.pragma-ade.nl <https://www.pragma-ade.nl> /
    https://context.aanhet.net <https://context.aanhet.net> (mirror)
    archive : https://github.com/contextgarden/context <https://
    github.com/contextgarden/context>
    wiki : https://wiki.contextgarden.net <https://wiki.contextgarden.net>

    ------------------------------------------------------------------------


___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : [email protected] / 
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
___________________________________________________________________________________


--

-----------------------------------------------------------------
                                          Hans Hagen | PRAGMA ADE
              Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
       tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : [email protected] / 
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
___________________________________________________________________________________

Reply via email to