Re: [NTG-context] Wrong page numbers in frontmatter

2020-06-14 Thread Jack Steyn
Thanks kindly, Wolfgang.

On Mon, 15 Jun 2020 at 00:49, Wolfgang Schuster <
wolfgang.schuster.li...@gmail.com> wrote:

> Jack Steyn schrieb am 14.06.2020 um 16:46:
> > Hi,
> >
> > I'm not sure why the following MWE produces a document where page 2
> > has the page number i instead of ii. It seems to have something to do
> > with the use of makeup. I was using it to create a vertically centered
> > title page. Is there a better way of doing this which will give the
> > correct page numbers?
> >
> > Best,
> >
> > Jack
> >
> > \definestructureconversionset[frontpart:pagenumber][][romannumerals]
> > \definestructureconversionset[bodypart:pagenumber][][numbers]
> >
> > \definemakeup[titlepage][align=middle]
>
> \definemakeup[titlepage][align=middle,pagestate=start]
>
> Wolfgang
>
>
> ___
> 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://context.aanhet.net
> archive  : https://bitbucket.org/phg/context-mirror/commits/
> 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://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___


[NTG-context] Wrong page numbers in frontmatter

2020-06-14 Thread Jack Steyn
Hi,

I'm not sure why the following MWE produces a document where page 2 has the
page number i instead of ii. It seems to have something to do with the use
of makeup. I was using it to create a vertically centered title page. Is
there a better way of doing this which will give the correct page numbers?

Best,

Jack

\definestructureconversionset[frontpart:pagenumber][][romannumerals]
\definestructureconversionset[bodypart:pagenumber][][numbers]

\definemakeup[titlepage][align=middle]

\starttext

\startfrontmatter
\startmakeup[titlepage]
Title
\stopmakeup
test
\stopfrontmatter

\startbodymatter
\setcounter[userpage][1]
test
\stopbodymatter

\stoptext
___
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://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___


Re: [NTG-context] Trouble setting PDF boxes

2020-04-30 Thread Jack Steyn
Hi Hans, using that produces a pdf which fails compliance with PDF/X-1a as
the BleedBox is not set. But notice that if it did work, the sizes of
TrimBox and BleedBox would be based off printpaperwidth and
printpaperheight. I need them to be based off paperwidth and paperheight
(for my documents all have printpaperwidth – paperwidth ≠ printpaperheight
– paperheight).

(Apologies, I initially replied to just you and not the list as well.)

On Fri, 1 May 2020 at 05:44, Hans Hagen  wrote:

> On 4/30/2020 5:51 PM, Jack Steyn wrote:
> > Hello, I'm happy to report that I got this working after much trawling
> > through the source and documentation. The code below produces a pdf with
> > the MediaBox, CropBox, BleedBox and TrimBox all in the places I
> > specified in my original message. I hope it helps illustrate how to set
> > these PDF boxes using Lua. I would much appreciate any feedback on how
> > the Lua code can be cleaned up or made more flexible (the bleed is
> > hard-coded in because I didn't know how to obtain the user-specified
> > bleedoffset, for example), or made better in any other way.
> can you try this
>
> \setuplayout
>[cropoffset=30pt,
> bleedoffset=20pt,
> trimoffset=10pt]
>
> \setupinteractionscreen
>[width=max,height=max]
>
> -
>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://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___


Re: [NTG-context] Trouble setting PDF boxes

