有人能解释一下如何解决这个问题吗:LaTeX 错误:未找到文件“scrpage2.sty”?我阅读了所有答案,但不明白该怎么做。今天我安装了 miktex 2.9 和 winedt 10.3。
答案1
作者已宣布该软件包scrpage2
已过时。它不再包含在 TeX live 和 MikTeX 中。该软件包仍可在 CTAN(https://ctan.org/pkg/scrpage2,https://ctan.org/pkg/koma-script-obsolete),但必须从.dtx
源中手动安装。另请参阅https://komascript.de/faq_scrpage2_en。
建议用户切换到后续软件包scrlayer-scrpage
。如果您有
\usepackage[<options>]{scrpage2}
在你的序言中,将其替换为
\usepackage[<options>]{scrlayer-scrpage}
显然, 的所有命令和选项scrpage2
也都可以被 识别scrlayer-scrpage
,因此切换应该是可能的。但强烈建议用户仔细检查结果,并查阅文件.log
和手册,以获取有关弃用、过时或其他过时命令的提示。
(需要明确的是,它是常规 KOMA-Script 包的一部分,如果尚未安装,scrlayer-scrpage
可以作为 MiKTeX 和 TeX live 中的包进行安装。)koma-script
如果某些代码/包超出了你的控制范围scrpage2
,请联系作者并寻找替代方案(scrpage2
已经被弃用了很长一段时间[大约六年;根据它已经发出警告至少两年了https://komascript.de/faq_scrpage2_en],所以如果代码作者到现在还没有反应,那就意味着他们可能不再那么密切地关注代码的开发了)。如果你必须使用外部代码scrpage2
,您可以尝试建议的解决方法https://komascript.de/faq_scrpage2_en:
添加
\RequirePackage{scrlfile}
\ReplacePackage{scrpage2}{scrlayer-scrpage}
添加到行前的序言中。当任何代码请求时,\documentclass
它将加载。scrlayer-scrpage
scrpage2
答案2
如果有人(像我一样)使用 Overleaf 并收到 scrpage2.sty 错误,您可以选择使用仍支持过时软件包的旧版本的 TeXLive 来处理文档(请参阅这里)。
从长远来看,这会给您的文档带来问题,但当需要快速修复不重要的文件时,它对我来说很有用。
答案3
这本意是对第一个回复的评论,但我还没有足够的“声誉”。(刚刚将我的帐户与 tex.stackexchange 关联),但我认为这一点很重要。
我使用 documentclass scrreprt
,moewe 的解决方案(替换scrpage2
为scrlayer-scrpage
)对我有用,尽管我遇到了新的错误,并且必须包含布局\section
等的定义才能修复它们:
\begin{document}
\titleformat{\section}{\Large\sffamily\bfseries}{\thesection}{1em}{}
\titleformat{\subsection}{\large\sffamily\bfseries}{\thesubsection}{1em}{}
\titleformat{\subsubsection}{\large\sffamily\bfseries}{\thesubsubsection}{1em}{}
\sffamily
使文本无衬线,\bfseries
并使其加粗。
这可能会帮助其他正在努力应对这个原本稳定的系统的意外贬值的人们......