pdflatex
编译以下代码
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{eurosym}
\usepackage{array}
\usepackage{booktabs}
%\usepackage{breakurl}
\usepackage[ngerman]{babel}
\usepackage[paper=a4paper,vmargin=3cm,hmargin=2cm]{geometry}
\usepackage{tabu}
%\usepackage[colorlinks=true, pdfborder={0 0 0},
%linkcolor=blue, citecolor=blue, urlcolor=blue]{hyperref}
\usepackage{parnotes}
\renewcommand{\parnotevskip}{0.5ex}
\renewcommand{\parnoteintercmd}{\\}
\setlength\parindent{0em}
\setlength\parskip{1.5ex}
\begin{document}
\begin{table}
\centering
\begin{tabu}{@{}X[c]X[c]X[c]X[c]X[2.5c]X[c]}
\toprule[2pt]
\bfseries Hersteller &
\bfseries Pro"-dukt"-be"-zeich"-nung &
\bfseries Akku"-mu"-lator"-typ &
\bfseries Preis/\euro &
\bfseries Lebensdauer in Ladezyklen bezogen auf Entladung von 4,5Ah &
\bfseries Cents/ Ladezyklus
\\ \midrule
%http://www.reichelt.de/Blei-Vlies-Akkus-12V-Kung-Long/WP-5-12/3/index.html?;ACTION=3;LA=2;ARTICLE=130548;GROUPID=4232;artnr=WP+5-12
Kung Long & WP 5-12 & Blei-Vlies-Akku & 17,90\parnote{eins} & 200 & 8,95 \\
%http://www.pollin.de/shop/dt/NjI5ODI3OTk-/Stromversorgung/Akkus/Blei_Akkus/LiFePO4_Akku_VISION_LFP124_5T_12_V_5_Ah.html
Vision & LFP124.5T & LiFePO4-Akku & 93,50\parnote{zwei} & 2000 & 4,68 \\
%http://www.reichelt.de/Blei-Vlies-Akkus-12V-zyklisch/LC-CA-1215P1/3/index.html?;ACTION=3;LA=3;ARTICLE=77912;GROUPID=4235
Panasonic & LC-CA 1215P1 & Blei-Vlies-Akku & 39,95\parnote{drei} & 1400 & 2,85\\
\bottomrule[2pt]
\end{tabu}
\raggedright
\parnotes
\caption{dies ist ein Text}
\end{table}
\end{document}
到
当然,我想parnotes
从 1 开始枚举,当达到 3 时停止。
不幸的是,环境中的内容似乎tabu
被处理了三次,我找不到实现预期结果的方法。由于table
我的文档中有多个此类环境,所以我不想放弃 提供的自动枚举parnotes
。
也许有人可以给我一个提示或者向我展示一种可以产生所需输出的解决方法!?
答案1
和tabularx
我认为tabu
都允许您使用常规\footnote
命令来做表格注释,并防止该命令被多次执行。因此不使用\parnotes
是一个现实的选择。
如果您想使用,\parnotes
那么有几个错误需要修复,然后您需要添加一些与表试验的连接。
% Counter for parnote marks left by \parnote
\global\newcount\c@PN@t
% Counter for parnote marks *within* parnotes
\global\newcount\c@PN@n
\global
在 '\newcount 之前没有做任何有用的事情,但这不是对 latex 计数器声明的完整模拟,如果将其替换为
% Counter for parnote marks left by \parnote
\newcounter{PN@t}
% Counter for parnote marks *within* parnotes
\newcounter{PN@n}
表宏“了解”这些计数器,并在对表进行试验设置时重置它们。
这足以避免计数器增加超过 3,但是您需要添加一些代码来告诉表宏不要在试运行期间保存文本。tabularx
为此
\long\def\parnote{%
\relax\ifx\@footnotetext\TX@trial@ftn\else
\ifx\protect\@typeset@protect
\expandafter\expandafter\expandafter\PN@parnote@real
\else
\expandafter\expandafter\expandafter\@gobble
\fi
\fi
}
我快速浏览了禁忌的内部结构,但并没有立即发现相应的测试是什么。
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{eurosym}
\usepackage{tabularx}
\usepackage{booktabs}
%\usepackage{breakurl}
\usepackage[ngerman]{babel}
\usepackage[paper=a4paper,vmargin=3cm,hmargin=2cm]{geometry}
%\usepackage[colorlinks=true, pdfborder={0 0 0},
%linkcolor=blue, citecolor=blue, urlcolor=blue]{hyperref}
\usepackage{parnotes}
\renewcommand{\parnotevskip}{0.5ex}
\renewcommand{\parnoteintercmd}{\\}
\setlength\parindent{0em}
\setlength\parskip{1.5ex}
\begin{document}
\begin{table}
\centering
\begin{tabularx}\textwidth{@{}
*4{>{\centering\arraybackslash\hsize=.7\hsize}X}
>{\centering\arraybackslash\hsize=2.5\hsize}X
>{\centering\arraybackslash\hsize=.7\hsize}X}
\toprule[2pt]
\bfseries Hersteller &
\bfseries Pro"-dukt"-be"-zeich"-nung &
\bfseries Akku"-mu"-lator"-typ &
\bfseries Preis/\euro &
\bfseries Lebensdauer in Ladezyklen bezogen auf Entladung von 4,5Ah &
\bfseries Cents/ Ladezyklus
\\ \midrule
%http://www.reichelt.de/Blei-Vlies-Akkus-12V-Kung-Long/WP-5-12/3/index.html?;ACTION=3;LA=2;ARTICLE=130548;GROUPID=4232;artnr=WP+5-12
Kung Long & WP 5-12 & Blei-Vlies-Akku & 17,90\parnote{eins} & 200 & 8,95 \\
%http://www.pollin.de/shop/dt/NjI5ODI3OTk-/Stromversorgung/Akkus/Blei_Akkus/LiFePO4_Akku_VISION_LFP124_5T_12_V_5_Ah.html
Vision & LFP124.5T & LiFePO4-Akku & 93,50\parnote{zwei} & 2000 & 4,68 \\
%http://www.reichelt.de/Blei-Vlies-Akkus-12V-zyklisch/LC-CA-1215P1/3/index.html?;ACTION=3;LA=3;ARTICLE=77912;GROUPID=4235
Panasonic & LC-CA 1215P1 & Blei-Vlies-Akku & 39,95\parnote{drei} & 1400 & 2,85\\
\bottomrule[2pt]
\end{tabularx}
\raggedright
\parnotes
\caption{dies ist ein Text}
\end{table}
\end{document}