2020-04-30 Thread Jack Steyn
Hello, I'm happy to report that I got this working after much trawling
through the source and documentation. The code below produces a pdf with
the MediaBox, CropBox, BleedBox and TrimBox all in the places I specified
in my original message. I hope it helps illustrate how to set these PDF
boxes using Lua. I would much appreciate any feedback on how the Lua code
can be cleaned up or made more flexible (the bleed is hard-coded in because
I didn't know how to obtain the user-specified bleedoffset, for example),
or made better in any other way.

Jack

\setuppapersize[A5][A4]

\setuplayout[location=middle, marking=on]

\setupinteraction
  [title={TestDoc},
   author={Anon}]

\setupbackend
  [format=PDF/X-1a:2003,
   intent={ISO Coated v2 300\letterpercent\space (ECI)}]

\setupinteractionscreen[width=max,height=max]

\startluacode
moduledata.mystuff={}
respecify_pdf_boxes = function()
local pdfverbose = lpdf.verbose
local factor = number.dimenfactors.bp
local f_value = string.formatters["\letterpercent.6N"]

local function boxvalue(n)
return pdfverbose(f_value(factor * n))
end

local paperwidth = tex.dimen.printpaperwidth
local paperheight = tex.dimen.printpaperheight
local pagewidth = tex.dimen.paperwidth
local pageheight = tex.dimen.paperheight
local bleedoffset = 3 / number.dimenfactors.mm
local pdfarray = lpdf.array

lpdf.addtopageattributes("MediaBox", pdfarray {
boxvalue(0),
boxvalue(0),
boxvalue(paperwidth),
boxvalue(paperheight),})

lpdf.addtopageattributes("CropBox", pdfarray {
boxvalue(0),
boxvalue(0),
boxvalue(paperwidth),
boxvalue(paperheight),})

lpdf.addtopageattributes("TrimBox", pdfarray {
boxvalue((paperwidth - pagewidth) / 2),
boxvalue((paperheight - pageheight) / 2),
boxvalue((paperwidth + pagewidth) / 2),
boxvalue((paperheight + pageheight) / 2),})

lpdf.addtopageattributes("BleedBox", pdfarray {
boxvalue((paperwidth - pagewidth) / 2 - bleedoffset),
boxvalue((paperheight - pageheight) / 2 - bleedoffset),
boxvalue((paperwidth + pagewidth) / 2 + bleedoffset),
boxvalue((paperheight + pageheight) / 2 + bleedoffset),})
end

moduledata.mystuff.respecify_pdf_boxes = respecify_pdf_boxes

lpdf.registerpagefinalizer(moduledata.mystuff.respecify_pdf_boxes,
"respecify pdf boxes")
\stopluacode

\starttext
test
\stoptext

On Sun, 26 Apr 2020 at 02:42, Jack Steyn  wrote:

> After much searching, my probably laughable attempt consists of combining
> the answer to the question at
> https://tex.stackexchange.com/questions/433110/setting-page-attributes-of-every-page-in-a-generated-context-file
>  with
> what I can see in the source at
> https://source.contextgarden.net/tex/context/base/mkiv/lpdf-mis.lua:
>
> \appendtoks
>   \startluacode
>   local formatters = string.formatters
>
>   local pdfverbose = lpdf.verbose
>   local pdfarray = lpdf.array
>
>   local factor  = number.dimenfactors.bp
>   local f_value = formatters["\letterpercent.6N"]
>
>   local function boxvalue(n)
>   return pdfverbose(f_value(factor * n))
>   end
>
>   lpdf.addtopageattributes("TrimBox", pdfarray {
>   boxvalue(30),
>   boxvalue(30),
>   boxvalue(180),
>   boxvalue(267),})
>   \stopluacode
> \to \aftereverypage
>
> This code throws no errors, but unfortunately it also has no effect. What
> am I doing wrong?
>
> Jack
>
> On Sat, 25 Apr 2020 at 22:37, Jack Steyn  wrote:
>
>> Hi,
>>
>> I am having trouble setting the PDF boxes to my desired dimensions.
>> Suppose I have \setuppapersize[*a*][*b*]. I want CropBox = MediaBox = *b*.
>> So far, so good: I can just use cropoffset=0mm in \setuplayout. But I want
>> TrimBox = *a*. However, as far as I can see, I can't achieve this using
>> trimoffset in \setuplayout unless (width of *b*) – (width of *a*) =
>> (height of *b*) – (height of *a*), which does not hold in my case. So it
>> looks like I need to find another way to set the TrimBox (and the BleedBox,
>> which I want to be 3mm wider and taller than the TrimBox). Does anyone know
>> how to do this?
>>
>> Best,
>>
>> Jack
>>
>
___
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://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___


[NTG-context] Getting page width and height in Lua

2020-04-30 Thread Jack Steyn
If I want to get the paper width and height to use in some Lua code, I can
use:

local paperwidth, paperheight =
backends.pdf.codeinjections.getpagedimensions()

But what if I want to get the page width and height? That is, the width and
height of the first argument in the two-argument version of
\setuppapersize. Does anyone know how I can obtain these using Lua?

Many thanks,

Jack
___
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://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___


Re: [NTG-context] bug in PDF boxes? (was: Re: Trouble setting PDF boxes))

2020-04-26 Thread Jack Steyn
I would like to add though that even if the code you posted did work
properly, Pablo, it wouldn't solve my original problem. It would be good if
cropoffset, trimoffset etc. took two dimensions, one for the x direction
and one for the y direction, instead of one for both. But I appreciate you
changing the subject to increase visibility.

Jack

