混合任务和 graphicx 包

混合任务和 graphicx 包

我正在尝试设置下图中所示的内容,本质上是与任务环境并排的图像。图像可以在任务环境内部或外部,只要它能正常工作,我不在乎。

在此处输入图片描述

(我用 MSPaint 编辑了此图像)

我一直在整个文档中使用任务并且我不想更改这个包。

在下一个代码中,我发布了一些复制目标的尝试,但正如代码中所解释的那样,它们都以某种方式失败了。

\documentclass[letterpaper,12pt]{book}

\usepackage[margin=1.1in]{geometry}
\setlength{\parindent}{0pt} 

%\usepackage{lipsum}

\usepackage{graphicx}

\usepackage{tasks} 
    \settasks{style=enumerate,label-width=1.5em,label-offset=0.5em,item-indent=2em,label-align=right,resume=true,after-item-skip=0pt}

\usepackage{multicol}

\begin{document}

%tasks only
%Doesn't work, looks almost right but images are not shown the preferred way. Code is a bit dirty too.
\begin{tasks}[resume=false](4)
\task*(2) \includegraphics[width=\linewidth]{dummy}
\task[] Equations
\task[] $P=(0,2)$
\task*(2)[] \task*(2)[] $a:\, y=x$
\task*(2)[] \task*(2)[] $b:\, y=x+2$
\task*(2)[] \task*(2)[] $c:\, y=-x+2$
\task*(2) \includegraphics[width=\linewidth]{dummy}
\task[] Equations
\task[] $P=(0,2)$
\task*(2)[] \task*(2)[] $a:\, y=x$
\task*(2)[] \task*(2)[] $b:\, y=x+2$
\task*(2)[] \task*(2)[] $c:\, y=-x+2$
\end{tasks}

\newpage

%several tasks inside several multicols
%Doesn't work, numbers should go on the left, it also means each example needs its own tasks and a multicols environment.
\begin{multicols}{2}
\includegraphics[width=\linewidth]{dummy}
\columnbreak
\begin{tasks}[resume=false](2)
\task Equations
\task[] $P=(0,2)$
\task![] $a:\, y=x$
\task![] $b:\, y=x+2$
\task![] $c:\, y=-x+2$
\end{tasks}
\end{multicols}

\begin{multicols}{2}
\includegraphics[width=\linewidth]{dummy}
\columnbreak
\begin{tasks}(2)
\task Equations
\task[] $P=(0,2)$
\task![] $a:\, y=x$
\task![] $b:\, y=x+2$
\task![] $c:\, y=-x+2$
\end{tasks}
\end{multicols}

\newpage

%one tasks inside multicols
%Doesn't work, taskes piled at the top instead of aligning with their corresponding image. Also, numbers should go on the left.
\begin{multicols}{2}
\includegraphics[width=\linewidth]{dummy}
\includegraphics[width=\linewidth]{dummy}
\columnbreak
\begin{tasks}[resume=false](2)
\task Equations
\task[] $P=(0,2)$
\task![] $a:\, y=x$
\task![] $b:\, y=x+2$
\task![] $c:\, y=-x+2$
\end{tasks}
\begin{tasks}(2)
\task Equations
\task[] $P=(0,2)$
\task![] $a:\, y=x$
\task![] $b:\, y=x+2$
\task![] $c:\, y=-x+2$
\end{tasks}
\end{multicols}

\end{document}

我怎样才能得到我想要的结果?

答案1

tasks当您不想让列表水平编号时使用并不是最好的选择,但无论如何。从您的第一个示例开始:

  • 使用\usepackage[export]{adjustbox},然后将其添加valign=t\includegraphics选项中,以使枚举标签与图形的左上角对齐。请注意,adjustbox已经加载graphicx

  • 对于第二列,只需使用一个\task命令并以其他更简单的方式对齐方程式,例如与aligned环境对齐(需要包amsmath

梅威瑟:

\documentclass{article}
\usepackage[export]{adjustbox}
\usepackage{amsmath}
\usepackage{tasks} 

\begin{document}

\begin{tasks}[style=enumerate](4)
\task*(2) \includegraphics[width=\linewidth,valign=t]{example-image-a}

\task[] $\begin{aligned}[t]
&{\rm Equations}\\
& a:\, y=x\\
&b:\, y=x+2\\
&c:\, y=-x+2
\end{aligned}$

\task[] $P=(0,2)$

\task*(2) \ldots \end{tasks}
\end{document}

在此处输入图片描述

正如我所说,使用tasks这种方法有点矫枉过正。有了enumerate环境和一些\hfill确保列间距相等的方法就足够了:

\documentclass{article}
\usepackage[export]{adjustbox}
\usepackage{amsmath}

\begin{document}
\begin{enumerate}
\item \includegraphics[width=0.5\linewidth,valign=t]{example-image-a}
\hfill
$\begin{aligned}[t]
&{\rm Equations}\\
& a:\, y=x\\
&b:\, y=x+2\\
&c:\, y=-x+2
\end{aligned}$
\hfill
$P=(0,2)$
\hfill

\item \ldots
\end{enumerate}
\end{document}

在此处输入图片描述

相关内容