使用 KOMA 腳本在三部分錶旁邊正確頂部對齊標題

使用 KOMA 腳本在三部分錶旁邊正確頂部對齊標題

沒有 的話,事情看起來還不錯threeparttable

沒有三部分錶

取消註解 Threeparttable 和 tablenotes 會導致標題進入上一段。

與三部分錶

\documentclass{scrbook}                                                                                                                               
%                                                                                                                                                     
\usepackage[english]{babel}                                                                                                                           
\usepackage{caption}                                                                                                                                  
\usepackage{threeparttable}                                                                                                                           
\usepackage{lipsum}                                                                                                                                   
%                                                                                                                                                     
\KOMAoptions{captions=topbeside}                                                                                                                      
\setcapindent*{0pt}%                                                                                                                                  
\begin{document}                                                                                                                                      

\chapter{Crapper}                                                                                                                                     

\lipsum[1]                                                                                                                                            

\begin{table}[h]%                                                                                                                                     
  \label{tab:psource:final-params}%                                                                                                                   
  \begin{captionbeside}{This is the captions which should be top aligned}[l]%                                                            
      \raisebox{\dimexpr0.5\baselineskip-0.5\totalheight\relax}{%                                                                                     
      %\begin{threeparttable}                                                                                                                         
        \begin{tabular}{cccc}                                                                                                                         
          \hline                                                                                                                                      
          Test & Test & Test & Test \\                                                                                                                
          Test & Test & Test & Test\tnote{1} \\                                                                                                       
          Test & Test & Test & Test \\                                                                                                                
          Test & Test & Test & Test \\                                                                                                                
          Test & Test & Test & Test\tnote{2} \\                                                                                                       
          \hline                                                                                                                                      
        \end{tabular}                                                                                                                                 
      %  \begin{tablenotes}                                                                                                                           
      %    \item[1]{Test note}                                                                                                                        
      %    \item[2]{Test note}                                                                                                                        
      %    \end{tablenotes}                                                                                                                           
      %\end{threeparttable}%                                                                                                                          
  }%                                                                                                                                                  
  \end{captionbeside}                                                                                                                                 
\end{table}                                                                                                                                           

\end{document}                                                                                                                                        

答案1

不需要\raiseboxt在 的可選參數中使用(頂部對齊) tabular,並且\firsthline(來自array包)而不是第一個\hline

\documentclass{scrbook}                                                                                                                               
%                                                                                                                                                     
\usepackage[english]{babel}                                                                                                                           
\usepackage{caption}                                                                                                                                  
\usepackage{threeparttable,array}                                                                                                                           
\usepackage{lipsum}                                                                                                                                   
%                                                                                                                                                     
\KOMAoptions{captions=topbeside}                                                                                                                      
\setcapindent*{0pt}%                                                                                                                                  

\begin{document}                                                                                                                                      

\chapter{Test}                                                                                                                                     

\lipsum[1]                                                                                                                                            
\begin{table}%                                                                                                                                     
  \label{tab:psource:final-params}%                                                                                                                   
  \begin{captionbeside}{This is the caption which is now top aligned}[l]%                                                            
      \begin{threeparttable}
        \begin{tabular}[t]{cccc}                                                                                                                         
          \firsthline                                                                                                                                      
          Test & Test & Test & Test \\                                                                                                                
          Test & Test & Test & Test\tnote{1} \\                                                                                                       
          Test & Test & Test & Test \\                                                                                                                
          Test & Test & Test & Test \\                                                                                                                
          Test & Test & Test & Test\tnote{2} \\                                                                                                       
          \hline                                                                                                                                      
        \end{tabular}                                                                                                                                 
        \begin{tablenotes}                                                                                                                           
          \item[1]{Test note}                                                                                                                        
          \item[2]{Test note}                                                                                                                        
          \end{tablenotes}                                                                                                                           
      \end{threeparttable}%                                                                                                                          
  \end{captionbeside}                                                                                                                                 
\end{table}                                                                                                                                           

\end{document} 

在此輸入影像描述

如果您決定在表中使用該booktabs套件(我建議這樣做),則必須完成一些額外的工作:在下面的範例中,我定義了一個混合了和\firsttoprule的功能的命令:\firsthline\toprule

\documentclass{scrbook}                                                                                                                               
%                                                                                                                                                     
\usepackage[english]{babel}                                                                                                                           
\usepackage{caption}                                                                                                                                  
\usepackage{threeparttable,array,booktabs}                                                                                                                           
\usepackage{lipsum}                                                                                                                                   
%                                                                                                                                                     
\KOMAoptions{captions=topbeside}                                                                                                                      
\setcapindent*{0pt}%                                                                                                                                  

\makeatletter
\newcommand\firsttoprule{%
  \multicolumn1c{%
    \global\backup@length\ht\@arstrutbox
    \global\advance\backup@length\dp\@arstrutbox
    \global\advance\backup@length\arrayrulewidth
     \raise\extratabsurround\copy\@arstrutbox
    }\\[-\backup@length]\toprule
}
\makeatother


\begin{document}                                                                                                                                      

\chapter{Test}

\lipsum[1]                                                                                                                                            
\begin{table}[h]%                                                                                                                                     
  \label{tab:psource:final-params}%                                                                                                                   
  \begin{captionbeside}{This is the caption which is now top aligned}[l]%                                                            
      \begin{threeparttable}[t]                                                                                                                    
        \begin{tabular}[t]{cccc}                                                                                                                         
          \firsttoprule                                                                                                                                      
          Test & Test & Test & Test \\                                                                                                                
          Test & Test & Test & Test\tnote{1} \\                                                                                                       
          Test & Test & Test & Test \\                                                                                                                
          Test & Test & Test & Test \\                                                                                                                
          Test & Test & Test & Test\tnote{2} \\                                                                                                       
          \bottomrule                                                                                                                                     
        \end{tabular}                                                                                                                                 
        \begin{tablenotes}                                                                                                                           
          \item[1]{Test note}                                                                                                                        
          \item[2]{Test note}                                                                                                                        
          \end{tablenotes}                                                                                                                           
      \end{threeparttable}%                                                                                                                          
  \end{captionbeside}                                                                                                                                 
\end{table}                                                                                                                                           

\end{document}                 

在此輸入影像描述

相關內容