怎么可以和LaTeX中的scrbook-documentclass中的\ part一起使用?

时间:2009-09-08 17:07:00

标签: latex tex

this question我问过,如何在章节下制作规则。使用sectsty提供的答案按照我的意愿行事,但会引发问题:如果我使用sectsty包,则\ part-command会产生错误:

! Undefined control sequence.
\NR@part ...elax \refstepcounter {part}\@maybeasf 
                                                  \addcontentsline {toc}{par...
l.8 \part{partname}

如果我使用book-documentclass而不是scrbook,它可以正常工作。但是我使用了Komascript的很多功能,所以我不想切换。知道任何人都有解决方案,我怎么能一起使用?

编辑:以下简单示例再现了问题:

\documentclass{scrbook}
   \usepackage{sectsty}
\begin{document}
   \part{test} % crash and burn here
\end{document}

2 个答案:

答案 0 :(得分:2)

问题在于,使用较旧版本的scrbook编写了sectsty。如果你看一下第553行的sectsty.sty文件,你会发现它使用了1998年scrbook.cls v2.5e中的一些代码。这就是问题发生的地方。如果你将最新版本的scrbook.cls(v3.04a,2009/07/24)的相关部分拼接到sectsty.sty中,那么一切似乎都可以正常工作。我已完成此操作并将文件here放入。请注意,除了确保它在您的示例代码上运行正常之外,我没有对此进行过测试。

答案 1 :(得分:1)

那么......你在上课?标准书类或komascript中的srcbook?

如果您使用的是标准书类,则sectsty具有\ part命令的特定命令:

\ partnumberfont {hcommandsi}更改part' heading numbers only; this does not aect the title of the part heading. \parttitlefont{hcommandsi} Changes the style of部分'标题标题的样式 只要;这不会影响零件标题的编号。 \ partfont {hcommandsi}仅通过执行来更改“part”标题的样式 {hcommandsi}在打印每个标题之前;这对两者都有影响 零件的标题和零件号。

如果您正在使用KOMA脚本类,则sectsty文档说明:

如果你只是想改变所有部门标题的用户数,那么你 不应该使用任何KOMA脚本类的sectsty。相反,您应该重新生成KOMA脚本提供的\ sectfont命令 如果你想要不同的部分标题打印出不同的风格 相互之间的类型,或者如果你想强调部分标题或游戏 您无法使用KOMA-script \ sectfont命令执行的其他游戏, 然后sesesty可能与KOMA脚本类一起使用。 您应该注意sectsty命令应用的修改 在执行\ sectfont命令后立即发生。 该软件包的文档使用标准LATEX编写 考虑到类,所以可能不会完全与KOMA脚本类绑定。 尽管如此,尽管出现问题时行为仍然存在差异, sectsty应该按照预期的方式使用KOMA脚本类。

来自:Sectsty Documentation Chapter Four

编辑:如果您想要的只是您的章节和章节下的一行,但仍想使用\ part命令,为什么不放弃sectsty,并在koma中重新定义切片命令-script使用\ hrule?