\documentclass[fleqn,12pt,a4paper]{article}
%\RequirePackage{Kaumudi_Package}
\usepackage{fancyhdr}
\pagestyle{fancy}
\begin{document}
\section{section-1}
\newpage
\section{section-2}
\end{document}
在上面的 MWE 中,部分名称放在页面标题中,这很好。但是它还会在每个部分前面放置一个数字。我想禁用部分前面的数字。我设法做到了这一点,\section*{}
但这也会将其从标题中移除。我如何才能禁用部分前面的数字并在标题中显示部分的名称
答案1
您需要重新定义\sectionmark
(有关详细信息,请参阅包文档);例如,您可以使用以下内容:
\documentclass[fleqn,12pt,a4paper]{article}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhead[R]{\leftmark}
\renewcommand\sectionmark[1]{\markboth{\MakeUppercase{#1}}{}}
\begin{document}
\section{section-1}
\newpage
\section{section-2}
\end{document}
处理上述示例代码后,你会收到警告
Package Fancyhdr Warning: \headheight is too small (12.0pt):
Make it at least 14.49998pt.
We now make it that large for the rest of the document.
This may cause the page layout to be inconsistent, however.
这表明定义的标题太大;然后你可以在前言中添加类似
\renewcommand\headheight{14.5pt}
要删除文档正文的章节编号,您可以使用包\titleformat
中的以下代码titlesec
:
\documentclass[fleqn,12pt,a4paper]{article}
\usepackage{titlesec}
\usepackage{fancyhdr}
\titleformat{\section}
{\normalfont\Large\bfseries}{}{0em}{}
\pagestyle{fancy}
\fancyhead[R]{\leftmark}
\renewcommand\sectionmark[1]{\markboth{\MakeUppercase{#1}}{}}
\renewcommand\headheight{14.5pt}
\begin{document}
\section{section-1}
\newpage
\section{section-2}
\end{document}
需要注意的是,上述代码仅抑制了实际标题中的章节编号,但编号仍会出现在目录中以及下级章节单元中;如果必须从目录中以及下级章节单元中删除章节编号,则需要在序言中添加以下几行:
\renewcommand\thesection{}
\renewcommand\thesubsection{\arabic{subsection}}
答案2
我建议切换到更新、更强大的类,如 scrartcl,它已经有合适的命令:
\documentclass[fleqn,12pt,a4paper]{scrartcl}
\usepackage{fancyhdr}
\pagestyle{fancy}
\begin{document}
\addsec{section-1}
\newpage
\addsec{section-2}
\end{document}