我希望列表编号位于项目的开头,而不是居中,如下例中的项目 (b) 的情况一样。如果我注释掉\usepackage{nccmath}
,我就会得到这个,但间距会变得混乱。nccmath
如果可能的话,我宁愿保留这个包。
我确实也需要保留[c]
小页面。
我看过防止 itemize 环境插入初始垂直空间和使用 paralist 包在表格列中包含分项列表,但它无法为我工作。
\documentclass{standalone}
\usepackage{standalone}
\usepackage{paralist}
\usepackage{mathtools}
\usepackage{nccmath} % Removing fixes vertical align, but changes spacing
\newcommand{\MyMiniPage}{
\begin{minipage}[c]{1.0in}
\begin{align*}
a &= b\\
c &= d
\end{align*}
\end{minipage}
\begin{minipage}[c]{1.0in}
\begin{align*}
y &= z
\end{align*}
\end{minipage}
}
\begin{document}
\begin{enumerate}[(a)]
\item First item
\item \MyMiniPage
\item Third item
\end{enumerate}
\end{document}
我尝试使用\compress
上面其他帖子中提到的方法,但无法使其工作。
---------------- 使用 \input 修改帖子 -------------
这是文件 ListsProblem-Minipage.tex 中的内容:
\documentclass[preview=false]{standalone}
\usepackage{standalone}
\usepackage{amsmath}
\begin{document}
\begin{minipage}[c]{1.0in}
\begin{align*}
a &= b\\
c &= d
\end{align*}
\end{minipage}
\begin{minipage}[c]{1.0in}
\begin{align*}
y &= z
\end{align*}
\end{minipage}
\end{document}
这是文件 ListsProblem-Minipage2.tex 中的内容:
\documentclass[preview=false,fleqn]{standalone}
\usepackage{standalone}
\usepackage{amsmath}
\begin{document}
%\begin{minipage}{3.0in}
\begin{align*}
(-3)^4 &= 81\\
\frac{5^{23}} {5^{21}} &= 25
\end{align*}
%\end{minipage}
\end{document}
以下是主文件:
\documentclass[fleqn]{standalone}
\usepackage{standalone}
\usepackage{paralist}
\usepackage{mathtools}
\usepackage{nccmath} % Removing fixes align, but changes spacing
\begin{document}
\input{ListsProblem-Minipage.tex} % These two correctly yields
\input{ListsProblem-Minipage.tex} % the desired 4 columns
\begin{enumerate}[(a)]
\item First item
\item \input{ListsProblem-Minipage.tex}
\item \input{ListsProblem-Minipage2.tex} % not in a mini-page
\item Third item
\end{enumerate}
\end{document}
请注意,项目标签 (b) 未与两个居中对齐的迷你页面的顶部对齐。通过注释掉 ,可以看到 (b) 与我想要的迷你页面的对齐\usepackage{nccmath}
。但我想要一个不需要我放弃nccmath
包的解决方案。注释掉它也会搞乱间距。
答案1
这个问题可以通过以下方法解决\valign
\newcommand{\MyMiniPage}{%
\leavevmode\vtop{\hrule height 0pt \kern-\baselineskip
\valign{\vfill##\vfill\cr
\hbox to 1in{$\begin{aligned}
a &= b\\
c &= d
\end{aligned}$\hfill}\cr
\hbox to1in{$\begin{aligned}
y &= z
\end{aligned}$\hfill}\cr}}
}
我把所有东西都放进了\vtop
,我希望将第一行与 对齐\item
;然后它就只是一个“琐碎的” \valign
。:)
---看过示例后添加---
对于包含独立文件的情况,方法有所不同:
\documentclass{standalone}
\usepackage{standalone}
\usepackage{paralist}
\newcommand{\iteminput}[2][\topskip-1bp]{%
\leavevmode\vtop{\hrule height 0pt\kern-\dimexpr#1\relax
\input{#2}}}
\usepackage{mathtools}
\usepackage{nccmath} % Removing fixes align, but changes spacing
\begin{document}
\input{ListsProblem-Minipage.tex} % These two correctly yields
\input{ListsProblem-Minipage.tex} % the desired 4 columns
\begin{enumerate}[(a)]
\item First item
\item \iteminput{ListsProblem-Minipage.tex}
\item Third item
\end{enumerate}
\end{document}
该命令\iteminput
有一个可选参数,以防默认备份\vtop
不正确
\iteminput[<dimension>]{filename}
答案2
如果你希望它向左对齐,那么只需使用$...$
几行数学代码
\documentclass{article}
\usepackage{standalone}
\usepackage{paralist}
\usepackage{mathtools}
\usepackage{nccmath} % Removing fixes vertical align, but changes spacing
\newcommand{\MyMiniPage}{\arraycolsep=1.4pt
$\begin{array}{@{} l l @{\qquad} l l}
a &= b & y &=z \\[3pt]
c &= d
\end{array}$}
\begin{document}
\begin{enumerate}[(a)]
\item First item
\item \MyMiniPage
\item Third item
\end{enumerate}
\end{document}