You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

LaTeX biblatex包最新APA样式名称及Overleaf APA引用问题咨询

解决LaTeX biblatex APA7格式及自定义姓氏加粗问题

最新APA样式名称

biblatex中对应APA第7版的样式名称是style=apa,旧版APA6对应的是style=apa6,目前官方维护的apa样式已完全适配APA7规范。

正确的包加载配置

注意:APA7样式推荐使用biber作为后端(而非bibtex),bibtex对复杂的APA7格式支持有限。配置代码如下:

\usepackage[
  backend=biber,
  style=apa,
  url=true,
  doi=true,
  maxbibnames=99,
  sorting=ydnt,
  dashed=false,
  defernumbers=true
]{biblatex}

实现自定义姓氏加粗

要将目标姓氏在参考文献中加粗,可通过重新定义姓名格式实现,以下是通用示例(将Smith替换为你的实际姓氏):

\DeclareNameFormat{family-given}{
  \ifgiveninits
    {\usebibmacro{name:family-given}
      {\bfseries\ifblank{#5}{#1}{\namepartfamilyi}}
      {\namepartgiveni}
      {\namepartprefix}
      {\namepartsuffix}}
    {\usebibmacro{name:family-given}
      {\bfseries#1}
      {\namepartgiven}
      {\namepartprefix}
      {\namepartsuffix}}%
  \usebibmacro{name:andothers}
}

\DeclareNameAlias{sortname}{family-given}
\DeclareNameAlias{default}{family-given}

如果需要仅加粗自己作为作者的条目,可添加姓名判断逻辑:

\DeclareNameFormat{family-given}{
  \ifboolexpr{test {\ifme{#1}{#3}}}
    {\ifgiveninits
       {\usebibmacro{name:family-given}
         {\bfseries\ifblank{#5}{#1}{\namepartfamilyi}}
         {\namepartgiveni}
         {\namepartprefix}
         {\namepartsuffix}}
       {\usebibmacro{name:family-given}
         {\bfseries#1}
         {\namepartgiven}
         {\namepartprefix}
         {\namepartsuffix}}}
    {\ifgiveninits
       {\usebibmacro{name:family-given}
         {\ifblank{#5}{#1}{\namepartfamilyi}}
         {\namepartgiveni}
         {\namepartprefix}
         {\namepartsuffix}}
       {\usebibmacro{name:family-given}
         {#1}
         {\namepartgiven}
         {\namepartprefix}
         {\namepartsuffix}}}%
  \usebibmacro{name:andothers}
}

% 定义判断逻辑,替换为你的姓氏和名字
\newcommand*{\ifme}[2]{%
  \boolexpr{test {\ifstrequal{#1}{Smith}} and test {\ifstrequal{#2}{John}}}}

完整示例代码

\documentclass{article}
\usepackage[
  backend=biber,
  style=apa,
  url=true,
  doi=true,
  maxbibnames=99,
  sorting=ydnt,
  dashed=false,
  defernumbers=true
]{biblatex}

% 设置姓氏加粗(替换为你的姓氏)
\DeclareNameFormat{family-given}{
  \ifgiveninits
    {\usebibmacro{name:family-given}
      {\bfseries\ifblank{#5}{#1}{\namepartfamilyi}}
      {\namepartgiveni}
      {\namepartprefix}
      {\namepartsuffix}}
    {\usebibmacro{name:family-given}
      {\bfseries#1}
      {\namepartgiven}
      {\namepartprefix}
      {\namepartsuffix}}%
  \usebibmacro{name:andothers}
}

\DeclareNameAlias{sortname}{family-given}
\DeclareNameAlias{default}{family-given}

% 导入你的参考文献文件
\addbibresource{your-bibliography.bib}

\begin{document}
% 引用示例(显示所有参考文献)
\nocite{*}
\printbibliography
\end{document}

内容的提问来源于stack exchange,提问作者ryorlets

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 00:31:07