(我希望我的问题没有重复)
我有这个示例文件:
\documentclass[a4paper]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{polyglossia}
\setdefaultlanguage{italian}
\usepackage[backend=biber]{biblatex}
\addbibresource{bibliografia.bib}
\begin{document}
\section{Sezione}
Questo è un test.\nocite{Zarlino1558}
\printbibliography
\end{document}
我的 bibliografia.bib 包含:
@Book{Zarlino1558,
Title = {L'istitutioni harmoniche},
Author = {Zarlino, Gioseffo},
Publisher = {Francesco de' Franceschi},
Year = {1558},
Address = {Venezia},
}
我明白了:
[1] 吉奥塞福·扎利诺.和声制度。威尼斯:Francesco de' Franceschi,1558 年。
我需要这个:
\textsc{Gioseffo Zarlino},\textit{L'istitutioni harmoniche},威尼斯,Francesco de' Franceschi,1558 年。
我的序言中应该写些什么?
非常感谢你的帮助。
答案1
这是一个简单的解决方案,带有以下xpatch
软件包:
\documentclass[a4paper]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{ebgaramond}
\usepackage{filecontents}
\begin{filecontents}{bibliografia.bib}
@Book{Zarlino1558,
Title = {L'istitutioni harmoniche},
Author = {Zarlino, Gioseffo},
Publisher = {Francesco de' Franceschi},
Year = {1558},
Address = {Venezia},
}
\end{filecontents}
\usepackage{polyglossia}
\setdefaultlanguage{italian}
\usepackage[backend=biber, style=authortitle, sorting=nyt]{biblatex}
\usepackage{xpatch}
\let\mkbibnamelast\textsc%
\let\mkbibnamefirst\textsc%
\let\mkbibnameprefix\textsc%
\let\mkbibnameaffix\textsc
\renewcommand*{\newunitpunct}{\addcomma\space}
\xpatchbibmacro{publisher+location+date}{\setunit*{\addcolon\space}}%
{\setunit*{\addcomma\space}}{}{}
\DeclareNameAlias{sortname}{first-last}
\addbibresource{bibliografia.bib}
\begin{document}
\section{Sezione}
Questo è un test.\nocite{Zarlino1558}
\printbibliography
\end{document}
答案2
- 您需要设置
\DeclareFieldFormat*{title}{\textit{#1}}
使标题变为斜体。
如果您只是想改变的外观book
,您可以使用
\DeclareFieldFormat[book]{title}{\textit{#1}}
。
对于键之间的逗号,您需要添加
\renewcommand*{\newunitpunct}{\addcomma\space}
。对于使用小写字母的作者,请更新 bibcommands
mkbibnamelast
和mkbibnamefirst
\renewcommand*{\mkbibnamelast}[1]{\textsc{#1}} \renewcommand*{\mkbibnamefirst}[1]{\textsc{#1}}
完整代码:
\documentclass[a4paper]{scrartcl}
\begin{filecontents*}{bibliografia.bib}
@Book{Zarlino1558,
Title = {L'istitutioni harmoniche},
Author = {Zarlino, Gioseffo},
Publisher = {Francesco de' Franceschi},
Year = {1558},
Address = {Venezia},
}
\end{filecontents*}
\usepackage{polyglossia}
\setmainlanguage{italian}
\usepackage[backend=biber]{biblatex}
\DeclareFieldFormat*{title}{\textit{#1}}
\renewcommand*{\newunitpunct}{\addcomma\space}
\renewcommand*{\mkbibnamelast}[1]{\textsc{#1}}
\renewcommand*{\mkbibnamefirst}[1]{\textsc{#1}}
\addbibresource{bibliografia.bib}
\begin{document}
\section{Sezione}
Questo è un test.\nocite{Zarlino1558}
\printbibliography
\end{document}