On 9/17/2023 9:04 AM, Max Chernoff wrote:
Hi Aditya,

For some reason, there is an extra \relax written to file after
`\the\numexp\clf_lastypos\relax` (there is no such relax after
`\the\numexpr\clf_lastxpos\relax`). The test.pgf file is:

\macro {A}{23930350}{43358454.0\relax } \macro {B}{39564274.0\relax
   }{14083538}

Any ideas on why is the extra \relax written after lastypos and how to
fix that?

\numexpr stops at the first non-expandable or non-digit token. If
\clf_last[xy]pos expands to an integer, then that's the \relax, but if
it expands to a float, then that's the decimal point.

With Lua, adding, subtracting, or multiplying two integers will give you
an integer, but dividing gives you a float. So somewhere in the backend,
the vertical position is probably divided but the horizontal position is
only added or subtracted.

To fix this, change lines 2344--2345 of anch-pos.lmt from

    implement { name = "lastxpos", actions = function() 
context(jobpositions.lastx) end }
    implement { name = "lastypos", actions = function() 
context(jobpositions.lasty) end }

to

    implement { name = "lastxpos", actions = function() context("%.0f", 
jobpositions.lastx) end }
    implement { name = "lastypos", actions = function() context("%.0f", 
jobpositions.lasty) end }

it's better to do some rounding earlier on

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

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

maillist : ntg-context@ntg.nl / https://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : https://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : https://contextgarden.net
___________________________________________________________________________________

Reply via email to