ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: "Procházka Lukáš Ing. - Pontex s. r. o." <LPr@pontex.cz>
To: "mailing list for ConTeXt users" <ntg-context@ntg.nl>
Subject: Re: [***Spam/VIR***] Re: Layer vs. overlay
Date: Wed, 16 Jan 2013 09:41:42 +0100	[thread overview]
Message-ID: <op.wqzw3sgrtpjj8f@lpr> (raw)
In-Reply-To: <alpine.DEB.2.02.1301150719020.11856@nqv-guvaxcnq>

[-- Attachment #1: Type: text/plain, Size: 2536 bytes --]

Hello,

@Aditya: Thanks for the tip - maybe some inspiration for me.


Anyway, I keep on trying to create my previously described function with Lua.

Now, I have a code which does much expected, but I'm not able to pass the desired content to setups/layer:

----
\setupbodyfont[30pt]

\starttext
   A

   \definelayer  [beforetext][width=\overlaywidth,height=\overlayheight]
   \defineoverlay[beforetext][{\setups[beforetext]\tightlayer[beforetext]}]

   \startsetups[beforetext]
     \setlayer[beforetext][preset=righttop]{\framed[width=2in]{\directlua{context(userdata.LPr.text)}}}
   \stopsetups

   \startluacode
     userdata = userdata or {}
     userdata.LPr = userdata.LPr or {}

     for i = 1, 2 do
       context.startTEXpage{background="foreground,beforetext"}
         userdata.LPr.text = "BEF" .. i

         context.externalfigure({"cow"},{width="30cm"})
       context.stopTEXpage()
     end
   \stopluacode

   Z
\stoptext
----

Both images of the cow have "BEF2" in the top right corner, but there should be "BEF1" on the former and "BEF2" on the latter.

I'm trying to pass the text string ("BEF" .. i) via userdata, but it doesn't work.

So how to do it?

Lukas



On Tue, 15 Jan 2013 13:25:04 +0100, Aditya Mahajan <adityam@umich.edu> wrote:

> On Tue, 15 Jan 2013, Procházka Lukáš Ing. - Pontex s. r. o. wrote:
>
>> (Finally: I'd like to achieve a Lua function which will copy all pages of a
>> .pdf file, keeping size of each page, and adding a customizable string with
>> page-in-the-pdf number (with default value "<page-i>/<n-pages>"), being
>> placed to the right top corner of the i-th page. All to be provided by Lua.)
>
> A few years ago I wrote a module that, amongst other things, did this.
> (The mail purpose of the module was to cut 2 column journal papers to one
> column PDF so that they are easy to read on an eink reader. I haven't used
> this in a while, so it may not work out of the box).
>
> https://github.com/adityam/cut-n-paste/blob/master/tex/context/third/cut-n-paste/t-cut-n-paste.tex
>
> In this case, I used a MetaPost overylay to draw the page number (search
> for cnp:text). The user could manipulate the location of the page number
> by using the location key (which had to be a valid Metapost pair).
>
> Aditya


-- 
Ing. Lukáš Procházka [mailto:LPr@pontex.cz]
Pontex s. r. o.      [mailto:pontex@pontex.cz] [http://www.pontex.cz]
Bezová 1658
147 14 Praha 4

Tel: +420 244 062 238
Fax: +420 244 461 038

[-- Attachment #2: Lay8.mkiv --]
[-- Type: application/octet-stream, Size: 687 bytes --]

\setupbodyfont[30pt]

\starttext
  A

  \definelayer  [beforetext][width=\overlaywidth,height=\overlayheight]
  \defineoverlay[beforetext][{\setups[beforetext]\tightlayer[beforetext]}]

  \startsetups[beforetext]
    \setlayer[beforetext][preset=righttop]{\framed[width=2in]{\directlua{context(userdata.LPr.text)}}}
  \stopsetups

  \startluacode
    userdata = userdata or {}
    userdata.LPr = userdata.LPr or {}

    for i = 1, 2 do
      context.startTEXpage{background="foreground,beforetext"}
        userdata.LPr.text = "BEF" .. i

        context.externalfigure({"cow"},{width="30cm"})
      context.stopTEXpage()
    end
  \stopluacode

  Z
\stoptext

[-- Attachment #3: Lay8.pdf --]
[-- Type: application/pdf, Size: 11092 bytes --]

[-- Attachment #4: Type: text/plain, Size: 485 bytes --]

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

  parent reply	other threads:[~2013-01-16  8:41 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-11 15:32 Procházka Lukáš Ing. - Pontex s. r. o.
2013-01-11 18:06 ` Hans Hagen
2013-01-12  7:44 ` Wolfgang Schuster
2013-01-12 10:36   ` Procházka Lukáš
2013-01-12 13:25   ` Hans Hagen
2013-01-12 17:54   ` [***Spam/VIR***] " Procházka Lukáš
2013-01-12 18:11     ` Wolfgang Schuster
2013-01-15  8:04       ` Procházka Lukáš Ing. - Pontex s. r. o.
2013-01-15 10:09         ` Wolfgang Schuster
2013-01-15 12:10           ` [***Spam/VIR***] " Procházka Lukáš Ing. - Pontex s. r. o.
2013-01-15 12:25             ` Aditya Mahajan
2013-01-15 16:21               ` Philipp Gesang
2013-01-16  8:41               ` Procházka Lukáš Ing. - Pontex s. r. o. [this message]
2013-01-16 11:47                 ` Philipp Gesang
2013-01-16 13:09                   ` Procházka Lukáš Ing. - Pontex s. r. o.
2013-01-16 13:34                     ` Philipp Gesang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=op.wqzw3sgrtpjj8f@lpr \
    --to=lpr@pontex.cz \
    --cc=ntg-context@ntg.nl \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).