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

Full page width figure just below title/author?

623 views
Skip to first unread message

Jonathan Dinerstein

unread,
Jul 20, 2004, 11:07:10 AM7/20/04
to
I'm working in a two-column format. I'd like to place a full page
width figure just below the title and author info on the first page.
I've tried \begin{figure*}[t!] immediately after the creation of the
title in my .tex file, but this always puts the figure at the top of
the second page. Specifically, I want the figure to come before any
body text. Does anyone know how I can do this?

In case some extra info helps, I'm using the SIGGRAPH document class.
Thanks in advance!

Scott Pakin

unread,
Jul 20, 2004, 1:13:19 PM7/20/04
to
Jonathan Dinerstein wrote:
> I'm working in a two-column format. I'd like to place a full page
> width figure just below the title and author info on the first page.
> I've tried \begin{figure*}[t!] immediately after the creation of the
> title in my .tex file, but this always puts the figure at the top of
> the second page. Specifically, I want the figure to come before any
> body text. Does anyone know how I can do this?

Try some of the suggestions listed in the UK TeX FAQ:

http://www.tex.ac.uk/cgi-bin/texfaq2html?label=floats

-- Scott

Jonathan Dinerstein

unread,
Jul 20, 2004, 6:12:45 PM7/20/04
to
Scott Pakin <scot...@pakin.org> wrote in message news:<40FD52AF...@pakin.org>...

Okay. I just tried loosening latex's placement rules (as suggested in
the FAQ), but that didn't do the job. I also wasn't able to see
anything on there about a package that would specificall allow me to
do this. Do you have any more specific ideas?

Thanks.

Scott Pakin

unread,
Jul 20, 2004, 7:32:37 PM7/20/04
to
Jonathan Dinerstein wrote:
> Okay. I just tried loosening latex's placement rules (as suggested in
> the FAQ), but that didn't do the job. I also wasn't able to see
> anything on there about a package that would specificall allow me to
> do this. Do you have any more specific ideas?

How about specifying the figure as a non-floating object? As a quick
test, just stick in an \includegraphics without a figure* environment
right after the \maketitle or wherever you want the figure to appear.
If that works then you can add a caption using the [H] placement option
provided by the float package.

-- Scott

Donald Arseneau

unread,
Jul 20, 2004, 8:17:19 PM7/20/04
to
jondin...@yahoo.com (Jonathan Dinerstein) writes:

> I'm working in a two-column format. I'd like to place a full page
> width figure just below the title and author info on the first page.

I.e., not a float.

> I've tried \begin{figure*}[t!]

That floats. Even if it could appear on the current page (figure*
never can) it would be above the title and author info.

You should follow the suggestions for a "one column abstract":
http://www.tex.ac.uk/cgi-bin/texfaq2html?label=onecolabs
but use \includegraphics instead of the abstract.

> In case some extra info helps, I'm using the SIGGRAPH document class.

That may complicate things. I don't know it.


Donald Arseneau as...@triumf.ca

Jonathan Dinerstein

unread,
Jul 21, 2004, 10:30:14 AM7/21/04
to
Scott Pakin <scot...@pakin.org> wrote in message news:<40FDAB95...@pakin.org>...


I just tried this one, and I got a little closer to my goal.
Immediatley after \maketitle, I immediately did \includegraphics. I
made the figure width 2.0\linewidth. However, the text in the second
column overlaps with the figure, and the caption only covers the first
column. Evidently latex doesn't like the fact that the figure is
supposed to be in a single column but I'm forcing it to go beyond. Do
you have any additional ideas?

Thanks again for your help =).

Jonathan Dinerstein

unread,
Jul 21, 2004, 10:39:26 AM7/21/04
to
Donald Arseneau <as...@triumf.ca> wrote in message news:<yfiisci...@triumf.ca>...

Okay, I just tried the one column idea and it sort of worked.
Immediately after \maketitle, I did:

\begin{@twocolumnfalse}
\begin{figure}
\includegraphics[width=2.0\linewidth]{...}
...
\end{figure}
\end{@twocolumnfalse}

This gave me a full page width figure right after the title/authors.
However, the test in the second column overlaps with the figure and
the caption only fills the first column. Any idea why this is? Latex
didn't yell at me about my usage of @twocolumnfalse.

Thanks for your help.

Ulrike Fischer

