2015 年 4 月 23 日更新 MiKTeX 後,使用 fixltx2e.sty 套件的 TeX 檔案編譯被破壞。根據 LaTeX News 第 22 期文章,fixltx2e 軟體包已過時,其功能已整合到 LaTeX 核心中。為了解決我的編譯問題,我按照 LaTeX News Issue 22 文章中的建議添加\RequirePackage[2015/01/01]{latexrelease}
before \documentclass
。然而,當 TeX 檔案中包含數字時,這似乎會引入 IEEEtran.cls 文件類別的文字間距/中斷問題。
這是一個 MWE。對於具有conference
或類別選項的一列和兩列文件都會出現此問題journal
。我僅包含兩欄日記的範例,因為問題出現在較短的文檔中。
\RequirePackage[2015/01/01]{latexrelease} % Comment this for old MiKTeX
%\RequirePackage{fixltx2e} % Uncomment this for old MiKTeX
\documentclass[10pt,final,twocolumn]{IEEEtran}
\RequirePackage[demo,final]{graphicx}
\RequirePackage[cmex10]{amsmath}
\interdisplaylinepenalty=2500
\RequirePackage{amsthm}
\RequirePackage{algorithm}
\RequirePackage[english]{babel} % Without this new MiKTeX throws -- Package babel Error: Unknown language `english'. Comment out for old MiKTeX
\RequirePackage{blindtext}
\newtheorem{remark}{Remark}
\newtheorem{theorem}{Theorem}
\begin{document}
\title{ABC DEF}
\author{\IEEEauthorblockN{Author~1, Author~2 and Author~3}\\
\IEEEauthorblockA{Dept. of XYZ, University of UVW\\
Email: \{author1,author2,author3\}@uvw.edu}}
\maketitle
\begin{abstract}
\blindtext
\end{abstract}
\section{Introduction}
\label{sec:intro}
\Blindtext[7]
\section{System Model}
\label{sec:system-model}
\blindtext
\begin{equation}
asd = fgh
\end{equation}
\blindtext
\blindtext
\begin{equation}
asd = fgh
\end{equation}
\blindtext
\section{Problem Description}
\label{sec:prob-descrip}
\blindtext
\begin{equation}
asd = fgh
\end{equation}
\blindtext
\begin{figure}
\centering
\includegraphics[width=0.9\linewidth,height=0.7\linewidth]{}
\caption{random text random text\textsubscript{random}, $ghi$, random text. Here $abc$ and $def$.}
\label{fig:cspectrum}
\end{figure}
Random text
\begin{equation}
abc = def = ghi
\end{equation}
\begin{equation}
\begin{split}
abc & = def \\
& = ghi
\end{split}
\end{equation}
\blindtext
\section{Algorithm}
\blindtext
\begin{figure}
\begin{algorithm}[H]
\caption{random caption}
\textbf{Input:}
\blindenumerate
\textbf{Output:} random text\\
\textbf{Steps:}
\begin{enumerate}
\item random text
\item random text
\blindenumerate
\item random text
\end{enumerate}
\label{alg:random-ALG}
\end{algorithm}
\end{figure}
\begin{remark}
\blindtext
\begin{equation}
abc \geq def \geq ghi
\end{equation}
\end{remark}
\begin{theorem}
\label{thm:random}
random text
\begin{align}
abc & = def \\
ghi & = jkl
\end{align}
\end{theorem}
\begin{IEEEproof}
\blindtext
\end{IEEEproof}
\section{Conclusions}
\label{sec:conclusion}
\blindtext
\end{document}
我的日誌檔案的第一行內容如下:
這是 pdfTeX,版本 3.14159265-2.6-1.40.15(MiKTeX 2.9 64 位元)(預先載入格式=pdflatex 2015.2.11)
編譯上述範例產生的文件的第二頁看起來像是 對於這個簡短的範例,在 TeX 檔案中移動圖形可能會解決間距問題(純粹是運氣問題)。但對於包含許多數字的較大文檔,這成為一個嚴重的問題。
我已經驗證在MiKTeX更新之前,即需要fixltx2e.sty套件來修補LaTeX核心時,沒有出現該問題。使用 MWE 註釋中建議的更改在舊 MiKTeX 下編譯文件會給出正確的文本間距/中斷,第二頁看起來像 對於舊 MiKTeX,我的日誌文件的第一行讀取
這是 pdfTeX,版本 3.1415926-2.5-1.40.14 (MiKTeX 2.9)(預先載入格式=pdflatex 2013.8.10)
有沒有一種好方法可以解決此問題,而無需對範例文件的前導碼進行太多修改?
筆記:相關問題已討論於圖和表格“下推”右欄中的文本在這個論壇中,有關 IEEEtran.cls 文件類別和 fixltx2e.sty 套件的相互作用,並聲稱某些版本的 IEEEtran.cls 與 fixltx2e.sty 不相容。但這是不久前的事了,從那時起 IEEEtran 和 fixltx2e 都發生了重大變化,所以不確定該帖子是否仍然相關。