首先:我是 Latex 的新手,所以如果我一开始没有得到复杂的答案,请耐心等待。我还没有定义自己的命令和类似的东西。因此,我会很高兴得到每一个详细的答案!提前谢谢您。
我的问题:我正在写一份报告,我的主管想要 chem-angew 格式的参考书目。但是,他也想要标题和发行号。但是它们没有显示在我写的这个最小示例中:
\documentclass[hidelinks,paper=a4,fontsize=12pt,DIV=12,listof=totocnumbered]{scrreprt}
\usepackage[backend=biber,natbib=true,hyperref=true,style=chem-angew]{biblatex}
\addbibresource{My_EndNote_Library.bib}
\bibliography{My_EndNote_Library}
\begin{document}
\cite{RAFT-instruction}
\printbibliography[heading=bibnumbered]
\end{document}
正如我所说:到目前为止,我从未干预过任何软件包……我如何让 biblatex 显示文章标题和发行号?标题应显示在名称后面。卷后的发行号和发行号应放在括号中,如下所示:(3)
我在谷歌上找到了这一行:
\setkeys{chem-angew}{articletitle=true}
但是,它不起作用。它显示 articletitle 未定义。
我的 .bib:
@article{
RAFT-instruction,
Author = {Chen, Senbin and Binder, Wolfgang H.},
Title = {Controlled copolymerization of n-butyl acrylate with semifluorinated acrylates by RAFT polymerization},
Journal = {Polym. Chem.},
Volume = {6},
Number = {3},
Pages = {448-458},
Year = {2015} }
非常感谢您的关注!问候
我的整个序言:
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[greek,english]{babel}
\usepackage[babel,english=british]{csquotes}
\usepackage{blindtext}
\usepackage{xcolor}
\usepackage[automark]{scrpage2}
\usepackage{longtable}
\usepackage{textgreek}
\usepackage{chemformula}
\usepackage{listings}
\usepackage[section]{placeins}
\usepackage{tabularx}
\usepackage{graphicx}
\usepackage{chngcntr}
\usepackage{rsc}
\usepackage{multirow}
\usepackage{enumitem}
\usepackage{subfigure}
\usepackage{amsmath}
\usepackage{epstopdf}
\usepackage{caption}
%\captionsetup{labelsep=period,labelfont=bf}%damit in Beschriftungen x.x. steht anstatt x.x und damit fett
\usepackage[export]{adjustbox}
\usepackage[backend=biber,natbib=true,hyperref=true,style=chem-angew,articletitle=true]{biblatex}
%\usepackage[numbib,nottoc]{tocbibind}
\usepackage{amsmath}
\usepackage{float} %macht, dass schema möglich sind
\usepackage[labelfont=bf]{caption} % fette Schrift unter Figure und anderen Floats
\usepackage[hidelinks]{hyperref}
\usepackage{cleveref} %damit Schema im Text richtig bezeichnet
编辑:已经感谢您的帮助了。但是,第二次查看时,我注意到问题编号不在括号中,而且前面有一个逗号……可以去掉这个吗?它应该看起来像这样:
作者、标题。期刊名称 年, 体积(问题),从页面到页面
答案1
添加期刊标题
要将文章标题添加到参考书目中,您只需将其添加articletitle=true
到 的选项中biblatex
。以下是包含该选项的完整 MWEB。
\documentclass[hidelinks,paper=a4,fontsize=12pt,DIV=12,listof=totocnumbered]{scrreprt}
\usepackage[backend=biber,natbib=true,hyperref=true,style=chem-angew,articletitle=true]{biblatex}
\addbibresource{\jobname.bib}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@article{
RAFT-instruction,
Author = {Chen, Senbin and Binder, Wolfgang H.},
Title = {Controlled copolymerization of n-butyl acrylate with semifluorinated acrylates by RAFT polymerization},
Journal = {Polym. Chem.},
Volume = {6},
Number = {3},
Pages = {448-458},
Year = {2015} }
\end{filecontents}
\begin{document}
\cite{RAFT-instruction}
\printbibliography[heading=bibnumbered]
\end{document}
还请注意,\bibliography{My_EndNote_Library}
由于这是一个bibtex
命令,因此我已删除,而您正在使用biblatex
。
添加问题编号
为了能够添加打印问题编号,我已经BibliographyDriver
从中复制并修改了相应的内容chem-angew.bbx
。您只需将以下代码添加到文档的序言中即可。
\DeclareBibliographyDriver{article}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/translator+others}%
\setunit{\labelnamepunct}\newblock
\iftoggle{bbx:articletitle}
{%
\usebibmacro{title}%
\newunit
}
{}%
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{bytranslator+others}%
\newunit\newblock
\printfield{version}%
\newunit\newblock
\usebibmacro{journal+issuetitle}%
\newunit
\printfield{number}%
\newunit
\usebibmacro{byeditor+others}%
\newunit
\usebibmacro{note+pages}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{issn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\usebibmacro{related}%
\usebibmacro{finentry}%
}
与原始代码相比,我添加了\printfield{number} \newunit
。
编辑:括号中的问题编号前没有逗号
为了实现您在编辑中请求的格式,您可以用以下内容替换上面的 witten 代码。
\DeclareFieldFormat[article]{number}{(#1)}
\renewbibmacro*{journal+issuetitle}{%
\usebibmacro{journal}%
\setunit*{\addspace}%
\iffieldundef{series}
{}
{\newunit
\printfield{series}%
\setunit{\addspace}}%
\usebibmacro{date}%
\newunit
\printfield{volume}%
\setunit*{\addspace}%
\printfield{number}%
\newunit
}
\DeclareBibliographyDriver{article}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/translator+others}%
\setunit{\labelnamepunct}\newblock
\iftoggle{bbx:articletitle}
{%
\usebibmacro{title}%
\newunit
}
{}%
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{bytranslator+others}%
\newunit\newblock
\printfield{version}%
\newunit\newblock
\usebibmacro{journal+issuetitle}%
\newunit
\usebibmacro{byeditor+others}%
\newunit
\usebibmacro{note+pages}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{issn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\usebibmacro{related}%
\usebibmacro{finentry}%
}
\DeclareFieldFormat...
确保发行号写在括号中。
\renewbibmacro...
添加发行号时不会在卷和发行之间打印逗号,而是打印空格。如果要删除空格,只需删除\setunit*{\addspace}%
两个\printfiled
命令之间的以下内容即可。
\printfield{volume}%
\setunit*{\addspace}%
\printfield{number}%