[NTG-context] xpos.sty

Hans Hagen pragma at wxs.nl
Wed Aug 30 01:32:35 CEST 2006


Paul Jones wrote:
>
> Thank you again for very timely and great answers to my question 
> yesterday.  I am finding that implementing things in Context is 
> usually easier than I expect.  This is very nice.  Our company decided 
> to switch to context from latex recently.  It seems to have been a 
> very good decision.  Thanks for all the work you do to make context so 
> fun to use.
>
> We have one last thing to get translated from latex to context.  David 
> Kastrup wrote a bit of latex for us (included below) that magically 
> writes out the absolute xy position of each paragraph and image to a 
> log file for us.  We pass some extra information to the commands that 
> get put in the log file for us, but in the end we mainly need a way to 
> get the absolute xy coordinates of the bounding boxes for each 
> paragraph, each section title, each image and each image caption.  Is 
> there a way to get this information with context already? Or do I need 
> to get a new module written?
i dunno about that code but context has support for positions for years now, in your case you probably need something 

\starttext

\let\CurrentPos\empty

\def\StartPos#1%
  {\pushmacro\CurrentPos
   \edef\CurrentPos{mypos:#1}%
   \dontleavehmode\bpos\CurrentPos
   \ignorespaces}

\def\StopPos
  {\removeunwantedspaces
   \epos\CurrentPos
   \popmacro\CurrentPos}

\def\BoxPos#1%
  {\dowithnextbox{\hbox{\hpos{mypos:#1}{\box\nextbox}}}\vbox}

\StartPos{x}\input tufte \StopPos

\StartPos{y}\input zapf \StopPos

\placefigure
  {}
  {\BoxPos{q}{\framed[width=3cm,height=4cm]{}}}

\stoptext

in the *.tui/tuo file you can grep for mypos  



-----------------------------------------------------------------
                                          Hans Hagen | PRAGMA ADE
              Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
     tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com
                                             | www.pragma-pod.nl
-----------------------------------------------------------------



More information about the ntg-context mailing list