我的文档中有几个小窗口longtables
,我想利用它们侧面的空白来放置图片(或者最终放置一些文本),但我不知道该怎么做。我尝试将图片和长表嵌套在另一个长表中,但我认为这是不可能的。我也考虑过,minipage
但这也行不通,因为小页面不会跨越多页。
下图显示了我想要实现的目标。
这是我用来制作文档并随后进行编辑以获取图片的代码。
\documentclass[10pt, a4paper]{article}
\usepackage{graphicx}
\usepackage{lipsum}
\usepackage{longtable, booktabs}
\begin{document}
\lipsum[1-3]
\begin{longtable}{|l|r|}
\toprule
Column 1 & Column 2\\
\midrule
\endhead
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\\bottomrule
\caption{Something}
\end{longtable}
\begin{figure}[!h]
\centering
\includegraphics[width = 0.4\textwidth]{example-image-a}
\caption{Picture A}
\end{figure}
\begin{figure}[!h]
\centering
\includegraphics[width = 0.4\textwidth]{example-image-b}
\caption{Picture B}
\end{figure}
\end{document}
答案1
这会与 longtable 的左边距重叠,并\LTleft
相应增加。您只能将数字放入页眉两次:firsthead
和head
。Longtable 不允许动态页眉或页脚。之后,您必须将它们添加到正确的行。
注意:使用 caption 而不是 capt-of 将导致表格标题错位。
\documentclass[10pt, a4paper]{article}
\usepackage{graphicx}
\usepackage{lipsum}
\usepackage{longtable, booktabs}
\usepackage{capt-of}
\newsavebox{\tempboxa}
\newsavebox{\tempboxb}
\begin{document}
\lipsum[1-3]
\savebox{\tempboxa}{\begin{minipage}{0.4\textwidth}
\includegraphics[width = \linewidth]{example-image-a}
\captionof{figure}{Picture A}
\end{minipage}}%
\savebox{\tempboxb}{\begin{minipage}{0.4\textwidth}
\includegraphics[width = \linewidth]{example-image-b}
\captionof{figure}{Picture B}
\end{minipage}}%
\addtolength{\LTleft}{\dimexpr 0.5\textwidth-\tabcolsep}
\begin{longtable}{|l|r|}
\toprule
\llap{\raisebox{-\height}[0pt][0pt]{\box\tempboxa}\hspace{0.1\textwidth}}Column 1 & Column 2\\
\midrule
\endfirsthead
\toprule
\llap{\raisebox{-\height}[0pt][0pt]{\box\tempboxb}\hspace{0.1\textwidth}}Column 1 & Column 2\\
\midrule
\endhead
\midrule
\endfoot
\bottomrule
\caption{Something}
\endlastfoot
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
text 1 & text 2\\
\end{longtable}
\end{document}