MiKTeX 更新后,使用 IEEEtran 和 latexrelease 包时,图形会生成不正确的文本间距/断行

MiKTeX 更新后,使用 IEEEtran 和 latexrelease 包时,图形会生成不正确的文本间距/断行

在 2015 年 4 月 23 日更新 MiKTeX 后,使用 fixltx2e.sty 包的 TeX 文件的编译出现问题。根据 LaTeX News Issue 22 文章,fixltx2e 包已过时,其功能已集成到 LaTeX 内核中。为了修复编译问题,我按照 LaTeX News Issue 22 文章中的建议,包括\RequirePackage[2015/01/01]{latexrelease}before \documentclass。但是,当 TeX 文件中有图形时,这似乎会导致 IEEEtran.cls 文档类出现文本间距/断行问题。

conference这是 MWE。带有或类选项的单列和双列文档都会出现此问题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 内核时。在旧版 MiKTeX 下编译文件,并按照 MWE 注释中建议的更改进行操作,可以得到正确的文本间距/断行,第二页看起来像这 对于旧版 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 都经历了重大变化,所以不确定那篇帖子是否仍然有意义。

相关内容