特定书目项目使用不同的字体

特定书目项目使用不同的字体

在我的参考书目中,我需要用不同的字体(例如粗体、无衬线、较大或彩色)突出显示一些条目。

我怎样才能做到这一点?

答案1

这个答案使用了biblatex带有的包biber

首先,需要定义需要突出显示的条目。您可以通过将keywords条目添加到相应项目来完成此操作。假设您希望使用关键字 为粗体条目,bold使用关键字 为无衬线条目sans

然后,将以下内容添加到序言中: 

\renewbibmacro*{begentry}{%
    \ifkeyword{bold}{\bfseries}{}%
    \ifkeyword{sans}{\sffamily}{}%
}

renewbibmacro命令会在每个条目的开头添加一些代码。然后您可以使用它ifkeyword来检查该条目是否包含特定关键字。第一个参数是您要检查的关键字,第二个参数包含如果该条目包含该关键字则要输入的代码,第三个参数包含如果该关键字不存在则输入的代码。请不要忘记%每行末尾的符号,否则格式可能会被破坏。

您可以使用通常在普通文本中输入的任何格式化命令,如下所示:{\command Some text.}例如,您可以使用大小命令(\tiny ... \Huge)或显示的命令此处的“相当于”栏\color{some-color}。当您使用color或包时,您还可以使用xcolor

这是一个最小的工作示例:

\documentclass{article}

\usepackage[backend=biber]{biblatex}

\renewbibmacro*{begentry}{%
    \ifkeyword{bold}{\bfseries}{}%
    \ifkeyword{sans}{\sffamily}{}%
}


\usepackage{filecontents}

\begin{filecontents*}{\jobname.bib}
    @book{Knu86,
        author = {Knuth, Donald E.},
        year = {1986},
        title = {The \TeX book},
    }

    @book{Aut16,
        author = {Author, Ann},
        year = {2016},
        title = {My second book},
        keywords = {bold},
    }

    @book{Wri25,
        author = {Writer, A. Good},
        year = {2025},
        title = {Best seller},
        keywords = {bold,sans},
    }

    @book{Doe86,
        author = {Doe, John},
        year = {1986},
        title = {Life without a name},
        keywords = {sans},
    }

    @book{Aut00,
        author = {Author, Ann},
        year = {2000},
        title = {My first book},
    }
\end{filecontents*}

\addbibresource{\jobname.bib}

\begin{document}

\nocite{*}
\printbibliography

\end{document}

它的输出如下:

参考文献列表

相关内容