我正在尝试制作一个由以表格方式排列的几个其他图形组成的 pdf 图形。我正在使用独立的 documentclass。但是我得到的结果远非最佳。我使用的是适用于 Windows 的 Texstudio,Miktek 2.9 上的 PDFLatex 命令:pdflatex.exe -synctex=1 -interaction=nonstopmode %.tex
当使用独立包的前两个选项(在 MWE 中)时,我得到的 pdf 的上下两侧被裁剪,但左右两侧没有被裁剪。当使用 varwidth 选项为 true 时,我获得了所需的裁剪边缘,但标题标题((a)、(b)、...)都是左对齐的,括号消失了。每当我删除 preview=true 选项时,我都会出现错误。
我附上了 MWE;在原文中,图 (d) 是这个黑匣子的两倍高。
%\documentclass[border=2pt,crop=true,preview=true]{standalone} % works but spaces on sides
%\documentclass[border=2pt,preview=true]{standalone} % works but spaces on sides
%\documentclass[varwidth=true,preview=true]{standalone} % works reduces side spaces, but captions ragged left without brackets
\documentclass[varwidth=true]{standalone} % same
\usepackage[demo]{graphicx}
\usepackage{tabularx}
\usepackage{subcaption}
\renewcommand{\tabularxcolumn}[1]{m{#1}}
\begin{document}
\begin{figure}
\centering
\begin{tabularx}{0.75\textwidth}{X X} % @{}
\begin{tabular}{c}
\begin{subfigure}[]{0.99\linewidth}
\centering
\includegraphics[width=1\textwidth]{}
\caption{}
\label{a}
\end{subfigure} \\
\begin{subfigure}[]{0.99\linewidth}
\centering
\includegraphics[width=1\textwidth]{}
\caption{}
\label{b}
\end{subfigure} \\
\begin{subfigure}[]{0.99\linewidth}
\centering
\includegraphics[width=1\textwidth]{}
\caption{}
\label{c}
\end{subfigure}
\end{tabular}
&
\begin{tabular}{c}
\begin{subfigure}[]{0.99\linewidth}
\centering
\includegraphics[width=0.99\textwidth]{}
\caption{}
\label{d}
\end{subfigure}
\end{tabular}
\end{tabularx}
\end{figure}
\end{document}
我将非常感激您对这里发生的事情以及如何解决此问题的评论。
答案1
首先,我在适当的地方使用了@{}
。然后删除subfigure
和figure
环境。接下来是加载caption
包并使用它\captionof
宏的时候了。这个宏包含在\parbox
(需要)中。
另外,子标题的加载方式如下
\usepackage[labelformat=simple]{subcaption}
\renewcommand\thesubfigure{(\alph{subfigure})}
完整的代码如下
\documentclass{standalone}
\usepackage[demo]{graphicx}
\usepackage{tabularx}
\usepackage{caption}
\usepackage[labelformat=simple]{subcaption}
\renewcommand\thesubfigure{(\alph{subfigure})}
\renewcommand{\tabularxcolumn}[1]{m{#1}}
\begin{document}
\begin{tabularx}{0.75\textwidth}{@{}X X@{}} % @{}
\begin{tabular}{@{}c}
\parbox{\linewidth}{%
\includegraphics[width=\linewidth]{}
\captionof{subfigure}{}
\label{a}
}
\\
\parbox{\linewidth}{%
\includegraphics[width=\linewidth]{}
\captionof{subfigure}{}
\label{b}
}
\\
\parbox{\linewidth}{%
\includegraphics[width=\linewidth]{}
\captionof{subfigure}{}
\label{c}
}
\end{tabular}
&
\begin{tabular}{@{}c}
\parbox{\linewidth}{%
\includegraphics[width=\linewidth]{}
\captionof{subfigure}{}
\label{d}
}
\end{tabular}
\end{tabularx}
\end{document}