On 9/23/2016 1:50 PM, Procházka Lukáš Ing. wrote:
Hello,

still a problem - consider the following code:

----
\ifx\startpapersize\undefined
  \unprotect
    \def\startpapersize{\page\pushmacro\page_paper_restore\setuppapersize}
  \protect
\fi

\ifx\stoppapersize\undefined
  \unprotect
    \def\stoppapersize{\page\popmacro\page_paper_restore\setuppapersize}
  \protect
\fi

%

\startluacode
  local tomm = function(v) return v * (210 / 39158276) end

  pgsz = function()
    context("w=%.1f, h=%.1f", tomm(tex.dimen.paperwidth),
tomm(tex.dimen.paperheight))
  end
\stopluacode

%

\starttext
  A
  \ctxlua{pgsz()}

  \startpapersize[A3,landscape]
    B
    \ctxlua{pgsz()}
  \stoppapersize

  \startTEXpage[width=200mm,height=100mm]
    C % 3rd page
    \ctxlua{pgsz()}
  \stopTEXpage

the papersize of a TEXpage is known when that page is flushed and when you ask for it the way you do now tex is still constructing the box

it's all a matter of timing

\starttext

\appendtoks
    \ctxlua{
        print(
            number.topoints(tex.dimen.paperwidth ),
            number.topoints(tex.dimen.paperheight)
        )
    }%
\to \everyshipout

\setuppapersize[A4] test

\startTEXpage test \stopTEXpage

\setuppapersize[A3] test

\stoptext


\stoptext
----

In the case of 3rd page (with text "C"), page size "w=210.0, h=297.0" is
printed instead of "w=200.0, h=100.0".

So how to access values 200 and 100 mm for the page produced by
\startTEXpage[width=...,height=...]?

Best regards,

Lukas


On Thu, 08 Sep 2016 22:12:49 +0200, Hans Hagen <pra...@wxs.nl> wrote:

On 9/8/2016 9:47 PM, josephcan...@gmail.com wrote:
If by messing it’s meant modifying their values, I agree that’s a bad
idea 😊, the requirement is likely to read the value only (at least this
is my usage of these in shipouts « after » callback).

If these are not reliable, what’s the reliable way to get the page width
and height ?

\starttext

\ctxlua{context(number.topoints(tex.dimen.paperwidth))}

\ctxlua{context(number.topoints(tex.dimen.paperheight))}

\stoptext


-----------------------------------------------------------------
                                           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 /
http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________





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

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://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 : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

Reply via email to