On Sun, 26 Apr 2020 at 19:47, Pablo Rodriguez  wrote:

> On 4/25/20 2:37 PM, Jack Steyn wrote:
> > Hi,
> >
> > I am having trouble setting the PDF boxes to my desired dimensions.
> > Suppose I have \setuppapersize[/a/][/b/]. I want CropBox = MediaBox
> > =/ //b/. So far, so good: I can just use cropoffset=0mm in \setuplayout.
> > But I want TrimBox = /a/. However, as far as I can see, I can't achieve
> > this using trimoffset in \setuplayout unless (width of /b/) – (width of
> > /a/) = (height of /b/) – (height of /a/), which does not hold in my
> > case. So it looks like I need to find another way to set the TrimBox
> > (and the BleedBox, which I want to be 3mm wider and taller than the
> > TrimBox). Does anyone know how to do this?
>
> Hi Jack,
>
> there seems to be a bug in ConTeXt (both in MkXL and MkIV).
>
> From this code:
>
> \setuplayout
>  [cropoffset=15ex,
>   trimoffset=20ex,
>   bleedoffset=25ex,
>   artoffset=30ex]
>
> \starttext
> \input zapf
> \stoptext
>
> I get the relevant code:
>
>   /CropBox [ 0 0 595.2756 841.8898 ]
>   /MediaBox [ 0 0 595.2756 841.8898 ]
>   /TrimBox [ 0 0 595.2756 841.8898 ]
>
> I think it might be a bug that prevents this from working properly.
> (ArtBox is simply disabled.)
>
> Hans, could you check this? Many thanks for your help.
>
> Pablo
>
> PS: sorry for having changed the subject, Jack. It intends only to
> increase visibility about code that may need to be improved.
> --
> http://www.ousia.tk
>
> ___
> 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://context.aanhet.net
> archive  : https://bitbucket.org/phg/context-mirror/commits/
> 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://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___


Re: [NTG-context] Trouble setting PDF boxes

2020-04-25 Thread Jack Steyn
After much searching, my probably laughable attempt consists of combining
the answer to the question at
https://tex.stackexchange.com/questions/433110/setting-page-attributes-of-every-page-in-a-generated-context-file
with
what I can see in the source at
https://source.contextgarden.net/tex/context/base/mkiv/lpdf-mis.lua:

\appendtoks
  \startluacode
  local formatters = string.formatters

  local pdfverbose = lpdf.verbose
  local pdfarray = lpdf.array

  local factor  = number.dimenfactors.bp
  local f_value = formatters["\letterpercent.6N"]

  local function boxvalue(n)
  return pdfverbose(f_value(factor * n))
  end

  lpdf.addtopageattributes("TrimBox", pdfarray {
  boxvalue(30),
  boxvalue(30),
  boxvalue(180),
  boxvalue(267),})
  \stopluacode
\to \aftereverypage

This code throws no errors, but unfortunately it also has no effect. What
am I doing wrong?

Jack

On Sat, 25 Apr 2020 at 22:37, Jack Steyn  wrote:

> Hi,
>
> I am having trouble setting the PDF boxes to my desired dimensions.
> Suppose I have \setuppapersize[*a*][*b*]. I want CropBox = MediaBox = *b*.
> So far, so good: I can just use cropoffset=0mm in \setuplayout. But I want
> TrimBox = *a*. However, as far as I can see, I can't achieve this using
> trimoffset in \setuplayout unless (width of *b*) – (width of *a*) =
> (height of *b*) – (height of *a*), which does not hold in my case. So it
> looks like I need to find another way to set the TrimBox (and the BleedBox,
> which I want to be 3mm wider and taller than the TrimBox). Does anyone know
> how to do this?
>
> Best,
>
> Jack
>
___
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://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___


[NTG-context] Trouble setting PDF boxes

2020-04-25 Thread Jack Steyn
Hi,

I am having trouble setting the PDF boxes to my desired dimensions. Suppose
I have \setuppapersize[*a*][*b*]. I want CropBox = MediaBox = *b*. So far,
so good: I can just use cropoffset=0mm in \setuplayout. But I want TrimBox
= *a*. However, as far as I can see, I can't achieve this using trimoffset
in \setuplayout unless (width of *b*) – (width of *a*) = (height of *b*) –
(height of *a*), which does not hold in my case. So it looks like I need to
find another way to set the TrimBox (and the BleedBox, which I want to be
3mm wider and taller than the TrimBox). Does anyone know how to do this?

Best,

Jack
___
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://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___