在设计小说(文献类书籍KOMA SCRIPT
)时,我更喜欢在页眉中使用全小写字母。请看第一个例子,其中howards end
和chapter 29
都设置为小写字母和旧式数字。我通过\nouppercase
逐字将必要的字母转换为小写来实现这一点,它看起来很整洁,字母之间有小写字母间距,与旧式数字的比例很好。
IE
\fancyhead[EC]{\rmfamily \sc \small \nouppercase howards end}
但是,有些设计需要使用普通的大写字母来标记书签和章节标题。例如,在《回到玛土撒拉》中,章节名称需要设置为The Things Happens
大写字母。在这里我偷懒,将它们全部设置为大写字母,这样看起来就比较整洁了。
\fancyhead[OC]{\rmfamily \bf \small \sc \leftmark }
当然,将全部大写字母设置为大写会失去小型大写字母通常具有的漂亮间距以及与旧式数字的比例。
所以我的问题是,有没有办法确保标题中的所有字母都是小写,即使它们是混合大写?
以下是一个最简单的例子:
我用的是LyX,但是原理和代码应该是一样的:
fancyhdr
在文档类中加载Book KOMA-Script
两侧文档。其他均默认。
\fancyhead{}
\fancyfoot{}
\fancyhead[OC]{\rmfamily \small \nouppercase \leftmark}
带有章节名称的虚拟文本This is Mixing Caps
将产生以下示例,但我希望它们只出现this is mixing caps
在标题中,这样我就可以应用小写字母。
答案1
这里有一种方法:
\documentclass{scrbook}
\usepackage[osf]{mathpazo} % a font with old style figures
\usepackage{fancyhdr,textcase}
\pagestyle{fancy}
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\renewcommand{\headrulewidth}{0pt}
\fancyhf{}
\fancyhead[LE,RO]{\footnotesize\scshape\thepage}
\fancyhead[CE]{\scshape\MakeTextLowercase{\leftmark}}
\fancyhead[CO]{\scshape\MakeTextLowercase{\chaptername~\thechapter}}