Koma-Script(scrbook):雙列格式與寬方程式問題

Koma-Script(scrbook):雙列格式與寬方程式問題

scrbook在書中使用類別(見下文),有時我需要排版寬方程

\documentclass[%
    ,fontsize=12pt    % 
    ,a3paper         % pagesize
    ,twocolumn 
]{scrbook}
\areaset[5mm]{250mm}{350mm}
\unsettoc{toc}{twocolumn}

是否有可能在一列和兩列格式之間部分切換?我嘗試使用該庫widetext,但恐怕它不是 MiKTeX 發行版的一部分。我想在文本中排版寬方程,而不僅僅是在底部或頂部。是否可以?

MNWE:(添加了廣泛的方程式;\setchaptertoc參見KOMA-Script(scrbook):雙列文件中的單列目錄和 minitoc

\documentclass[twocolumn]{scrbook}
\usepackage[nohints]{minitoc}
\usepackage{amsmath, amsthm, amssymb, amsfonts, amsbsy}
\usepackage{bigints}
\usepackage{mathtools}
\mtcsetrules{minitoc}{off}
\usepackage{lipsum}

\newcommand*{\setchaptertoc}{%
  \setchapterpreamble{
  \vspace{1.85\baselineskip} % workaround for removed rule
  \smash{\makebox[\linewidth]{\hrulefill}} % workaround for removed rule
  \vspace{-1.85\baselineskip} % workaround for removed rule
  \minitoc
  \vspace{-1.15\baselineskip} % workaround for removed rule
  \smash{\makebox[\linewidth]{\hrulefill}} % workaround for removed rule
  \vspace{1.15\baselineskip} % workaround for removed rule
}}
\newcommand{\dd}[1]{\hspace{2pt}d#1}

\begin{document}
\dominitoc
\tableofcontents

\setchaptertoc
\chapter{One}
\lipsum[1]
    \begin{equation}\label{fyz:fey_eq_elstat18}
      E_x(x_1, y_1, z_1) = 
        \int\limits_{\substack{\text{all}\\\text{area}}}\varrho(x_2, y_2, z_2)
        \frac{x_1-x_2}{[(x_1-x_2)^2+(y_1-y_2)^2+(z_1-z_2)^2]^{\frac{3}{2}}}\dd{x_2}\dd{y_2}\dd{z_2}
    \end{equation} 
\lipsum[1]    
\section{One, one}
\lipsum[2]
\subsection{One, one, one}
\lipsum[3]
\section{One, two}
\lipsum[4]

\setchaptertoc
\chapter{Two}
\lipsum[5]
\section{Two, one}
\lipsum[6]
\section{Two, two}
\subsection{two, two, one}
\lipsum[7]

\setchaptertoc
\chapter{Three}
\section{Three, one}
\lipsum[8]
\section{Three, two}
\lipsum[9]
\end{document}

在此輸入影像描述

答案1

您的問題可以透過「widetext.sty」解決。該套件模仿 RevTeX4 中的同名機制,由 Anjishnu Sarkar 編寫。唉,原來的家不見了。幸運的是,我們可以從 svn 網站取得一個副本愛因斯坦工具包,因為他們已將其用於文件(直接連結):https://svn.einsteintoolkit.org/documents/Paper_EinsteinToolkit_2010/widetext.sty

儲存這個套件檔案並將其放入實際文件的資料夾中,或者,在我看來更好:放入本地 TEXMF 目錄中。既然您在評論中提到了 MiKTeX,請參閱在 MiKTeX 中建立本機 texmf 樹。但如果您以後想放棄來源,請不要忘記添加“widetext.sty”。

這是一個 MWE,一些解釋如下:

\documentclass[twocolumn]{scrbook}
\usepackage[nohints]{minitoc}
\usepackage{amsmath, amsthm, amssymb, amsfonts, amsbsy}
\usepackage{bigints}
\usepackage{mathtools}
\usepackage{lipsum,kantlipsum}

\usepackage{widetext}% needs packages "flushend" & "cuted" of "sttools"
                     % bundle, which perhaps must separately be installed

\newcommand{\dd}[1]{\hspace{2pt}d#1}

\begin{document}

\chapter{One}
\lipsum[1]
\begin{widetext}
  \begin{equation}\label{fyz:fey_eq_elstat18}
    E_x(x_1, y_1, z_1) = 
      \int\limits_{\substack{\text{all}\\\text{area}}}\varrho(x_2, y_2, z_2)
      \frac{x_1-x_2}{[(x_1-x_2)^2+(y_1-y_2)^2+(z_1-z_2)^2]^{\frac{3}{2}}}\dd{x_2}\dd{y_2}\dd{z_2}
  \end{equation}
\end{widetext}

\kant[1]
\end{document}

範例輸出

我故意添加了kantlipsum另一個虛擬文字包,它會產生英文文字。所以你可以看到,柱子是如何被破壞的。

但似乎仍存在一些問題,特別是來自底層包的腳註和浮動cuted。它的文檔說,對於腳註,你應該使用\footnotemarkplus \footnotetext,但在測試中我沒有成功 - 註釋打印得很低內部或頂部右列的以下此等式取決於實際文本長度,參見。下面的程式碼(我只添加了修改的部分)。輸出\leavevmode\begin{widetext}雖不完美,但好多了。
另請參閱 TeX.SE使用 Widetext.sty 時遇到的問題(不要忽視答案的評論)。

\chapter{One}
Text\footnotemark{}
\lipsum[1]
Text\footnotemark
\addtocounter{footnote}{-1}
\footnotetext{Note \thefootnote}
\stepcounter{footnote}
\footnotetext{Note \thefootnote}

\begin{widetext}
...
\end{widetext}

Text\footnote{Note \thefootnote}
\kant[1]
Text\footnote{Note \thefootnote}

相關內容