如何在LaTex Bibiolgraphy中自动在特定作者姓名下划线

问题描述

对于简历,我想在书目中出现的地方加我的名字下划线。我将LaTex与biblatex一起使用。有没有简单的方法可以自动在特定名称下划线?谢谢!

例如,我希望书目中​​的所有条目中的“姓名”都自动加下划线。

\documentclass[12pt]{article}
\usepackage[maxbibnames=99,sorting=ydnt]{biblatex}
\addbibresource{test.bib}

\begin{filecontents}{test.bib}
@article{paper1,author   = {Surname,Name and Another,Name and Thethird,Name and Andthe,Last},journal  = {JUR},month    = {5},title    = {{Title very good}},year     = {2015}
}
@article{paper2,author   = {Guy,Some and Surname,Name and Dude,The},title    = {{Another brilliant title}},year     = {2016},}
\end{filecontents}

\begin{document}

\nocite{*}
\printbibliography
\end{document}

解决方法

您可以使用https://tex.stackexchange.com/a/355317/36296

中的技巧
\documentclass[12pt]{article}
\usepackage[maxbibnames=99,sorting=ydnt]{biblatex}


\begin{filecontents*}[overwrite]{\jobname.bib}
@article{paper1,author   = {Surname,Name and Another,Name and Thethird,Name and Andthe,Last},journal  = {JUR},month    = {5},title    = {{Title very good}},year     = {2015}
}
@article{paper2,author   = {Guy,Some and Surname,Name and Dude,The},title    = {{Another brilliant title}},year     = {2016},}
\end{filecontents*}

\addbibresource{\jobname.bib}

\usepackage{xstring}
\usepackage{etoolbox}
\newboolean{bold}
\newcommand{\makeauthorsbold}[1]{%
  \DeclareNameFormat{author}{%
  \setboolean{bold}{false}%
    \renewcommand{\do}[1]{\expandafter\ifstrequal\expandafter{\namepartfamily}{####1}{\setboolean{bold}{true}}{}}%
    \docsvlist{#1}%
    \ifthenelse{\value{listcount}=1}
    {%
      {\expandafter\ifthenelse{\boolean{bold}}{\mkbibbold{\namepartfamily\addcomma\addspace \namepartgiveni}}{\namepartfamily\addcomma\addspace \namepartgiveni}}%
    }{\ifnumless{\value{listcount}}{\value{liststop}}
      {\expandafter\ifthenelse{\boolean{bold}}{\mkbibbold{\addcomma\addspace \namepartfamily\addcomma\addspace \namepartgiveni}}{\addcomma\addspace \namepartfamily\addcomma\addspace \namepartgiveni}}%
      {\expandafter\ifthenelse{\boolean{bold}}{\mkbibbold{\addcomma\addspace \namepartfamily\addcomma\addspace \namepartgiveni\addcomma\isdot}}{\addcomma\addspace \namepartfamily\addcomma\addspace \namepartgiveni\addcomma\isdot}}%
      }
    \ifthenelse{\value{listcount}<\value{liststop}}
    {\addcomma\space}{}
  }
}

\makeauthorsbold{Surname,Name}



\begin{document}

\nocite{*}
\printbibliography
\end{document}

enter image description here

,

可以肯定的是,您要突出显示所有作者还是仅突出显示特定名称?

在第一种情况下,我邀请您查看格式化书目的.bst文件,以查找适合您甚至自己创建的书目(相当长)。

在第二种情况下,除了在您的bib文件中添加\hl{Name,Surname}之外,我没有其他解决方案。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...