1

I'm trying to set an entire image with a frame box at the top of the page using the environment figure*. The problem comes with the last row of the text in the right column (or left one) after inserting the image that is placed on the next page. So, I have an unbalanced text between left and right. How can I solve this issue? I'm not an expert, but I'll try the best I can do. Thanks in advance.

Here below there is the figure* environment I'm using. The rest of the page is only text formatted in two columns, with sometimes unbalanced text column.

%
\begin{figure*}
\fbox {\parbox{0.98\textwidth}{
\subfloat[1]{\includegraphics[scale=0.218]{pic1.png}}
\subfloat[2]{\includegraphics[scale=0.218]{pic2.png}}
}}
\caption{caption}
\label{fig:fig}
\end{figure*}
%
Giacomo
  • 11
  • 1
    The figure* should merely reserve a fixed area at the top of the page. All that happens otherwise is that the vertical space remaining on the page is decreased, so the columns will be shorter. One possible cause of unexpected space in the text is if the figure environment has \begin{center} ... \end{center} or some similar environment wrapped around it; that's misguided -- anything that is part of a figure should be placed inside its environment. But to be sure, more information is needed. – barbara beeton Jun 02 '21 at 01:13
  • Another thought ... you have % before and after the figure. Unless there is a blank line or \par preceding the first one, the figure would be encountered in horizontal mode. It's always a good idea to input a figure* in vertical mode. (Also true for an ordinary figure, although in exceptional circumstances, placing that input in the middle of a long paragraph may work out okay.) – barbara beeton Jun 02 '21 at 01:28
  • @barbarabeeton Hi Barbara, thanks for the reply. What kind of information do you need? Uhm, I'm using a ieeeconf.cls on overleaf with some override settings (it's a template), but I tried to modify something in order to unlock some of my preferences in layout. If I don't use the figure* environment, the columns end are perfectly balanced, so the problem is still the same. In particular, the document is defined as \documentclass[letterpaper, 10 pt, conference]{ieeeconf}, but I don't know if this influences the result. – Giacomo Jun 03 '21 at 00:06
  • Modifying the baselineskip to 1.1 or 1.2 the most of the columns resulted balanced, but I think that's a temporarily solution. Also, I don't know if I have to add more stuff like other sections or images, so I've some left time to check the problem if you can suggest some tricks. Thanks in advance! – Giacomo Jun 03 '21 at 00:11
  • Do any of the pages following a page with unbalanced columns start with a new section or a large display? Also, how much of the page does the figure* occupy? You could try using \enlargethispage{<n\baselineskip>} where n can be positive to make it longer or negative to make it shorter; on a 2-column page, it works in the current column, not on both. If you can concoct a very brief (3-4 pages?) example that demonstrates the problem, edit it into your question. (Use dummy text if you can get that to work.) – barbara beeton Jun 03 '21 at 01:22
  • It's funny. I did many attempts to create a similar situation of mine using \lipsum and random figures. IT WORKS PERFECTLY. Every column is balanced. So, I think in the end it's a specific problem with my layout text... Well, I'll try to answer your questions: the first problem starts with a new section after the figure*, the columns are unbalanced (with both \linespread 1.2 or just 1, but if I use 1.2 the remaining columns fit perfectly, while with 1 following columns are unbalanced); figure* occupies around 1/3 of the page; using \enlargethispage no appearing solution. – Giacomo Jun 03 '21 at 03:53
  • Okay. A new section near the bottom of a page, when there is space for no more than one line in addition to the section heading, may preferentially go to a new page (or column), especially if there is no stretch allowed between paragraphs. This does depend on the settings in the class file, package, or document preamble. Shortening the other column by one line should help here (affecting the next page if the shortened column is the one on the right). – barbara beeton Jun 03 '21 at 12:19
  • I see... Uhm, does exist a specific command to reduce the space you're talking about? Is that the same as \enlargethispage? Considering that I write the text before and then I place all the figures I need just for a try, referring to the section which the image belongs to, where do I put the figure*? After the end of the section? Before? In the middle?

    Anyway, thanks a lot for helping me with your time!

    – Giacomo Jun 03 '21 at 20:25
  • This gets complicated. A figure* must be input before the page where you want it; once anything is on the page, the full-width figure is deferred until the next page. I can't say exactly how a section heading behaves near the bottom of a page/column without knowing how it's defined (which depends on document class and packages). My experience is mostly from "adjusting" documents prepared by someone else, but I've always had the entire file, so I had all that information. – barbara beeton Jun 03 '21 at 23:21
  • If you haven't solved the problem, I've been working on a paper that explains what I've learned about getting floats into the places where they're wanted in practical terms (not the details of how they work, which has been explained by Frank Mittelbach). So far it's just an outline, but if you think it might help, you can send me email (bnb at tug.org) and I'll send you a copy. – barbara beeton Jun 05 '21 at 01:29
  • Hi Barbara, sorry if I didn't reply. I'm still waiting for directives from my supervisor to add or modify something. As soon as I have something more concrete in case I write here. Meanwhile, I'll try to better format the text manually and see how far I can go. Sorry for the trouble! – Giacomo Jun 07 '21 at 14:11

0 Answers0