![如何才能将两张图片精确地放在一起而没有线条或空格?](https://linux22.com/image/304450/%E5%A6%82%E4%BD%95%E6%89%8D%E8%83%BD%E5%B0%86%E4%B8%A4%E5%BC%A0%E5%9B%BE%E7%89%87%E7%B2%BE%E7%A1%AE%E5%9C%B0%E6%94%BE%E5%9C%A8%E4%B8%80%E8%B5%B7%E8%80%8C%E6%B2%A1%E6%9C%89%E7%BA%BF%E6%9D%A1%E6%88%96%E7%A9%BA%E6%A0%BC%EF%BC%9F.png)
如何才能将两张图片精确地放在一起,没有线条或空格。我在下面添加了图片示例,该图片由两张图片组成(标题图片和智能手机图片)
我感谢任何帮助。
答案1
插入的图像\includegraphics
就像一个大字母。通过删除 TeX 插入的行间粘连,即可实现目的。
与段落的交互可能很复杂,因此最好采用较低级别的命令,在这种情况下:
\newcommand{\twoobjects}[2]{%
\leavevmode\vbox{\hbox{#1}\nointerlineskip\hbox{#2}}%
}
完整示例:
\documentclass{article}
\usepackage{graphicx}
\newcommand{\twoobjects}[2]{%
\leavevmode\vbox{\hbox{#1}\nointerlineskip\hbox{#2}}%
}
\begin{document}
\twoobjects
{\includegraphics[trim=5 5 5 5,clip,width=.2\textwidth]{example-image-a}}
{\includegraphics[trim=5 5 5 5,clip,width=.2\textwidth]{example-image-b}}
\end{document}
该trim=5 5 5 5,clip
部分仅用于移除包提供的示例图像中的边框mwe
,并更清楚地表明未插入垂直空间。除非您想移除边框(调整修剪量),否则不需要它。
没有什么可以阻止你在“图形”环境中使用\twoobjects
,例如,
\begin{figure}
\centering
\twoobjects
{\includegraphics[trim=5 5 5 5,clip,width=.2\textwidth]{example-image-a}}
{\includegraphics[trim=5 5 5 5,clip,width=.2\textwidth]{example-image-b}}
\caption{Whatever}
\end{figure}
其实一个能仅使用 LaTeX 工具来完成,但效率会受到影响。
\documentclass{article}
\usepackage{graphicx}
\newcommand{\twoobjects}[2]{%
\leavevmode\vbox{\hbox{#1}\nointerlineskip\hbox{#2}}%
}
\newcommand{\TWOOBJECTS}[2]{%
{\renewcommand{\arraystretch}{0}%
\begin{tabular}[b]{@{}c@{}}#1\\#2\end{tabular}}%
}
\begin{document}
\twoobjects
{\includegraphics[trim=5 5 5 5,clip,width=.2\textwidth]{example-image-a}}
{\includegraphics[trim=5 5 5 5,clip,width=.2\textwidth]{example-image-b}}
\TWOOBJECTS
{\includegraphics[trim=5 5 5 5,clip,width=.2\textwidth]{example-image-a}}
{\includegraphics[trim=5 5 5 5,clip,width=.2\textwidth]{example-image-b}}
\end{document}
您可以检查输出是否相同。可以认为这种tabular
方法很有优势,因为[b]
选项可以改为[c]
或[t]
:
\newcommand{\TWOOBJECTS}[3][c]{%
{\renewcommand{\arraystretch}{0}%
\begin{tabular}[#1]{@{}c@{}}#2\\#3\end{tabular}}%
}
和电话
\TWOOBJECTS
{\includegraphics[trim=5 5 5 5,clip,width=.2\textwidth]{example-image-a}}
{\includegraphics[trim=5 5 5 5,clip,width=.2\textwidth]{example-image-b}}
\TWOOBJECTS[t]
{\includegraphics[trim=5 5 5 5,clip,width=.2\textwidth]{example-image-a}}
{\includegraphics[trim=5 5 5 5,clip,width=.2\textwidth]{example-image-b}}
\TWOOBJECTS[b]
{\includegraphics[trim=5 5 5 5,clip,width=.2\textwidth]{example-image-a}}
{\includegraphics[trim=5 5 5 5,clip,width=.2\textwidth]{example-image-b}}
将分别产生中心、顶部和底部对齐。使用 TeX 基元的方法相当于该[b]
选项。
决定是否要以效率和灵活性来权衡。
答案2
如果需要重叠,可选参数0pt
可以更改为负数。
\documentclass{article}
\usepackage{stackengine,graphicx}
\begin{document}
\stackon[0pt]{\includegraphics[width=3in]{example-image-A}}%
{\includegraphics[width=3in]{example-image-B}}
\end{document}
答案3
\includegraphics
不添加任何空格,因此如果\parskip
和\lineskip
为零,那么您所需要的只是一个空白行:
\includegraphics{a}
\includegraphics{b}
答案4
垂直对齐内容的最简单方法是使用表格。您还可以通过使用 \parbox 或 minipage 限制可用空间来强制它们垂直对齐。在这两种情况下,仍然会存在一个小间隙,可以通过调整来消除。
\documentclass{article}
\usepackage{graphicx}
\usepackage{mwe}
\newlength{\desired}
\setlength{\desired}{2in}
\begin{document}
\noindent\hfil%
\fbox{\begin{tabular}{@{}c@{}}
\includegraphics[width=\desired]{example-image-a}\\[-4pt]
\includegraphics[width=\desired]{example-image-b}
\end{tabular}}%
\hfil%
\fbox{\parbox{\desired}{%
\includegraphics[width=\desired]{example-image-a}\vspace{-1.5pt}
\includegraphics[width=\desired]{example-image-b}
}}
\end{document}