Skip to content

LaTeX 参考文献 ​

LaTeX 通常把文献数据放在 .bib 文件中,再由 BibTeX 或 Biber 生成参考文献列表。投稿时按期刊、会议模板指定的工具和样式选择对应的编译流程。

1 文献数据库 ​

1.1 .bib 文件 ​

新建 references.bib,每条文献由类型、引用键和字段组成:

bibtex
@article{zhang2026ttint,
  author  = {Zhang, Henghua and Chen, Jue and Wu, Yuhang and Xiong, Yujie},
  title   = {{TT-INT}: A Time-Threshold-Based Lightweight In-Band Network
             Telemetry Scheme for {P4}-Enabled Programmable Networks},
  journal = {IEEE Transactions on Network and Service Management},
  year    = {2026},
  volume  = {23},
  pages   = {4335--4354},
  doi     = {10.1109/TNSM.2026.3688086}
}

示例使用已发表的 TT-INT 论文。zhang2026ttint 是引用键,应在文档加载的所有文献库中保持唯一。引用键一般采用“第一作者姓氏 + 年份 + 标题关键词”的形式。

1.2 常见文献类型 ​

类型用途常用字段
@article期刊论文author、title、journal、year、doi
@inproceedings会议论文author、title、booktitle、year
@book书籍author 或 editor、title、publisher、year
@mastersthesis硕士学位论文author、title、school、year
@phdthesis博士学位论文author、title、school、year
@misc其他材料根据文献类型填写
@online在线资料author、title、url、urldate

@online 属于 biblatex 数据模型,需要兼容传统 BibTeX 时,可改用 @misc。传统 BibTeX 的学位论文使用 school,biblatex 的对应字段通常使用 institution,并以 @thesis 及 type 区分论文类型。

1.3 字段写法 ​

  • 多位作者使用 and 分隔。
  • 姓名写成 Zhang, Henghua,可以明确区分姓和名。
  • 缩写和专有名词用额外的 {} 保护,例如 {P4}、{SDN} 和 {TT-INT}。
  • 页码范围使用两个连字符,例如 pages = {123--135}。
  • doi 字段填写 DOI 标识符,例如 10.1109/TNSM.2026.3688086。
  • 填写已核实的文献信息,暂缺字段查证后补充。

机构作为作者时,用额外的一组花括号保护名称,避免被按人名拆分:

bibtex
author = {{P4 Language Consortium}},

2 BibTeX ​

BibTeX 适合已经提供 .bst 样式文件的投稿模板。IEEE 论文通常使用 IEEEtran.bst。

2.1 文档写法 ​

假设主文件为 main.tex,文献库为 references.bib:

latex
\documentclass{article}

\begin{document}

In-band network telemetry can collect hop-level network state
\cite{zhang2026ttint}.

\bibliographystyle{IEEEtran}
\bibliography{references}

\end{document}

\bibliographystyle 指定 .bst 样式,\bibliography 填写文献库文件名,不带 .bib 后缀。

2.2 编译顺序 ​

sh
xelatex main
bibtex main
xelatex main
xelatex main

第一次 XeLaTeX 生成 .aux,BibTeX 读取引用、文献库和 .bst,生成 .bbl,后两次 XeLaTeX 更新参考文献和交叉引用。这里的 main 对应主文件 main.tex。

2.3 常用样式 ​

样式排序方式
plain按作者姓名排序
unsrt按正文中的引用顺序排列
alpha按作者等信息排序,使用作者与年份标签
IEEEtran按 IEEE 格式和引用顺序排列

3 biblatex 与 Biber ​

biblatex 在 LaTeX 层控制引用和参考文献格式,通常搭配 Biber。它更适合需要 UTF-8、多语言、筛选或多份参考文献列表的文档。

3.1 文档写法 ​

latex
\documentclass{article}
\usepackage{csquotes}
\usepackage[
  backend=biber,
  style=ieee,
  sorting=none
]{biblatex}

\addbibresource{references.bib}

\begin{document}

In-band network telemetry can collect hop-level network state
\cite{zhang2026ttint}.

\printbibliography

\end{document}

style=ieee 需要 biblatex-ieee。没有安装该样式时,可以先使用 style=numeric。

3.2 编译顺序 ​

sh
xelatex main
biber main
xelatex main
xelatex main

第一次 XeLaTeX 为 biblatex 生成 .bcf,Biber 根据它读取文献库并生成 .bbl。backend=biber 对应 biber 编译命令。biblatex 的 .bbl 格式与传统 BibTeX 样式生成的格式不同,切换流程时需重新生成。

3.3 引用命令 ​

命令用途
\cite{key}普通引用
\cite{key1,key2}同时引用多条文献
\parencite{key}括号式引用
\textcite{key}把作者作为正文的一部分
\nocite{key}不在正文引用,但加入文献列表
\nocite{*}输出文献库中的所有条目

具体输出形式由所选样式决定。

4 两套流程如何选择 ​

场景建议
模板提供 .bst 或明确要求 BibTeX使用 BibTeX
IEEE 投稿并使用官方 IEEEtran 模板使用 IEEEtran.bst
自己编写报告、学位论文或个人文档优先考虑 biblatex
文献包含大量 Unicode 或多语言内容使用 biblatex + Biber

两套流程的对应关系如下:

BibTeXbiblatex + Biber
\bibliographystyle{...}style=...
\bibliography{references}\addbibresource{references.bib}
文末自动插入参考文献\printbibliography
运行 bibtex main运行 biber main

5 常见问题 ​

5.1 引用显示为 [?] ​

依次检查:

  1. 引用键是否与 .bib 文件完全一致。
  2. .bib 条目是否缺少逗号或右花括号。
  3. 是否按正确顺序运行了 BibTeX 或 Biber。
  4. 后端运行后是否再次执行了两遍 LaTeX。

5.2 参考文献列表为空 ​

默认情况下,被引用的条目或通过 \nocite 指定的条目会进入文献列表,biblatex 的筛选选项还可能进一步限制结果。调试时可以临时加入 \nocite{*},确认文献库能否被正常读取。

5.3 标题中的缩写变成小写 ​

部分 BibTeX 样式会调整标题大小写。需要保留的内容应写成 {P4}、{IPv6} 或 {OpenFlow}。

5.4 Biber 找不到数据源 ​

确认 \addbibresource{references.bib} 包含文件后缀,并从主文件所在目录运行 biber main。

5.5 修改后结果没有更新 ​

先检查 BibTeX 或 Biber 的 .blg 日志,确认后端是否成功运行。切换文献工具后,旧的 .aux、.bbl、.bcf 或 .run.xml 可能仍被使用,可清理这些中间文件并重新执行完整流程。清理前确认 .bbl 是可重新生成的文件,有些投稿项目只提供 .bbl,不能直接删除。

5.6 DOI 或 URL 没有显示 ​

参考文献样式决定哪些字段会出现在最终结果中。DOI 与 URL 保存在对应字段,是否显示由当前 .bst 或 biblatex 样式控制。

5.7 投稿模板与 biblatex 冲突 ​

部分期刊类文件已经固定了参考文献方案。这类文档使用模板提供的引用命令和 .bst。

Released under the MIT License.