我正在尝试定义一个列表来描述一系列图像。我希望每个列表元素的图像与描述文本的第一行对齐,并且文本环绕图像。
下面列出了我的尝试,但仍然存在两个问题:
- 我希望“步骤 XX:”不突出到边缘(其余文本应该缩进)。
- 如果段落较短或商品描述有多个段落,则换行会失败,请参见示例中的步骤 2。
这是代码。任何关于解决上述两个问题的建议都值得赞赏。
\documentclass{article}
\usepackage{lipsum}
\usepackage[demo]{graphicx}
\usepackage{cutwin}
\usepackage{parskip}
\newcounter{step}
\newenvironment{steps}%
{\par\setcounter{step}{0}}%
{\par\bigskip}%
\newlength{\stepmargin}%
\setlength{\stepmargin}{1em}%
\newlength{\windowwidth}%
\setlength{\windowwidth}{\textwidth}%
\addtolength{\windowwidth}{-5cm}%
\addtolength{\windowwidth}{-\stepmargin}%
\newcommand\step[2]{%
\stepcounter{step}%
\begingroup
\opencutright
\pageinwindow
\renewcommand\windowpagestuff{%
\hspace*{\stepmargin}%
\includegraphics[%
width=5cm,
height=8\baselineskip,
keepaspectratio]{#1}%
}%
\leftmargin=1.5cm\begin{cutout}{0}{\windowwidth}{0pt}{9}%
\noindent
\llap{%
\makebox[1.5cm][l]{%
\bfseries
Step~\arabic{step}:%
}%
}%
#2%
\end{cutout}%
\endgroup
\par\bigskip
}
\begin{document}
\lipsum[1]
\begin{steps}
\step{step1.png}{\lipsum[2]}
\step{step2.png}{%
Short description that doesen't take up the total height of the image.\par
The text might have paragraphs.\par
The next step should start below the image for this step.
}
\step{step3.png}{\lipsum[3]}
\end{steps}
\lipsum[4]
\end{document}