使用枚举、对齐和表格

使用枚举、对齐和表格

我尝试将这些练习写成两列,与“=”符号对齐。这就是我所拥有的:

\documentclass[12pt,norsk,a4paper,twoside]{article}
\usepackage{amsmath}
\usepackage[lmargin=25mm,rmargin=25mm,tmargin=25mm,bmargin=25mm]{geometry}
\usepackage{multicol}
\usepackage{enumerate}
\begin{document}
     \begin{multicols}{2}
          \begin{enumerate}
                \item 16 mg = \underline{\hspace{1.4cm}} $\mu$g (mikrogram)
                \item 50 mg = \underline{\hspace{1.4cm}} $\mu$g (mikrogram)
                \item 5 mg  = \underline{\hspace{1.4cm}} $\mu$g (mikrogram)
                \item 0,1 mg  = \underline{\hspace{1.4cm}} $\mu$g (mikrogram)
                \item 22,5 mg = \underline{\hspace{1.4cm}} $\mu$g (mikrogram)
                \item 0,005 mg = \underline{\hspace{1.4cm}} $\mu$g (mikrogram)
          \end{enumerate}
     \end{multicols}
\end{document}

这就是它的样子

我怎样才能用“=”符号对齐每一行?使用 align 和 enumerate 组合不起作用。

干杯

答案1

以下是使用的建议tabular

在此处输入图片描述

\documentclass[12pt,norsk,a4paper,twoside]{article}
\usepackage{amsmath}
\usepackage[lmargin=25mm,rmargin=25mm,tmargin=25mm,bmargin=25mm]{geometry}
\usepackage{array}

\begin{document}

\renewcommand{\arraystretch}{1.5}
\setlength{\tabcolsep}{3pt}
\noindent
\begin{tabular*}{\textwidth}{lr<{~mg~=~\underline{\hspace{1.4cm}} $\mu$g (mikrogram)\hspace{1.75cm}}lr<{~mg~=~\underline{\hspace{1.4cm}} $\mu$g (mikrogram)}}
1. & 16  & 4. & 0,1\\
2. & 50  & 5. & 22,5 \\
3. & 5   & 6. & 0,005\\
\end{tabular*}

\end{document}

正如评论中所述,上述示例仅在条目数为偶数时才按预期工作。如果条目数为奇数,则mg = ____ µg (mikrogram)如果相应单元格中没有条目,也会打印。

为了克服这个问题,可以使用enumerate依赖方法,如下问题的答案中所述:在项目化环境中自定义文本对齐 或者使用以下修改版本David Carlisle 关于在多列环境中平衡长表的回答

在此处输入图片描述

\documentclass[11pt, a4paper]{article}

\usepackage[lmargin=25mm,rmargin=25mm,tmargin=25mm,bmargin=25mm]{geometry}
\usepackage{longtable}
\usepackage{multicol}
\usepackage{array}

\newsavebox\ltmcbox
\newcounter{entryno}
\setcounter{entryno}{1}


\begin{document}
\begin{multicols}{2}
\setbox\ltmcbox\vbox{
\makeatletter\col@number\@ne
\begin{longtable}{>{\the\value{entryno}.\addtocounter{entryno}{1}\enspace}r<{~mg~=~\underline{\hspace{1.4cm}} $\mu$g (mikrogram)}}
16\\
50\\
5\\
\end{longtable}
\unskip
\unpenalty
\unpenalty}
\unvbox\ltmcbox
\end{multicols}
\end{document}

答案2

tasks和的组合eqparbox,加上推荐的siunitx单位。

\documentclass[12pt,norsk,a4paper,twoside]{article}
\usepackage[
  lmargin=25mm,
  rmargin=25mm,
  tmargin=25mm,
  bmargin=25mm,
  heightrounded,
]{geometry}

\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{amsmath}
\usepackage{siunitx}
\usepackage{textgreek}

\usepackage{tasks}
\usepackage{eqparbox}

\sisetup{
  output-decimal-marker={,},
  input-symbols=\answerspace,
  math-micro=\textup{\textmu},
  text-micro=\textmu,
}


\NewDocumentCommand{\answerspace}{}{\rule[-2pt]{1.4cm}{0.4pt}}
\NewDocumentCommand{\ral}{m}{\eqmakebox[\thetaskc][r]{#1}}
\newcounter{taskc}

\begin{document}

\stepcounter{taskc}
\begin{tasks}[style=enumerate](2)
\task \ral{\SI{16}{\mg}}    = \SI{\answerspace}{\ug} (mikrogram)
\task \ral{\SI{50}{\mg}}    = \SI{\answerspace}{\ug} (mikrogram)
\task \ral{\SI{5}{\mg}}     = \SI{\answerspace}{\ug} (mikrogram)
\task \ral{\SI{0,1}{\mg}}   = \SI{\answerspace}{\ug} (mikrogram)
\task \ral{\SI{2,5}{\mg}}   = \SI{\answerspace}{\ug} (mikrogram)
\task \ral{\SI{0,005}{\mg}} = \SI{\answerspace}{\ug} (mikrogram)
\end{tasks}

\end{document}

请记住\stepcounter{taskc}以便更新必要的标签\eqmakebox

在此处输入图片描述

相关内容