unread,
Jul 21, 2004, 11:47:32 AM7/21/04
to
jondin...@yahoo.com (Jonathan Dinerstein) schrieb:


>>
>> You should follow the suggestions for a "one column abstract":
>> http://www.tex.ac.uk/cgi-bin/texfaq2html?label=onecolabs
>> but use \includegraphics instead of the abstract.
>>
>

> Okay, I just tried the one column idea and it sort of worked.
> Immediately after \maketitle, I did:
>
> \begin{@twocolumnfalse}
> \begin{figure}
> \includegraphics[width=2.0\linewidth]{...}
> ...
> \end{figure}
> \end{@twocolumnfalse}

That isn't a good idea. If you don't want something to float, don't put
it in a figure-environment.


--
Ulrike Fischer
e-mail: zusätzlich meinen Vornamen vor dem @ einfügen.
e-mail: add my first name between the news and the @.

Donald Arseneau

unread,
Jul 21, 2004, 4:07:35 PM7/21/04
to
jondin...@yahoo.com (Jonathan Dinerstein) writes:

> > > I've tried \begin{figure*}[t!]
> >
> > That floats. Even if it could appear on the current page (figure*
> > never can) it would be above the title and author info.
> >
> > You should follow the suggestions for a "one column abstract":
> > http://www.tex.ac.uk/cgi-bin/texfaq2html?label=onecolabs
> > but use \includegraphics instead of the abstract.

> \begin{@twocolumnfalse}


> \begin{figure}
> \includegraphics[width=2.0\linewidth]{...}
> ...
> \end{figure}
> \end{@twocolumnfalse}

Maybe I wasn't clear enough. ....

Use \includegraphics *ALONE* instead of the abstract ... no
figure environment!

> This gave me a full page width figure right after the title/authors.
> However, the test in the second column overlaps with the figure and
> the caption only fills the first column. Any idea why this is?

You didn't show, but I can only guess that you didn't follow the FAQ
answer at all! You need to put the \maketitle and the \includegraphics
in the optional argument of \twocolumn:

\twocolumn[
\begin{@twocolumnfalse}
\maketitle
\includegraphics[width=\linewidth]{...}
\end{@twocolumnfalse}
]

That's \linewidth, not 2\linewidth too!


Donald Arseneau as...@triumf.ca

Jonathan Dinerstein

unread,
Jul 22, 2004, 10:29:20 AM7/22/04
to
> > \begin{@twocolumnfalse}
> > \begin{figure}
> > \includegraphics[width=2.0\linewidth]{...}
> > ...
> > \end{figure}
> > \end{@twocolumnfalse}
>
> Maybe I wasn't clear enough. ....
>
> Use \includegraphics *ALONE* instead of the abstract ... no
> figure environment!

That's one of the things I tried. Whether I use \begin{figure} or not
(or even \begin{figure*}), the output is exactly the same. The figure
ends up being at the beginning of the first column, with a width of
only one column.

> > This gave me a full page width figure right after the title/authors.
> > However, the test in the second column overlaps with the figure and
> > the caption only fills the first column. Any idea why this is?
>
> You didn't show, but I can only guess that you didn't follow the FAQ
> answer at all! You need to put the \maketitle and the \includegraphics
> in the optional argument of \twocolumn:
>
> \twocolumn[
> \begin{@twocolumnfalse}
> \maketitle
> \includegraphics[width=\linewidth]{...}
> \end{@twocolumnfalse}
> ]

For whatever reason, using \twocolumn[] isn't being allowed. I get
the following error message:

! Argument of \Gin@ii has an extra }.
<inserted text>
\par
1.89 \includegraphics[width=1.0\linewidth]
{overview.eps}

This error message goes away if I leave out \twocolumn[] but still use
\begin{@twocolumnfalse}. I then get the output described above (the
figure at the beginning of the first column but only one column wide).

I'm wondering if what I'm trying to do can even be done. I did some
additional web searching, and finally found the following web site:

http://www.tex.ac.uk/cgi-bin/texfaq2html?label=2colfloat

According to this page, the FAQ maintainers don't know of any way to
put a two-column figure on the first page. However, they suggest that
the package "midfloat" might do the trick. I tried this in the
following way, but get the following error:

\maketitle
\begin{strip}
\includegraphics[width=1.0\linewidth]{overview.eps}
\end{strip}

---

! LaTeX Error: Strip needs more place!.

See the LaTeX manual or LaTeX companion for explanation.
Type H <return> for immediate help.
...

