長表標題設定名稱選項

長表標題設定名稱選項

name當您嘗試使用以下命令更改表格標題選項時,我發現了一個問題longtable

\documentclass{scrartcl}

%CAPTION
\usepackage{caption}

%TABELLENÜBERSCHRIFT FORMATIERUNG
\captionsetup[table]{name=Tab.,labelfont=bf, font=footnotesize, justification=RaggedRight, singlelinecheck=false, format=plain, textformat=period}

\usepackage{longtable}
\usepackage{floatrow}

\begin{document}

%TABLE
\begin{table}
\centering
\renewcommand{\arraystretch}{1.5}
\ttabbox{\caption{Abc}}{\begin{tabular}{c|c|c|c}A & B & C & D \\A & B & C & D\end{tabular}}
\end{table}

%LONG TABLE
\renewcommand\arraystretch{1.5}
\begin{longtable}{c|c|c|c}
A & B & A & B \\ \hline 
A & B & A & B \\ \hline
A & B & A & B \\ \hline
A & B & A & B \\ \hline
\caption{Abc}
\end{longtable}

\end{document}

pdflatex.exe返回:

!未定義的控制序列。 (長桌)

name=Tab.從一切中刪除後\captionsetup工作正常。

我該如何解決這個問題,以及如何格式化長表格標題,例如表格標題(表格標題)?

LOG FILE :
This is pdfTeX, Version 3.14159265-2.6-1.40.20 (MiKTeX 2.9.6960 64-bit) (preloaded format=pdflatex 2019.3.4) 5 MAR 2019 09:33

答案1

這是套件的 longtable 程式碼中的一個錯誤floatrow(在 的重新定義中\LT@array)。它將標題選項設為tablelongtable不先\@captype定義table

僅當使用floatrow, longtable, caption,組合並且需要定義所使用的標題選項(如選項)時,此錯誤才相關。\captionsetup{...}\@captypename=...

解決方法:不要使用\captionsetup[table]{name=...}而是\usepackage[tablename=...]{caption}替代。

由於軟體包未維護(因此沒有人會修復它),我在軟體包 v3.4g 中floatrow包含了錯誤代碼的補丁,因此在使用此版本(或更新版本)的軟體包時不再需要解決方法。floatrowcaptioncaption

相關內容