提问于:
浏览数:
6972
图片我两张高度不同的图片,希望能够顶对齐,不知道怎么弄了,minipage加[t]也没起作用
```tex
\documentclass{article}
\usepackage{graphicx}
\begin{document}
\begin{minipage}[t]{0.45\linewidth}
\includegraphics[width=\textwidth]{1.png}
\end{minipage}
\begin{minipage}[t]{0.45\linewidth}
\includegraphics[width=\textwidth]{2.jpg}
\end{minipage}
\end{document}
```
下面是测试图片,也可以随便截取![](https://wenda.latexstudio.net/data/attach/191018/pDVjbBO9.jpg)![](https://wenda.latexstudio.net/data/attach/191018/AuGgOHB9.png)
希望得到下面效果
![](https://wenda.latexstudio.net/data/attach/191018/kh7jUFtB.png)
4 回答
1
`minipage` 环境的 `[t]` 选项,是指按照环境内容的第一行基线对齐。对应的,`[b]` 是在末一行对齐。你的内容里只有一行,所以无论用 `[t]` 还是 `[b]`,效果是相同的。
从便利的角度,可以使用 `graphbox` 宏包。它给 `\includegraphics[]{}` 增加了几个选项,其中就有控制纵向对齐的 `align=t|c|b` 选项。
```tex
\documentclass{article}
%\usepackage{graphicx}
\usepackage{graphbox} % loads graphicx
\usepackage{mwe}
\begin{document}
\newcommand{\test}[1]{%
xx
\includegraphics[height=3cm, #1]{example-image}
\includegraphics[height=2cm, #1]{example-image}
xx\par
}
\test{}
\test{align=t}
\test{align=c}
\end{document}
```
![](https://wenda.latexstudio.net/data/attach/191019/h4JZQBsP.png)
`adjustbox` 可以认为是 `graphbox` 的进阶版,可配置项众多,有时会有副作用。
-
非常感谢!这个操作确实很简单 – 沈阳-为啥不长草 2019-10-19 17:44 回复
1
两个方法,第一个方法就是用 `tabular` 环境,如下
```tex
\begin{tabular}{p{0.5\textwidth} p{0.5\textwidth}}
\vspace{0pt} \includegraphics[width=0.49\textwidth]{example-image-a} &
\vspace{0pt} \includegraphics[width=0.49\textwidth]{example-image-b}
\end{tabular}
```
第二个用 `adjustbox`
```tex
\documentclass{article}
\usepackage[export]{adjustbox}% http://ctan.org/pkg/adjustbox
\begin{document}
\begin{figure}
\centering
\includegraphics[scale=0.5,valign=t]{example-image-a}
\includegraphics[scale=0.3,valign=t]{example-image-b}
\caption{A caption\label{fig:scaled_diss}}
\end{figure}
\end{document}
```
0
可以考虑使用floatrow宏包,请参考:[https://wenda.latexstudio.net/article-5047.html](https://wenda.latexstudio.net/article-5047.html "https://wenda.latexstudio.net/article-5047.html")。
0
其实还有一个办法可以骗一下 `minipage`。在`minipage`内容的最前面加上 `\vspace{0pt}` 这样,`\vspace{0pt}` 就是 `minipage`内容的第一行,他们是零高度,图片自然就顶部对齐了。
```tex
\documentclass{article}
\usepackage{graphicx}
\begin{document}
\begin{minipage}[t]{0.45\linewidth}
\vspace{0pt}
\includegraphics[height=2cm]{example-image-a.pdf}
\end{minipage}
\begin{minipage}[t]{0.45\linewidth}
\vspace{0pt}
\includegraphics[height=4cm]{example-image-a.pdf}
\end{minipage}
\end{document}
```
-
回复 Chennanzhang :不是并排。而是,「文字 \par 两个包含\vspace{0pt}和图片的 minipage」这种情况下,文字和 minipage 之间会有额外的纵向间距。 – 论坛 github.com/CTeX 2019-10-29 00:57 回复
-
-
-
-
你的回答
请登录后回答
你的回答将会帮助更多人,请务必认真回答问题。