我如何才能抑制 biblatex 对参考书目字段的样式?我更喜欢普通字体,而不是倾斜或斜体的标题。这意味着除作者和年份之外的所有字段都应以普通衬线字体打印。抑制引号也是不错的选择。
第二个问题是,短作者字段应以粗体显示在作者前面。这可能吗?
提前感谢您的支持!
最小示例:
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage{lmodern}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[a4paper]{geometry}
\usepackage[
style=authoryear-icomp,
backend=biber,
sorting=nyt,
sortcase=false,
url=false,
isbn=false,
doi=false,
clearlang=false,
maxbibnames=10,
maxcitenames=2,
dashed=false
]{biblatex}
% usage of et al.
\DefineBibliographyStrings{ngerman}{%
andothers = {et\addspace al\adddotspace},%
andmore = {et\addspace al\adddotspace},%
}
% colon behind author in bibliography
\renewcommand{\labelnamepunct}{\addcolon\space}
\usepackage{xpatch}
% author in bold font in bibliography
\xpretobibmacro{author}{\mkbibbold\bgroup}{}{}
\xapptobibmacro{author}{\egroup}{}{}
\xpretobibmacro{bbx:shortauthor}{\mkbibbold\bgroup}{}{}
\xapptobibmacro{bbx:shortauthor}{\egroup}{}{}
\xpretobibmacro{bbx:editor}{\mkbibbold\bgroup}{}{}
\xapptobibmacro{bbx:editor}{\egroup}{}{}
\usepackage{blindtext}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@Book{Berthold2014,
Title = {In erster Linie Kinder. Flüchtlingskinder in Deutschland.},
Author = {Berthold, Thomas},
Year = {2014},
Publisher = {Deutsches Komitee für \textsc{Unicef} e.\,V.},
Url = {https://www.unicef.de/blob/56282/fa13c2eefcd41dfca5d89d44c72e72e3/fluechtlingskinder-in-deutschland-unicef-studie-2014-data.pdf},
Urldate = {2016-07-02},
Owner = {sg},
Timestamp = {2016.07.14}
}
@Misc{BAMF2015b,
Title = {Aktuelle Zahlen zu Asyl.},
Author = {{Bundesamt für Migration und Flüchtlinge}},
Year = {2015},
Note = {Stand: Dezember 2015.},
Owner = {lo},
Shortauthor = {BAMF},
Timestamp = {2016.07.17}
}
@Inbook{Braches-Chyrek2014a,
Title = {Einleitung.},
Author = {Braches-Chyrek, Rita and Röhner, Charlotte and Sünker, Heinz and Hopf, Michaela},
Booktitle = {Handbuch frühe Kindheit.},
Year = {2014},
Editor = {Braches-Chyrek, Rita and Röhner, Charlotte and Sünker, Heinz and Hopf, Michaela},
Pages = {11-24},
Publisher = {Budrich},
Address = {Opladen},
Owner = {sg},
Timestamp = {2016.07.31}
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\nocite{*}
\printbibliography
\end{document}
答案1
字段的格式通过 控制\DeclareFieldFormat
。大多数默认值在 中设置biblatex.def
。
您可以使用以下方法重置斜体/强调和引号
\DeclareFieldFormat*{citetitle}{#1}
\DeclareFieldFormat*{journaltitle}{#1}
\DeclareFieldFormat*{issuetitle}{#1}
\DeclareFieldFormat*{maintitle}{#1}
\DeclareFieldFormat*{booktitle}{#1}
\DeclareFieldFormat*{title}{#1}
请注意,我们在这里使用了带星号的版本,这允许我们无条件覆盖所有特定类型的格式。
MWE(请注意,我已修改您的 bib 条目,以便不在标题中包含句号,这是没有必要的;我还将声明更改DefineBibliographyStrings
为使用\adddot
而不是\adddotspace
)
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[ngerman]{babel}
\usepackage{csquotes}
\usepackage[
style=authoryear-icomp,
backend=biber,
sorting=nyt,
sortcase=false,
url=false,
isbn=false,
doi=false,
clearlang=false,
maxbibnames=10,
maxcitenames=2,
dashed=false
]{biblatex}
% usage of et al.
\DefineBibliographyStrings{ngerman}{%
andothers = {et\addspace al\adddot},%
andmore = {et\addspace al\adddot},%
}
% colon behind author in bibliography
\renewcommand{\labelnamepunct}{\addcolon\space}
\usepackage{xpatch}
% author in bold font in bibliography
\xpretobibmacro{author}{\mkbibbold\bgroup}{}{}
\xapptobibmacro{author}{\egroup}{}{}
\xpretobibmacro{bbx:shortauthor}{\mkbibbold\bgroup}{}{}
\xapptobibmacro{bbx:shortauthor}{\egroup}{}{}
\xpretobibmacro{bbx:editor}{\mkbibbold\bgroup}{}{}
\xapptobibmacro{bbx:editor}{\egroup}{}{}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@Book{Berthold2014,
title = {In erster Linie Kinder. Flüchtlingskinder in Deutschland},
author = {Berthold, Thomas},
year = {2014},
publisher = {Deutsches Komitee für \textsc{Unicef} e.\,V.},
url = {https://www.unicef.de/blob/56282/fa13c2eefcd41dfca5d89d44c72e72e3/fluechtlingskinder-in-deutschland-unicef-studie-2014-data.pdf},
urldate = {2016-07-02},
}
@Misc{BAMF2015b,
title = {Aktuelle Zahlen zu Asyl},
author = {{Bundesamt für Migration und Flüchtlinge}},
year = {2015},
note = {Stand: Dezember 2015.},
shortauthor = {BAMF},
}
@Inbook{Braches-Chyrek2014a,
title = {Einleitung},
author = {Braches-Chyrek, Rita and Röhner, Charlotte and Sünker, Heinz and Hopf, Michaela},
booktitle = {Handbuch frühe Kindheit},
year = {2014},
editor = {Braches-Chyrek, Rita and Röhner, Charlotte and Sünker, Heinz and Hopf, Michaela},
pages = {11-24},
publisher = {Budrich},
address = {Opladen},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\DeclareFieldFormat*{citetitle}{#1}
\DeclareFieldFormat*{journaltitle}{#1}
\DeclareFieldFormat*{issuetitle}{#1}
\DeclareFieldFormat*{maintitle}{#1}
\DeclareFieldFormat*{booktitle}{#1}
\DeclareFieldFormat*{title}{#1}
\begin{document}
\nocite{*}
\printbibliography
\end{document}
更彻底的解决方案是让所有\mkbib...
格式化命令都输出纯文本
\makeatletter
\protected\def\blx@imc@mkbibquote#1{#1}
\protected\long\def\blx@imc@mkbibemph#1{#1}
%\protected\long\def\blx@imc@mkbibbold#1{#1}
\protected\long\def\blx@imc@mkbibitalic#1{#1}
\makeatother