我正在使用 RevTex4-1 类在 pdflatex 中编译一个简单的文档,并收到此警告:
Class revtex4-1 Warning: Repair the float package.
文档看起来没什么问题(其中只有一张图)。但我在网上找不到任何解释这个警告的内容,所以我决定向社区询问。这是什么?我需要修复它吗?如果需要,该怎么做?
以下是我的序言:
documentclass[twocolumn,noshowpacs,noshowkeys,pra,aps,longbibliography] {revtex4-1}%
\pdfoutput=1
\usepackage[caption=false]{subfig}
\usepackage{algorithm}
\usepackage{algorithmic}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{url}
\usepackage{graphicx}
答案1
该类revtex4-1
定义了几个类似的消息,例如
351 \@ifx{\eqnarray\eqnarray@LaTeX}{%
352 \class@info{Repairing broken LaTeX eqnarray}%
353 \let\eqnarray\eqnarray@fleqn@fixed
354 \newlength\eqncolsep
355 \setlength\eqncolsep\z@
356 \let\eqnarray@LaTeX\relax
357 \let\eqnarray@fleqn@fixed\relax
358 }{}%
您收到的警告本质上非常相似:
3979 \appdef\document@inithook{%
3980 \@ifxundefined\newfloat{}{%
3981 \@ifx{\float@end\float@end@float}{%
3982 \@ifx{\newfloat\newfloat@float}{\true@sw}{\false@sw}%
3983 }{\false@sw}%
3984 {%
3985 \class@warn{Repair the float package}%
3986 \let\float@end\float@end@ltx
3987 \let\newfloat\newfloat@ltx
3988 }{%
3989 \class@warn{Failed to patch the float package}%
3990 }%
3991 }%
3992 }%
但出于某些原因,“正在修复”变成了“修复”。这几乎肯定是一个小错误,但警告完全无害。
algorithm
因为加载了所以发出float
。如果你想关闭它,请使用silence
包:add
\usepackage{silence}
\WarningFilter{revtex4-1}{Repair the float}
到你的序言,警告就会消失。