[NTG-context] extra white in framedtext

Hans Hagen pragma at wxs.nl
Mon Jun 12 23:31:06 CEST 2006


Hans van der Meer wrote:
> I did want to typeset material within framedtext with some white 
> before and after each line.
> Appropriate for this seems to me: \null\quad material \quad\null\crlf 
> etc.; the preceding \null preventing disappearence of the first \quad.
>
> The strange thing is that the \null in the first line induces an extra 
> vertical whitespace between the top of the frame and the first line 
> inside the frame.
>
> An impression of the result:
>
> -----------------------
> |� �� �� �� �� �� �� �|� with \null in first line
> |� �� �first line� � �|
> |� �� �second line � �|
> -----------------------
>
> -----------------------
> |� �� �first line� � �|� without \null in first line
> |� �� �second line � �|
> -----------------------
>
> It seems counterintuitive to withhold the \null in the first line in 
> order to have the framing correct.
> A minimal example on which I encountered this follows:
>
> \setupbodyfont[cmr]
interesting, cmr

>
> % gives extra vertical white
> \startframedtext[middle][width=fit]
> \null\quad\type{extra vertical space}\quad\null\crlf
> \null\quad\type{normal vertical space}\quad\null
> \stopframedtext
>
> % normal vertical white
> \startframedtext[middle][width=fit]
> \quad\type{normal vertical space}\quad\null\crlf
> \null\quad\type{normal vertical space}\quad\null
> \stopframedtext
>
> \stoptext
>
> Does this occur elsewhere too?
> Is it normal behaviour of framedtext?

the width=fit option will decompose the box try - as best as can do done with current tex- determine the fittign width; 

in the process, spacing may disappear 

also, framed may place struts automatically 

this may work: 

\startframedtext[middle][width=fit]
\strut\endgraf
\type{extra vertical space}\endgraf
\type{normal vertical space}\endgraf
\strut\endgraf
\stopframedtext

as may this: (smaller strut) 

\startframedtext[middle][width=fit,strut=no]
{\setupstrut[x]\strut}\endgraf\nointerlineskip
\type{extra vertical space}\endgraf
\type{normal vertical space}\endgraf
{\setupstrut[x]\strut}\endgraf\nointerlineskip
\stopframedtext


another option is to do something: 

\framed [width=fit,offset=overlay] \bgroup
  \vskip 1ex
  \quad \framed[width=fit,frame=off] \bgroup
      your content 
  \egroup \quad 
  \vskip 1ex
\egroup

or alike 

Hans 

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