我尝试将这些练习写成两列,与“=”符号对齐。这就是我所拥有的:
\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
。