我使用 Biblatex 制作了我的参考书目:
\usepackage[backend=bibtex]{biblatex}
并且它工作正常,只是我用来引用网站的所有 @MISC 条目都是斜体。这本来是可以的,只是引用的 URL 也是斜体,看起来很糟糕。有没有一种简单的方法(包选项?)让 Biblatex 停止将整个条目斜体化?
最小工作示例:
\documentclass{article}
\usepackage[backend=bibtex]{biblatex}
\addbibresource{Bibliography.bib}
\begin{document}
Cite Book, \cite{Book}
Cite Misc, \cite{Misc}
\printbibliography
\end{document}
该文件Bibliography.bib
包含:
@book{Book,
author = {Author},
title = {Title},
publisher = {Publisher},
year = {2014},
}
@misc{Misc,
title = {``Title'' by Author (\url{http://tex.stackexchange.com/})}
}
上述代码生成:
我希望引文[2]的全部内容为\upshape
。
编辑:
感谢 musicman 的建议,我设法使用以下命令使 URL 直立打印:
\appto{\biburlsetup}{\renewcommand*{\UrlFont}{\upshape\ttfamily}}
但它仍然与参考书目 @MISC 条目的其余部分相冲突,后者是斜体的。有没有办法让整个内容不变成斜体?
我也尝试过
\appto{\bibfont}{\upshape}
并且
\renewcommand{\bibfont}{\upshape}
但都没有任何效果。
可能的解决方案:
能够使 URL 直立打印的关键似乎在于以下操作\UrlFont
:
\renewcommand*{\UrlFont}{\upshape\ttfamily}
但是我在 Biblatex 文档中找不到\UrlFont
。是否有类似的隐藏命令可以控制参考书目条目的字体?
答案1
为什么要把所有数据都写入字段中title
?
@misc{Misc, title = {``Title'' 作者 (\url{https://tex.stackexchange.com/})} }
像其他 bib-entry 一样将其拆分:
@misc{something,
title = {Title},
author = {author},
url = {http://text.stackexchange.com}
}
然后,您可以使用以下方式格式化您的标题(引号而不是斜体):
\DeclareFieldFormat{title}{\mkbibquote{#1}}
如果您只想格式化@misc-type的标题,可以这样写:
\DeclareFieldFormat[misc]{title}{\mkbibquote{#1}}
还考虑切换到 biber-backend。
答案2
您误用了 的 bibfields @Misc
。将所有内容都放入title
意味着它会变成斜体。您实际上应该使用title
、author
和url
。
\documentclass{article}
\usepackage[backend=bibtex]{biblatex}
\addbibresource{Bibliography.bib}
\begin{document}
Cite Book, \cite{Book}
Cite Misc, \cite{Misc}
Cite Misc2, \cite{Misc2}
\printbibliography
\end{document}
和Bibliography.bib
@Book{Book,
author = {Author},
title = {Title},
publisher = {Publisher},
year = 2014
}
@Misc{Misc,
title = {Title},
author = {Author},
url = {http://tex.stackexchange.com/}
}
@Misc{Misc2,
note = {``Title'' by Author
(\url{http://tex.stackexchange.com/})}
}
如果您确实想强制格式化,您可以使用note
而不是title
,如上例所示Misc2
,但我不建议这样做。