2013-03-26 53 views
10

我正在使用org-mode生成一个文档,其中有很多表格,使用内置的表格功能构建。我为表格添加了标题,但是当我将它们导出到LaTeX时,而不是显示在表格下方的标题时,它会显示在其上方。在手册section on tableslatex export documentation中,没有提及任何改变这种方法的方法,除了手动摆弄LaTeX代码。作为说明,以下代码片段显示了带有标题的示例表上的导出所生成的内容。在导出到LaTeX时,使组织表格标题出现在表格下方

#+CAPTION: Results using two methods with different parameter settings. 
#+LABEL: tbl:rescomp 
| Parameter | Result 1 | Result 2 | 
|-----------+----------+----------| 
|  0.5 |  0.1 |  0.8 | 
|   1 |  0.8 |  0.1 | 

出口:

\begin{table}[htb] 
\caption{Results using two methods with different parameter settings.} 
\label{tbl:rescomp} 
\begin{center} 
\begin{tabular}{rrr} 
Parameter & Result 1 & Result 2 \\ 
\hline 
     0.5 &  0.1 &  0.8 \\ 
     1 &  0.8 &  0.1 \\ 
\end{tabular} 
\end{center} 
\end{table} 

的问题可以很简单地固定。标题显示在文档的表格上方,因为它位于代码中的表格之上。移动下面的表格部分的标题定义修复该问题:

\begin{table}[htb] 

\begin{center} 
\begin{tabular}{rrr} 
Parameter & Result 1 & Result 2 \\ 
\hline 
     0.5 &  0.1 &  0.8 \\ 
     1 &  0.8 &  0.1 \\ 
\end{tabular} 
\end{center} 
\caption{Results using two methods with different parameter settings.} 
\label{tbl:rescomp} 
\end{table} 

配售表下方的说明文字定义的组织文件是不可能的,因为它定义了下一个表的标题,如描述manual。有什么办法可以让org-mode将标题导出到生成的表格下方?

回答

8

在由N.N.发布的link中,实现了允许将字幕放置在浮动上方或下方的功能的补丁被应用。查看github上的组织代码,Emacs 24.1的默认行为是将字幕放在表格的上方。若要将下面的表标题相反,org-export-latex-table-caption-above变量设置为nil

M-x customize-variable RET org-export-latex-table-caption-above RET nil 

M-x set-variable RET org-export-latex-table-caption-above RET nil 
+6

在'org-mode'的新版本中,这里提到的变量的名称已经更改为'org-latex-table-caption-above'。 – itsjeyd 2014-10-05 08:54:31

+1

在组织模式的最新版本(2016年12月)中,我们需要使用变量'org-latex-caption-above' – zhxchen17 2016-12-13 05:19:43

6

刚刚更新的答案Org-mode version 8.3.2,因为设置org-export-latex-table-caption-abovenil什么都不做了。

我加入了下一行我.emacs或​​文件:

(setq org-latex-caption-above nil) 

正如一个侧面说明,该变量默认包含值(table),这是我们覆盖到nil之一。

相关问题