我正在使用以下程式碼
\documentclass{article}
\usepackage{graphicx}
\usepackage{subfig}
\begin{document}
\begin{figure}[t]%
\centering
\subfloat[Image 1\label{fig:img1}]{{\includegraphics[scale=0.05]{img1.png} }}%
\subfloat[Image 2\label{fig:img2}]{{\includegraphics[scale=0.05]{img2.png} }}%
\caption{Two images}%
\label{fig:imgs}%
\end{figure}
\end{document}
然而img1和img2具有不同的高度但相同的寬度。如何將它們顯示在垂直對齊位置?基本上兩個圖像的中心應該在同一水平線上。
答案1
像這樣?
上圖的可能解決方案之一是將較小的圖像包含在tikz
節點中,其最小高度等於較高圖像的高度。這意味著,您需要先測量其高度,然後相應地設定 TikZ 節點大小:
\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage{subfig}
\usepackage{tikz}
\newlength\imageheight% for determining height of taller image
\begin{document}
\begin{figure}[ht]%
% measurement of height of the taller image
\settoheight{\imageheight}{\includegraphics[height=3cm]{img1.png}}
\centering
% since I haven't your image,
% I simulate their different heights with prescribed "height"
\subfloat[Image 1\label{fig:img1}]{\includegraphics[height=3cm]{img1.png}}%
\hfil
\subfloat[Image 2\label{fig:img2}]{\tikz\node[minimum height=\imageheight]{\includegraphics[height=2cm]{img2.png}}; }%
\caption{Two images}%
\label{fig:imgs}%
\end{figure}
\end{document}
答案2
你可以使用minipage
網格:
\documentclass{article}
\usepackage{subcaption}
\usepackage{mwe}
\begin{document}
\begin{figure}
\centering
\begin{minipage}[c]{.5\textwidth}
\centering
\includegraphics[scale=0.5]{example-image-a}
\end{minipage}%
\begin{minipage}[c]{.5\textwidth}
\centering
\includegraphics[scale=0.25]{example-image-b} \\
\end{minipage}
\begin{minipage}{.5\textwidth}
\subcaption{Image 1}\label{fig:img1}
\end{minipage}%
\begin{minipage}{.5\textwidth}
\subcaption{Image 2\label{fig:img2}}%
\end{minipage}
\caption{Two images}%
\label{fig:imgs}%
\end{figure}
\end{document}