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

如何在Org-mode导出图片时使用自定义LaTeX命令\figsource

在Org-mode中为图片添加自定义\figsource命令的解决方案

要在Org-mode导出LaTeX时为图片添加\figsource命令,你可以通过以下两种方法实现,推荐第一种来保持Org语法的灵活性:

方法1:使用#+ATTR_LATEX的:post选项

这是最贴合你现有Org图片语法的方案,只需要在图片前添加带:post参数的#+ATTR_LATEX属性,就能在导出的LaTeX代码中把\figsource放在\caption之后。

示例Org代码:

#+LABEL: fig:myfigure
#+CAPTION: My caption
#+ATTR_LATEX: :post \figsource{Source: \cite{someone2015}}
[[file:img/fig1.pdf]]

导出后的LaTeX代码:

\begin{figure}[htbp]
  \centering
  \includegraphics[width=1\linewidth]{img/fig1.pdf}
  \caption{My caption}
  \figsource{Source: \cite{someone2015}}
\end{figure}

你之前尝试的#+ATTR_LATEX: \figsource{...}无效,是因为Org的#+ATTR_LATEX需要使用预定义的选项(比如:pre、:post)来指定代码插入的位置,直接写命令会被Org忽略。

方法2:直接嵌入LaTeX环境块

如果只需要导出LaTeX格式,也可以直接在Org文件中写完整的LaTeX图片环境,这样完全自定义内容:

示例Org代码:

#+LABEL: fig:myfigure
#+BEGIN_LaTeX
\begin{figure}[htbp]
  \centering
  \includegraphics[width=1\linewidth]{img/fig1.pdf}
  \caption{My caption}
  \figsource{Source: \cite{someone2015}}
\end{figure}
#+END_LaTeX

这种方法的缺点是,当你导出到其他格式(比如HTML)时,这段LaTeX代码不会被解析成图片,所以只适合单一LaTeX导出的场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 07:44:46