对于 \includegraphics,minipage 中与 `width=\linewidth` 等价的是什么

对于 \includegraphics,minipage 中与 `width=\linewidth` 等价的是什么

width=\linewidth是可接受的输入选项\includegraphics,但不能作为的输入minipage。我们可以用什么X来替换,以便\begin{minipage}{X}具有与相似的宽度设置\includegraphics[width=\linewidth]{file_name}


以下代码用于创建带框架的图形。它几乎可以正常工作,只是我不想将小页面的宽度硬编码为 12 厘米。

\documentclass{article}
\usepackage{graphicx}

\begin{document}\begin{figure}[htbp]
    \centering
    \fbox{
        \begin{minipage}{12 cm}
            \includegraphics[width=\linewidth]{solution_count_satisfiability}
            \caption{caption}
        \label{label}
        \end{minipage}
    }
\end{figure}
\end{document}

答案1

不确定你的问题是什么,只需将其更改12cm\linewidth即可,而且正如 David 已经指出的那样,你需要\fbox从中减去分隔线和线宽,否则框将大于线宽。还会\fbox{<linebreak>导致添加空格,这会将图像稍微向左推,因此你需要用注释将其屏蔽:\fbox{%

最简单的方法是使用adjustbox

\documentclass{article}
\usepackage{adjustbox}% loads graphicx

\usepackage{mwe}% for example text only

\begin{document}

\blindtext

\begin{figure}[htbp]
    \begin{adjustbox}{minipage=\linewidth-2\fboxsep-2\fboxrule,fbox,center}
        \includegraphics[width=\linewidth]{example-image}
        \caption{caption}
        \label{label}
    \end{adjustbox}
\end{figure}

\blindtext

\end{document}

正如 Mico 所说,center如果内容已经和行一样宽,则实际上不需要居中(这里使用键完成)。我添加它是为了更好地衡量,因为您以后可能会更改宽度。

在此处输入图片描述

答案2

\includegraphics要求字符串width=位于宽度参数之前。但是,minipage不要求输入参数带有标签。它不仅不要求它;它不支持它。我们只需传入不带标签的输入参数: \begin{minipage}{\linewidth}

答案3

1.0\textwidth

完整第一行:\begin{minipage}{1.0\textwidth}

当然,比如\begin{minipage}{0.4\textwidth}将宽度设置为正常文本宽度的40%。

相关内容