带有显示数学的 parcolumns 包

带有显示数学的 parcolumns 包

我需要排版跨越多页的两列平行文本,偶尔需要同步。(同步意味着两列从相同的垂直位置“重新启动”。)

我需要使用一些数学运算,包括显示数学。这样做会弄乱布局:

在此处输入图片描述

注意垂直线的断点(红色圆圈),并注意第二列第一段的最后一行是如何错位的。它前面不应该有那么大的垂直空间。最后,等式上方/下方的间距似乎不对。

问题:有没有一种简单的方法可以用显示数学排版平行列并避免此类问题?

我不需要高质量的排版,因为这些只是个人笔记,但我无法忍受上述严重的错位。


更新:我注意到 parcolumns 文档中提到它与显示数学不兼容。建议将显示数学放在单独的 中\colchunk。这对于我的目的来说是不可接受的,因为 (1) 它强制两列之间同步,我无法在每个公式上都这样做 (2) 当优先事项是记下事情而不是制作书籍质量的排版时,这实在是太繁重了。

如果没有简单的用数学方法做平行列的方法,那么我就放弃平行列了。不过,那会很遗憾,因为在某些情况下,我发现这种布局在手写笔记中非常有用,我希望不必放弃数字笔记。


示例代码:

\documentclass[10pt]{article}
\usepackage{parcolumns}
\usepackage{amsmath}
\usepackage{microtype}

\begin{document}
\begin{parcolumns}[rulebetween]{2}

\colchunk[1]{%
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent et dolor nulla. Nam tempor consequat dui vel ornare. Ut a dignissim est. Etiam vel ipsum dui. Maecenas vitae accumsan nibh. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Suspendisse quis tincidunt turpis.
\[ x^2 + y^2 = r^2 \]

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent et dolor nulla. Nam tempor consequat dui vel ornare. Ut a dignissim est. Etiam vel ipsum dui. Maecenas vitae accumsan nibh. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Suspendisse quis tincidunt turpis.
}

\colchunk[2]{%
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent et dolor nulla. Nam tempor consequat dui vel ornare. Ut a dignissim est. Etiam vel ipsum dui. Maecenas vitae accumsan nibh. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Suspendisse quis tincidunt turpis.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent et dolor nulla. Nam tempor consequat dui vel ornare. Ut a dignissim est. Etiam vel ipsum dui. Maecenas vitae accumsan nibh. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Suspendisse quis tincidunt turpis.

}

\colplacechunks

\end{parcolumns}

\end{document}

答案1

你可以尝试paracol.sty,文档没有提到任何数学限制,例如:

\documentclass[a4paper,10pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{paracol,xcolor,geometry}
\usepackage{microtype}

\setlength{\columnseprule}{0.4pt}
\colseprulecolor{blue}

\begin{document}

\begin{paracol}{2}
  Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent et
  dolor nulla. Nam tempor consequat dui vel ornare. Ut a dignissim
  est. Etiam vel ipsum dui.  Maecenas vitae accumsan
  nibh. Pellentesque habitant morbi tristique senectus et netus et
  malesuada fames ac turpis egestas.

  \switchcolumn

  Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  \switchcolumn

  Suspendisse quis tincidunt turpis.
  \[ x^2 + y^2 = r^2 \]

  \switchcolumn*

  Praesent et dolor nulla. Nam tempor consequat dui vel ornare. Ut a
  dignissim est. Etiam vel ipsum dui. Maecenas vitae accumsan
  nibh. Pellentesque habitant morbi tristique senectus et netus et
  malesuada fames ac turpis egestas. Suspendisse quis tincidunt
  turpis.

  \switchcolumn

  Lorem ipsum dolor sit amet, consectetur adipiscing elit.
\end{paracol}
\end{document}

在此处输入图片描述

答案2

(这解决了两个问题中的其中一个)

由于parcolumns似乎不喜欢显示数学,这里我只是将显示数学隔离在临时内部\vbox并输出框。(当然,这将失去短数学表达式在短线后很好地塞入的能力。它也可能以其他方式改变方程的垂直跳跃)

\documentclass[10pt]{article}
\usepackage{parcolumns}
\usepackage{amsmath}
\usepackage{microtype}

\begin{document}
\begin{parcolumns}[rulebetween]{2}

\colchunk[1]{%
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent et dolor nulla. Nam tempor consequat dui vel ornare. Ut a dignissim est. Etiam vel ipsum dui. Maecenas vitae accumsan nibh. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Suspendisse quis tincidunt turpis.
\\\setbox0=\vbox{\[ x^2 + y^2 = r^2 \]}\box0

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent et dolor nulla. Nam tempor consequat dui vel ornare. Ut a dignissim est. Etiam vel ipsum dui. Maecenas vitae accumsan nibh. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Suspendisse quis tincidunt turpis.
}
\colchunk[2]{%
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent et dolor nulla. Nam tempor consequat dui vel ornare. Ut a dignissim est. Etiam vel ipsum dui. Maecenas vitae accumsan nibh. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Suspendisse quis tincidunt turpis.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent et dolor nulla. Nam tempor consequat dui vel ornare. Ut a dignissim est. Etiam vel ipsum dui. Maecenas vitae accumsan nibh. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Suspendisse quis tincidunt turpis.
}

\colplacechunks

\end{parcolumns}

\end{document}

在此处输入图片描述

相关内容