Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

best way to change page layout for current page only?

1 view
Skip to first unread message

nab...@pacbell.net.nospam

unread,
May 22, 2000, 3:00:00 AM5/22/00
to

Hello,

Suppose one wants to modify the page layout for the current page only,
what is the best way to do that?

Currently, this is what I do

..
\newpage
\thispagestyle{empty}
\addtolength{\topmargin}{-1.1in} %say I want to add more space on top
.
.
\newpage
\addtolength{\topmargin{1.1in} %now I must remember to put it back
.
.


I only do this above very rarly, when I want to have text that must
all be on the same page.

So, my question is this. modifying \topmargin, \headsep, \textheight,
etc.. inside the document, seem to have effect from the point it
is modified to the end of the document. i.e. it will affect the
layout of all the pages from then on. I'd like to modify the
above parameters, but have the effect only last to end of current
page. I suddenly have a feeling that maybe minipage is what I need to
look at for doing that...

thanks,
Nasser


sebastien laforet

unread,
May 22, 2000, 3:00:00 AM5/22/00
to

nab...@pacbell.net.NOSPAM wrote:
>
> Hello,
>
> Suppose one wants to modify the page layout for the current page only,
> what is the best way to do that?
>
> Currently, this is what I do
>
> ..
> \newpage
> \thispagestyle{empty}
> \addtolength{\topmargin}{-1.1in} %say I want to add more space on top
> .
> .
> \newpage
> \addtolength{\topmargin{1.1in} %now I must remember to put it back
> .

maybe you could use \enlargethispage{lgr}

from miktex latex help :

\enlargethispage{size}

\enlargethispage*{size}

Enlarge the \textheight for the current page by the specified amount;
e.g. \enlargethispage{\baselineskip} will allow one additional line.

The starred form tries to squeeze the material together on the page as
much as possible. This is normally used together with an explicit
\pagebreak

--
sébastien laforet

nab...@pacbell.net.nospam

unread,
May 22, 2000, 3:00:00 AM5/22/00
to
In article <39290D4D...@decan.fr>, sebastien says...


>maybe you could use \enlargethispage{lgr}
>
...
>
>Enlarge the \textheight for the current page by the specified amount;
>e.g. \enlargethispage{\baselineskip} will allow one additional line.
>

Thanks. But I did not use it, it seems that the above will not
affect the \topmargin value. i.e. the top of page still have
empty space that I could not get rid. by using

\addtolength{\topmargin}{-1.1in}

it worked.

I ended up using mini pager this way

\newpage
\thispagestyle{empty}
\addtolength{\topmargin}{-1.1in} % push text up more
\begin{minipage}[t][10.5in][t]{7in}
...
...
\end{minipage}
\newpage
\addtolength{\topmargin}{1.1in} %add what we took off again


Nasser


Gert und Ulrike Fischer

unread,
May 22, 2000, 3:00:00 AM5/22/00
to

nab...@pacbell.net.NOSPAM schrieb:
....


> I ended up using mini pager this way
>
> \newpage
> \thispagestyle{empty}
> \addtolength{\topmargin}{-1.1in} % push text up more
> \begin{minipage}[t][10.5in][t]{7in}
> ...
> ...
> \end{minipage}
> \newpage
> \addtolength{\topmargin}{1.1in} %add what we took off again

There is no need to change topmargin if you are using minipage:
\newpage
\thispagestyle{empty}
\vspace*{-1.1in} % push text up more


\begin{minipage}[t][10.5in][t]{7in}
...

\newpage

will do what you want. Even the simple

\newpage
\vspace*{-1.1in} Text
...
\newpage
works ;-)

changing \topmargin is only necessary if you don't know where the page
begins and ends.

Ulrike

Donald Arseneau

unread,
May 22, 2000, 3:00:00 AM5/22/00
to
nab...@pacbell.net.NOSPAM writes:

> Suppose one wants to modify the page layout for the current page only,
> what is the best way to do that?

> \newpage
> \addtolength{\topmargin{1.1in} %now I must remember to put it back

\newpage
\vspace*{-1.1in}

To make asingle page longer at the bottom,

\enlargethispage{1.1in}

Donald Arseneau as...@triumf.ca

nab...@pacbell.net.nospam

unread,
May 22, 2000, 3:00:00 AM5/22/00
to

Thanks to everyone who answered my question. I have learned something new.

I still think that a general package is needed to modify
the layout parameters such that it will only affect the current
page only.

Something similar to \thispagestyle{}.

For example, how about

\thispagelayout{\topmargin{2in}
\headsep{1in}
\footskip{1in}
\textheight{7in}
\textwidth{7in}...}

(of course the above is just an example, just to show what I mean...)

After the current page is processed, the remaining pages will use the
layout values in effect before automatically.

\vspace*{} and> enlargethispage{} modify some attributes, but what about
the rest? There are about 9 parameters that affect a page layout?

thank you,
Nasser


nab...@pacbell.net.nospam

unread,
May 22, 2000, 3:00:00 AM5/22/00
to
In article <rmln11x...@mlinux.pd.infn.it>, Maurizio says...

>
>The documentation states explicitely that these parameters cannot be
>changed after the \begin{document}: RTFM (Lamport, page 181).
>

That is something I did not know. But then how come I was
allowed to modify \topmargin after start of document?

I have this

\addtolength{\topmargin}{-1.1in}

in the middle of the document. and it did change the layout for that
page. Also, I have commands similar to the above to modify some
of the other 9 layout parameters in the middle of the documents, and
I did not get an errors from latex, although they seemed to have
no effect but I am not sure, it was a trial and erros process.

tetex-1.0.6-25, on linux.

Nasser


nab...@pacbell.net.nospam

unread,
May 22, 2000, 3:00:00 AM5/22/00
to
In article <rmln11x...@mlinux.pd.infn.it>, Maurizio says...

>
>The documentation states explicitely that these parameters cannot be
>changed after the \begin{document}: RTFM (Lamport, page 181).
>

That is something I did not know. But then how come I was
allowed to modify \topmargin after start of document?

I have this

\addtolength{\topmargin}{-1.1in}

in the middle of the document. and it did change the layout for that
page. Also, I have commands similar to the above to modify some
of the other 9 layout parameters in the middle of the documents, and
I did not get an errors from latex, although they seemed to have

no effect but I am not sure.

tetex-1.0.6-25, on linux.

Nasser


Maurizio Loreti

unread,
May 23, 2000, 3:00:00 AM5/23/00
to
nab...@pacbell.net.NOSPAM writes:

The documentation states explicitely that these parameters cannot be


changed after the \begin{document}: RTFM (Lamport, page 181).

--
Maurizio Loreti http://www.pd.infn.it/~loreti/mlo.html
Univ. of Padova, Dept. of Physics - Padova, Italy lor...@pd.infn.it

Gert und Ulrike Fischer

unread,
May 23, 2000, 3:00:00 AM5/23/00
to

nab...@pacbell.net.NOSPAM schrieb:


>
> In article <rmln11x...@mlinux.pd.infn.it>, Maurizio says...
>
> >

> >The documentation states explicitely that these parameters cannot be
> >changed after the \begin{document}: RTFM (Lamport, page 181).
> >
>

> That is something I did not know. But then how come I was
> allowed to modify \topmargin after start of document?

Because what Maurizio says is wrong, Lamport states that these parameter
"are normally changed only in the preamble" and "Anomalies may occur if
they are changed in the middle of the document".

It's not very difficult to change the layout of the _next_ page. But
it's not so easy to change the layout of the page in progress. e.g. TeX
has allready used \textwidth. And it's not a very common claim.

Ulrike

>
> I have this
>
> \addtolength{\topmargin}{-1.1in}
>
> in the middle of the document. and it did change the layout for that
> page. Also, I have commands similar to the above to modify some
> of the other 9 layout parameters in the middle of the documents, and
> I did not get an errors from latex, although they seemed to have

Robin Fairbairns

unread,
May 23, 2000, 3:00:00 AM5/23/00
to
Gert und Ulrike Fischer <Nililand...@t-online.de> wrote:
>nab...@pacbell.net.NOSPAM schrieb:
>> In article <rmln11x...@mlinux.pd.infn.it>, Maurizio says...
>> >The documentation states explicitely that these parameters cannot be
>> >changed after the \begin{document}: RTFM (Lamport, page 181).
>>
>> That is something I did not know. But then how come I was
>> allowed to modify \topmargin after start of document?
>
>Because what Maurizio says is wrong, Lamport states that these parameter
>"are normally changed only in the preamble" and "Anomalies may occur if
>they are changed in the middle of the document".
>
>It's not very difficult to change the layout of the _next_ page. But
>it's not so easy to change the layout of the page in progress. e.g. TeX
>has allready used \textwidth. And it's not a very common claim.

what was originally proposed is in fact doable, in the same way that
changes of column state are presently done -- by throwing a page.

an environment saying

\begin{newlayout}{<page parameters>}

is quite feasible. algorithm would be

\clearpage
<set page parameters>
<output routine calculations of goals and targets>
(<suppress floats> -- i suppose)

\end{newlayout} would do

\clearpage
<pop old page parameters>
<redo calculations>
(<restore floats>)

you will note that i'm not offering to write such a thing.
--
Robin Fairbairns, Cambridge

Gert und Ulrike Fischer

unread,
May 23, 2000, 3:00:00 AM5/23/00
to

Robin Fairbairns schrieb:

Yes I know this, I didn't say it's impossible to change the layout of
the page in progress. But I don't think it's a good idea to do it in the
middle of a paragraph or something like that and I wanted Nasser to
think about what he really wants. Changing the output routine is not
easy, and I wouldn't want to do write the thing either ;-).

Ulrike


Donald Arseneau

unread,
May 23, 2000, 3:00:00 AM5/23/00
to
Gert und Ulrike Fischer <Nililand...@t-online.de> writes:

> think about what he really wants. Changing the output routine is not
> easy, and I wouldn't want to do write the thing either ;-).

Just for completeness, I should mention that the \onecolumn and
\twocolumn commands cause LaTeX to pay attention to changes
in the layout parameters.

\clearpage
\setlength\textwidth{10cm}
\onecolumn

Donald Arseneau as...@triumf.ca

0 new messages