1.96 \end{strip}

I just barely got the latest version of midfloat package, and I'm
using the latest version of MikTex. However, the documentation on
this package is quite sparse so I'm not sure if I've simply made a
little mistake. Does anyone know if I've done something wrong here,
or if this package won't accomplish what I'm looking for?

Thanks again for the help!

David Carlisle

unread,
Jul 22, 2004, 10:56:46 AM7/22/04
to
jondin...@yahoo.com (Jonathan Dinerstein) writes:

> > You didn't show, but I can only guess that you didn't follow the FAQ
> > answer at all! You need to put the \maketitle and the \includegraphics
> > in the optional argument of \twocolumn:
> >
> > \twocolumn[
> > \begin{@twocolumnfalse}
> > \maketitle
> > \includegraphics[width=\linewidth]{...}
> > \end{@twocolumnfalse}
> > ]
>
> For whatever reason, using \twocolumn[] isn't being allowed. I get
> the following error message:
>
> ! Argument of \Gin@ii has an extra }.
> <inserted text>
> \par
> 1.89 \includegraphics[width=1.0\linewidth]
> {overview.eps}
>


you have to remember that (always in latex) [] parsing goes from the [
to the next ] at the same {} group level, nested [ [] ] brackets aren't
automatically paired off as { {} } groups are, so

the optional argument to twocolumn in the above is _just_


\begin{@twocolumnfalse}
\maketitle
\includegraphics[width=\linewidth

and so that expanded somewhere in the internals of the
\twocolumn comand and then \includegraphics starts looking for the
closing ] of its optional argument and hits the end of a } group and
gives up with the error you quote.

The way to get a ] into an optional argument is always put it inside {}
so

\twocolumn[{
\begin{@twocolumnfalse}
\maketitle
\includegraphics[width=\linewidth]{...}
\end{@twocolumnfalse}
}]

David

Jonathan Dinerstein

unread,
Jul 22, 2004, 3:35:45 PM7/22/04
to
> The way to get a ] into an optional argument is always put it inside {}
> so
>
> \twocolumn[{
> \begin{@twocolumnfalse}
> \maketitle
> \includegraphics[width=\linewidth]{...}
> \end{@twocolumnfalse}
> }]
>
>
> David

It works =) !!! Mostly... This finally gets the figure to be
two-column right below the title/author. However, I can't make this a
float and thereby get a caption. I try to make it a float as follows
and get the following error:

\twocolumn[{
\begin{@twocolumnfalse}
\maketitle
\begin{figure}[h]
\includegraphics[width=1.0\linewidth]{overview.eps}
\caption{test}
\end{figure
\end{@twocolumnfalse}
}]

---

! LaTeX Error: Not in outer par mode.

1.102 }]

I tried fiddling with how I create the float, etc, but kept getting
the exact same error. Is it simply impossible to do a float in the
optional argument field of \twocolumn? If so, is there an alternative
way to create a caption and still have figure numbering correct?

Thanks again for all the help! I think this would be a good problem
to add to a latex FAQ somewhere...

Scott Pakin

unread,
Jul 22, 2004, 4:02:24 PM7/22/04
to
Jonathan Dinerstein wrote:
> It works =) !!! Mostly... This finally gets the figure to be
> two-column right below the title/author. However, I can't make this a
> float and thereby get a caption.

There are packages that let you add captions to non-floats. See
http://www.tex.ac.uk/cgi-bin/texfaq2html?label=captsty

-- Scott

Jonathan Dinerstein

unread,
Jul 26, 2004, 11:05:35 AM7/26/04
to
All right, everything is now working great (to put a two-column figure
below the title/author on the first page) except for one little
thing... I have to use \thanks to add the authors' email addresses as
footnotes. However, the \thanks appears to be ignored due to calling
\maketitle from within the optional argument of \twocolumn. Is there
anything I can do to still make these show up, or somehow call \thanks
elsewhere?

Thanks again for all the help.

David Carlisle

unread,
Jul 26, 2004, 11:54:37 AM7/26/04
to

If you are defining this in a package somewhere, place

\global\let\wibble\@thanks

anwhere in your new maketitle defininiton

then stick \wibble after the closing ] of the twocolumn.

if you are putting the commands directly into the document you'll need
to make @ a letter first with
\@makeatletter

so that you can refer to the \@thanks command.

David

0 new messages