如何將圖形放置在 LaTeX 文件中我們希望的確切位置?

如何將圖形放置在 LaTeX 文件中我們希望的確切位置?

對於我正在工作的一本新書,該書正處於最終提交階段,出版商要求我們在範例開始後立即將圖形放入範例中。例如,如果我將圖表作為問題的一部分包含在內,則發布者希望問題結束且解決方案開始後立即顯示該圖。不幸的是,該圖出現在輸出(PDF)文件的下一頁上,我不知道該怎麼做。我的問題是:如何將圖形放置在 LaTeX 文件中我們希望的確切位置?這可以透過任何特殊包的幫助來實現嗎?感謝您的大力幫助!

答案1

不要使用浮動,因為浮動告訴 LaTeX 將內容移動到“最佳位置”。相反,使用或\captionof包裝和環境或類似的環境來補償 的垂直間距的損失。這個範例演示了生成圖形列表的效果很好,但由於 Okular-on-X 錯誤,我現在無法製作像樣的圖像。capt-ofcaptioncenterfigure

\documentclass[]{article}
\usepackage{capt-of}
\usepackage{graphics}

\begin{document}
\listoffigures

\begin{center}\includegraphics{example-image-a}\par\captionof{figure}{A figure.}\end{center}
\begin{center}\includegraphics{example-image-b}\par\captionof{figure}{A figure.}\end{center}
\begin{center}\includegraphics{example-image-c}\par\captionof{figure}{A figure.}\end{center}
\end{document}

答案2

這可以透過任何特殊包的幫助來實現嗎?

所以,如果我理解這個問題,出版商想要以以下順序將所有三個元素放在一起:問題、圖像和解決方案。我不清楚整個區塊是否應該作為 PDF 出現漂浮或完全按照文本中的要求放置在特定段落之間。在這裡,我假設是前者,也就是ProblemSolution一個浮點數。這意味著 LaTeX 將以與環境中的圖像完全相同的方式放置問題解決方案區塊figure(作為浮動),但是所有三個元素始終組合在一起。

只需將所有東西放入figure環境中即可實現您的目標。然而,漂浮由於添加了一些內容,包在這裡非常方便(請參見下面的示例\caption\newfloat。它創建了一個自訂環境,然後裡面的所有東西都將以與其他標準浮動體完全相同的方式移動。

在範例中,請注意ProblemsSolution環境在文字中的確切位置以及它們在 PDF 中的顯示位置。例如,第一個問題放置在第一段之後,但它出現在 PDF 中下一頁的頂部,因為 LaTeX 找不到足夠的空間。第二個和第三個ProblemSolution在 PDF 中顯示為要求的因為現在有足夠的空間容納他們。在所有三種情況下,所有內容仍然組合在一起。

這個例子:

\documentclass[12pt]{book}
\usepackage{graphicx}
\usepackage{float}
\usepackage{caption}
\usepackage[colorlinks]{hyperref}
\usepackage{kantlipsum}

\newfloat{problem}{tbhp}{psf}[chapter]
\floatname{problem}{Problem}
\newenvironment{ProblemSolution}{%
  \begin{problem}
    \noindent\leftskip=2cm\rightskip=2cm\small
}{\end{problem}}
\captionsetup[problem]{font=small,labelfont=bf,width=\dimexpr\linewidth-4cm}%


% \usepackage{showframe}
% \renewcommand*\ShowFrameLinethickness{0.2pt}
% \renewcommand*\ShowFrameColor{\color{blue}}

\title{The Title}
\author{First Last}
\date{}


\begin{document}
\maketitle
\listof{problem}{List of Problems}

\chapter{First one}
First paragraph.
\kant[1]

\begin{ProblemSolution}
  \paragraph{Problem:}
  Some notes about a problem that should be a little longer and span multiple lines.

  \begin{center}
    \includegraphics[width=0.5\linewidth,height=0.25\linewidth]{example-image-a}
    \caption{Caption about the first problem}
  \end{center}

  \paragraph{Solution:}
  Something about solution.
\end{ProblemSolution}

Second paragraph.
\kant[2]

Third paragraph.
\kant[3]

Fourth paragraph.
\kant[4]

\begin{ProblemSolution}
  \paragraph{Problem:}
  Some notes about a problem that should be a little longer and span multiple lines.

  \begin{center}
    \includegraphics[width=0.5\linewidth,height=0.25\linewidth]{example-image-b}
    \caption{Caption about the second problem}
  \end{center}

  \paragraph{Solution:}
  Something about solution.
\end{ProblemSolution}


\chapter{Second two}
Fifth paragraph.
\kant[5-6]

\begin{ProblemSolution}
  \paragraph{Problem:}
  Some notes about a problem that should be a little longer and span multiple lines.

  \begin{center}
    \includegraphics[width=0.5\linewidth,height=0.25\linewidth]{example-image-c}
    \caption{Caption about the third problem}
  \end{center}

  \paragraph{Solution:}
  Something about solution.
\end{ProblemSolution}

Sixth paragraph.
\kant[7]
\end{document}

在此輸入影像描述

相關內容