答案1
一般来说,在 LaTeX 中下划线很难,因为内置的下划线\underline
不允许换行,而像soul
和这样的解决方案ul
不能处理任意输入。(对于 LuaLaTeX,有lua-ul
总体而言,其表现要好得多。
但是,由于要加下划线的文本通常不会跨行,因此我们可以使用旧的\underline
。为了在volume
和number
中同时加下划线,我们必须直接修改 bibmacro volume+number+eid
,而不能仅依靠字段格式。
\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[
backend=bibtex,
natbib=true,
style=authoryear,
maxcitenames=2,
doi=false, url=false
]{biblatex}
\DeclareFieldFormat{underline}{\underline{#1}}
\renewbibmacro*{volume+number+eid}{%
\printtext[underline]{%
\printfield{volume}%
\setunit*{\adddot}%
\printfield{number}}%
\setunit{\bibeidpunct}%
\printfield{eid}}
\addbibresource{biblatex-examples.bib}
\begin{document}
Lorem \autocite{sigfridsson}
\printbibliography
\end{document}
请注意,我没有添加测试来检查是否存在数量或数量,因为每个常规都@article
应该有一个volume
字段。