![在枚举描述下添加图像/图形(文本中的自定义位置)](https://linux22.com/image/395182/%E5%9C%A8%E6%9E%9A%E4%B8%BE%E6%8F%8F%E8%BF%B0%E4%B8%8B%E6%B7%BB%E5%8A%A0%E5%9B%BE%E5%83%8F%2F%E5%9B%BE%E5%BD%A2%EF%BC%88%E6%96%87%E6%9C%AC%E4%B8%AD%E7%9A%84%E8%87%AA%E5%AE%9A%E4%B9%89%E4%BD%8D%E7%BD%AE%EF%BC%89.png)
这个问题可能很容易回答,但我已经搜索了一段时间却没有任何结果。我想知道它是否能够在文档的特定位置插入图像,即在枚举列表的(自定义)描述下。描述起来相当复杂,而且由于一张图片有 1000 个字,下面是我想用 LaTeX 制作的屏幕截图:
原始结果:
我想要实现的目标:
这可行吗?
我正在包含生成上图中文本的代码。
\documentclass[10pt]{report}
\usepackage[a4paper,top=20mm, bottom=15mm, left=20mm, right=20mm, includefoot]{geometry}
\usepackage{amsmath,amssymb,amsthm,enumitem}
\begin{document}
\begin{enumerate}[leftmargin=*,labelindent=16pt,label=\bfseries 02/2016 \textendash \: 02/2019:]
\item \textbf{This is some random text}\\ Some more text\\
More text.\\
More text.
\end{enumerate}
\end{document}
答案1
使用enumitem
,您可以执行以下操作:
\documentclass{article}
\usepackage{amsmath}
\usepackage{enumitem}
\usepackage{graphicx}
\usepackage{calc}
\newcommand*{\myIncludeImgInList}[1]{%
\makebox[0pt][r]{%
\raisebox{-\height-0.2cm}[0pt][0pt]{%
\includegraphics[width=\labelwidth]{#1}}\hspace*{0.2cm}}%
}
\begin{document}
\begin{enumerate}[leftmargin=*,labelindent=16pt,
label=\bfseries 02/2016 \textendash \: 02/2019:]
\item \myIncludeImgInList{example-image}%
\textbf{This is some random text}\\ Some more text\\
More text.\\
More text.
\end{enumerate}
\end{document}
但是,由于此方法中图像不占用任何垂直空间(否则,它会将文本的第二行向下移动),因此您必须在此块后手动添加空间以容纳即将到来的内容,否则它将与图像重叠(如果图像比其右侧的文本高)。 出于这个原因,我宁愿在这里使用tabular
inside atabularx
环境:
\documentclass{article}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{tabularx}
\usepackage{lipsum}
\newenvironment{myLeftColumn}[1][1.5]{%
\renewcommand{\arraystretch}{#1}%
\begin{tabular}[t]{@{}l@{}}%
}{%
\end{tabular}%
}
\begin{document}
\begingroup % to limit the scope of \renewcommand{\arraystretch}{...}
\noindent
\renewcommand{\arraystretch}{2}%
%
\begin{tabularx}{\linewidth}{@{}>{\bfseries}l@{\hspace*{1em}}X@{}}
\begin{myLeftColumn}
02/2016 \textendash \: 02/2019:\\
\includegraphics[width=3cm]{example-image}
\end{myLeftColumn}
&
\textbf{This is some random text}\newline
Some more text\newline
More text.\newline
More text.
\\
\begin{myLeftColumn}
04/2019 \textendash \: 05/2019:\\
\includegraphics[width=3cm]{example-image-a}
\end{myLeftColumn}
&
\textbf{Other text}
in
several
paragraphs. \lipsum[1][1-3]
\end{tabularx}
\endgroup
\end{document}
初始\arraystretch
设置允许调整高级条目之间的垂直间距,而环境的可选参数myLeftColumn
用于左列文本和图像之间的垂直间距(它们都是应用于相应tabularx
或tabular
环境的两行之间的正常间距的乘积因子)。