我想更改参考书目标题的字体大小。也就是说,我希望A. References
文档末尾的字体大小与第一节相同Section with large font
。由于我需要不同部分的字体大小,因此无法全局更改字体大小。
\documentclass{scrartcl}
\usepackage{lipsum}
\usepackage[nottoc, numbib]{tocbibind}
\begin{document}
\tableofcontents
\section[Section with large font]{\huge Section with large font}
\lipsum[10] \cite{test}
\section{Section with standard font}
\lipsum[5]
\bibliography{test}
\end{document}
的内容test.bib
为:
@misc{test,
author = {testauthor},
title = {{Test Title}},
url = {https://www.domain.com},
year = {2020}
}
\addtokomafont{section}{\Huge}
编辑:我通过在要更改字体大小的部分之前和之后添加内容,取得了一些进展\addtokomafont{section}{\Large}
。通过反复试验,我发现部分大小的默认值是\Large
。有没有更好的方法将\addtokomafont{section}{\Huge}
命令重置为默认值?
\documentclass[bibliography = totocnumbered]{scrartcl}
\usepackage{lipsum}
\begin{document}
\tableofcontents
\addtokomafont{section}{\Huge}
\section{Section with large font}
\addtokomafont{section}{\Large}
\lipsum[10] \cite{test}
\section{Section with standard font}
\lipsum[5]
\addtokomafont{section}{\Huge}
\bibliography{test}
\bibliographystyle{ieeetr}
\addtokomafont{section}{\Large}
\end{document}
答案1
有两个独立的问题:(1)一般标题和(2)参考书目标题。
(1)章节标题:(KOMA-script):字体大小
最简洁的方法是定义一个或多个自定义部分级命令,每个命令都具有所需的字体大小(按照概述的方法这里)。
与通过 在每个部分之前指定字体大小相比,这种方法更不容易出错\addtokomafont{section}{<size>}
。
\section
介绍方式如下scrartcl.cls
:
\DeclareSectionCommand[%
style=section,%
level=1,%
indent=\z@,%
beforeskip=-3.5ex \@plus -1ex \@minus -.2ex,%
afterskip=2.3ex \@plus.2ex,%
tocstyle=section,%
tocindent=0pt,%
tocnumwidth=1.5em%
]{section}
我们复制这个并选择更大的字体:
\DeclareNewSectionCommand[%
style=section,%
level=1,%
font=\Huge,%
indent=\z@,%
beforeskip=-3.5ex \@plus -1ex \@minus -.2ex,%
afterskip=2.3ex \@plus.2ex,%
tocstyle=section,%
tocindent=0pt,%
toclevel=1,%
tocnumwidth=1.5em%
]{specialsection}
specialsection
应该使用与 vanilla 共享的顺序编号section
,而不是两个平行的编号:
\let\c@specialsection\c@section
\let\cl@specialsection\cl@section
查看平均能量损失以下。
(2)参考书目标题(bibtex):字体大小
正如您所发现的,tocbibind
考虑到提供的丰富选项,实际上并不需要自定义参考书目的分段属性KOMA-script
。
至于字体大小:我不知道有什么干净的bibtex
方法来重新定义格式根据我们创建的自定义分段格式对参考书目标题进行排序(这样\renewcommand\refname{...}
可以重新定义标题)。
我们只需重新定义\section
为\specialsection
对于书目空间,这样此自定义格式就不会溢出到文档的后面部分。这是通过将其括在组中来实现的。
\begingroup
\let\section\specialsection
\bibliographystyle{...}
\bibliography{...}
\endgroup
这只是对您已经发现的内容的微小改进。请注意,使用biblatex
,有一种更简洁的方法可以做到这一点(在 2022 年,biblatex
如果有机会,请考虑切换到 !):
\usepackage{biblatex}
\addbibresource{test.bib}
\defbibheading{SpecialBibHeadingStyle}{\specialsection{References}}
...
\begin{document}
...
\printbibliography[heading=SpecialBibHeadingStyle]
平均能量损失
\begin{filecontents}[overwrite]{test.bib}
@misc{test,
author = {Author},
title = {Title}}
\end{filecontents}
\documentclass[bibliography=numbered]{scrartcl}
\makeatletter
\DeclareNewSectionCommand[%
style=section,%
level=1,%
font=\Huge,%
indent=\z@,%
beforeskip=-3.5ex \@plus -1ex \@minus -.2ex,%
afterskip=2.3ex \@plus.2ex,%
tocstyle=section,%
tocindent=0pt,%
toclevel=1,%
tocnumwidth=1.5em%
]{specialsection}
\let\c@specialsection\c@section% use the same counter as section
\let\cl@specialsection\cl@section% use the same reset list as section
\makeatother
\usepackage{biblatex} % biblatex
\addbibresource{test.bib}
\defbibheading{SpecialBibHeadingStyle}{\specialsection{References}}
\begin{document}
\tableofcontents
\specialsection{Huge section}
\section{Large section}
\cite{test}
%\begingroup % bibtex
%\let\section\specialsection
%\bibliographystyle{ieeetr}
%\bibliography{test}
%\endgroup
\printbibliography[heading=SpecialBibHeadingStyle] % biblatex
\end{document}