36

我正在使用 LaTeX 和图形环境。

我非常熟悉该环境的参数:[htbp],并且我通常也熟悉 LaTeX 默认采用的策略来决定每个图形的放置位置。例如,通过将图形放置在页面的顶部或底部。

我想知道是否有我可以提供的包、宏或一些命令,这样如果我有一个单列文档并且我主要有一个对图形的文本引用,那么这个图形会更多可能会被放置在同一页的引用中?

例如,假设我有一个很长的段落,中间有一个 \ref{FIG:X}。渲染时,一些段落出现在分页符之前,而一些出现在分页符之后。我还可以将 figure 命令放置在整个段落之前和之后的某个位置。有没有办法让它实际放置在与实际参考相同的页面中?

4

9 回答 9

18

我不想听起来消极,但是在某些情况下,如果没有大量“人为”的分页符调整,您想要的几乎是不可能的。

如果标注自然落在页面底部附近,并且图形落在下一页上,则将图形向后移动一页可能会使标注向前移动。

我会建议(尽可能,并取决于数字的确切大小):

  • 用[t](如果必须的话,用[h])放置数字
  • 将数字尽可能靠近“正确”的位置([t] 和 [h] 不同)
  • 使用 \input 包含来自单独文件的数字,这将使您在进行最终调整时更容易移动它们

以我的经验,这是对非可用时间的一大消耗(:-)


在回复 Jon 的评论时,我认为这是一个固有的困难问题,因为 LaTeX 的家伙不是无精打采的。您可能喜欢阅读Frank Mittelbach 的论文

于 2009-01-15T23:03:05.113 回答
12

是的,将 float 包包含在文档顶部,并将 H(大写 H)作为图形说明符:

\usepackage{float}

\begin{figure}[H]
.
.
.
\end{figure}
于 2011-10-06T04:56:46.423 回答
11

您可以随时添加“!” 进入您的浮动选项。这样,latex 会非常努力地将图形放置在您想要的位置(我主要使用 [h!tb]),从而扩展了正常的排版规则。

我找到了另一个解决方案:
使用float -package。这样,您可以将数字放置在想要的位置。

于 2009-01-20T09:45:05.023 回答
4

[h]我通过始终使用浮动(例如数字)上的选项来解决这个问题,以便它们(大部分)去我放置它们的地方。然后当我查看最终草稿时,我通过在 LaTeX 源中移动它来调整浮动的位置。通常这意味着在引用它的段落周围移动它。有时我需要在适当的位置添加分页符。

我发现在 LaTeX 中浮动的默认位置是合理的,但是几乎总是需要手动调整才能使这样的事情恰到好处。(有时,当有很多花车和脚注时,一切都不可能完美。)

该课程的手册memoir一些关于 LaTeX 如何放置浮点数的很好的信息以及一些关于操作算法的建议。

于 2009-01-15T22:44:01.797 回答
2

如果您想在所有人物上强制执行此行为,请尝试

...
\usepackage{float}
\floatplacement{figure}{H}
...
于 2012-01-31T14:20:20.230 回答
2

也许这会对你有所帮助?

\begin{center}
\includegraphics[scale=0.5]{picture_name}
\end{center}    

我认为当你的数字跑掉时最好使用图形命令。

于 2012-02-17T11:16:30.067 回答
1

我有一些有用的意见。因为我对人物的位置有类似的问题。我使用了包“wrapfig”,它可以让数字被文本包裹起来。就像是

...
\usepackage{wrapfig}
\usepackage{graphicx}
...
\begin{wrapfigure}{r}{53pt}
\includegraphics[width=53pt]{cone.pdf}
\end{wrapfigure}

在选项{r}中意味着从右侧放置图形。{l}可用于左侧。

于 2009-02-23T05:01:43.583 回答
1
\setcounter{topnumber}{2}
\setcounter{bottomnumber}{2}
\setcounter{totalnumber}{4}
\renewcommand{\topfraction}{0.85}
\renewcommand{\bottomfraction}{0.85}
\renewcommand{\textfraction}{0.15}
\renewcommand{\floatpagefraction}{0.7}

http://robjhyndman.com/researchtips/latex-floats/

于 2011-02-08T15:35:26.193 回答
0

我发现对此有帮助的一种方法是使用\include{file_with_tex_figure_commands}

输入)

于 2010-01-26T23:21:29.213 回答