为何PDF参考文献正常但生成的.bbl文件不符合要求?
问题:使用Biblatex+Biber生成的.bbl文件无法直接复制到主.tex文件中
我需要按期刊要求把所有参考文献放入主.tex文件,使用的Biblatex配置代码如下:
\documentclass{article} \usepackage[backend=biber, style=nature, defernumbers=true]{biblatex} \addbibresource{references.bib} \usepackage{csquotes} ... % 其他包和宏定义 ... % 文章正文、图片等内容 ... \printbibliography[type=article]
编译后PDF里的参考文献显示完全正常,但Overleaf生成的.bbl文件内容是这样的:
% $ biblatex auxiliary file $ % $ biblatex bbl format version 3.2 $ % Do not modify the above lines! % % This is an auxiliary file used by the 'biblatex' package. % This file may safely be deleted. It will be recreated by % biber as required. % \begingroup \makeatletter \@ifundefined{ver@biblatex.sty} {\@latex@error {Missing 'biblatex' package} {The bibliography requires the 'biblatex' package.} \aftergroup\endinput} {} \endgroup \refsection{0} \datalist[entry]{none/global//global/global} \entry{seki_density_2018}{article}{} \name{author}{9}{}{% {{hash=e0e9862ec41f00011f2fc99716fde6a3}{% family={Seki}, familyi={S\bibinitperiod}, given={Shiro}, giveni={S\bibinitperiod}}}% {{hash=a95ad55f9ffdfe1e39ccc91112620f2a}{%} ... ...
这显然不是能直接复制到主.tex里的常规.bbl内容,请问是什么原因?
解决说明
你看到的这个.bbl是Biblatex 3.0及以上版本默认生成的新式结构化数据.bbl,和传统LaTeX的.bbl格式完全不同:
- Biblatex 3.0版本后重构了.bbl的结构,不再生成传统的
\bibitem格式条目,转而生成包含原始文献数据的专用命令(比如\entry、\name),这种文件只能给Biblatex自身编译时调用,不能直接嵌入主文档编译。 - 期刊要求的是把参考文献写成传统LaTeX的
\bibitem形式,而非Biblatex专用的辅助数据文件。
可行的解决方式:
- 切换后端到BibTeX:把配置里的
backend=biber改成backend=bibtex,部分样式可能需要微调,这样生成的.bbl会是传统的\bibitem格式,直接复制里面的内容到主文档即可。 - 转换现有Biblatex条目为\bibitem:可以使用
biblatex2bibitem脚本(本地TeX发行版一般自带),把Biblatex生成的结构化.bbl转换成传统格式;或者先编译出正确的PDF,再通过工具提取出\bibitem代码。 - 本地编译获取传统.bbl:如果Overleaf上切换后端不方便,可把项目下载到本地,用TeX Live/MikTeX编译(切换backend到bibtex),然后提取生成的.bbl内容。
内容的提问来源于stack exchange,提问作者Kit Barker
相关产品推荐
相关产品推荐

