使用 scrbook 将页码从页脚移动到页眉

使用 scrbook 将页码从页脚移动到页眉

我正在尝试在 LaTeX 中获取漂亮的小说格式。我发现以下内容:

% WITHOUT BLEED
% US Trade => 6x9
\documentclass[paper=6in:9in,pagesize=pdftex,
               headinclude=on,footinclude=on,12pt]{scrbook}
%
% Paper width
% W = 6in
% Paper height
% H = 9in
% Paper gutter
% BCOR = 0.5in
% Margin (0.5in imposed on lulu, recommended on createspace)
% m = 0.5in
% Text height
% h = H - 2m = 8in
% Text width
% w = W - 2m - BCOR = 4.5in
\areaset[0.50in]{4.5in}{8in}

除了页码在底部之外,这个文件非常完美。我在谷歌上搜索了很多次,找到了一种方法来删除底部的页码并将其放在顶部。我将其插入到 \begin{document} 之前

\usepackage{scrpage2}
\pagestyle{scrheadings}
\addtokomafont{pagenumber}{\oldstylenums}
\clearscrheadfoot %% <-----
\rehead[\pagemark]{\pagemark}
\lohead[\pagemark]{\pagemark}

但是现在这会从左上角删除章节名称(我想我可以弄清楚如何解决这个问题),更大的问题是:我在不应该有页码的页面上有页码,比如目录。

我真正想要做的只是对我复制和粘贴的第一段代码做一些小的修改,但我不知道如何做到这一点。

提前致谢,如果这个问题之前已经问过,我很抱歉(我查看了许多类似的帖子,但没有看到任何确切回答这个问题的)。

答案1

您必须添加两个命令才能将章节和节插入到页眉中。只需添加以下行

\lehead{\headmark}% left even head <===================================
\rohead{\headmark}% right odd head <===================================

将章节标题和节标题放入奇数页和偶数页的页眉中。

完整代码blindtext创建虚拟文本并showframe显示打字区域):

\documentclass[%
  paper=6in:9in,
  pagesize=pdftex,
  headinclude=on,
  footinclude=on,12pt
]{scrbook}
\areaset[0.50in]{4.5in}{8in}

\usepackage{blindtext} % to produce dummy text
\usepackage{showframe}

\usepackage{scrpage2}
\pagestyle{scrheadings}
\addtokomafont{pagenumber}{\oldstylenums}
\clearscrheadfoot %% <-----
\lehead{\headmark}% left even head <===================================
\rehead[\pagemark]{\pagemark}
\lohead[\pagemark]{\pagemark}
\rohead{\headmark}% right odd head <===================================


\begin{document}

\Blinddocument

\end{document}

结果(标题页2):

在此处输入图片描述

答案2

请注意,该包的scrpage2折旧期限为 2 年。我建议使用它的后继版本scrlayer-scrpage

\documentclass[%
  paper=6in:9in,
  pagesize=pdftex,
  headinclude=on,
  footinclude=on,12pt
]{scrbook}
\areaset[0.50in]{4.5in}{8in}

\usepackage[automark]{scrlayer-scrpage}
\addtokomafont{pagenumber}{\oldstylenums}
\clearpairofpagestyles
\ohead{\headmark}
\ihead*{\pagemark}

\usepackage{blindtext}
\begin{document}
\Blinddocument
\end{document}

命令\ohead{\headmark}是 的缩写\lehead{\headmark}\rohead{\headmark},是\ihead*{\pagemark}的快捷方式\rehead[\pagemark]{\pagemark}\lohead[\pagemark]{\pagemark}。package 选项automark确保自动运行头的使用独立于类设置。

相关内容