하이퍼참조가 있는 tabularx 내부의 각주

하이퍼참조가 있는 tabularx 내부의 각주

inside hyperref와의 비호환성을 처리하기 위해 나만의 명령을 만들고 싶습니다 . 에 대한 옵션을 사용할 수 없습니다 .footnotestabularxhyperfootnotes=falsehyperref

내가 원하는 것을 얻기 위해 절반쯤 온 것 같지만 LaTeX에 대한 경험이 충분하지 않습니다.

문제는 다음과 같습니다

  1. 각주는 한 번이 아닌 세 번 표시됩니다.
  2. 번호 매기기가 잘못되었습니다.
  3. 링크가 누락되었습니다.

암호:

\documentclass{article}
\usepackage{tabularx}
\usepackage{xparse}
\usepackage{tikz}
\usetikzlibrary{arrows.meta}

\usepackage[%
%    hyperfootnotes=false,
]{hyperref} 

\newcommand\tikznode[3][]%
    {\tikz[remember picture,baseline=(#2.base)]
        \node[minimum size=0pt,inner sep=0pt,#1](#2){#3};%
    }


\begin{document}
Some text. This is the main text.\footnote{This is a footnote in the main text.}

\fbox{
    \begin{minipage}{\linewidth}
        This is a quotation with a footnote in it.\footnote{A footnote in the minipage} The footnote is numbered independently of the rest of the text\footnote{test}.
\end{minipage}
}

\fbox{
    \begin{minipage}[t]{\textwidth}
        \tikzstyle{every picture}+=[remember picture]
        \renewcommand{\arraystretch}{1.00}
        \newcounter{cntasterisk}
        \newcommand{\TypeAsterisk}{\stepcounter{cntasterisk}\tikznode{gw-\arabic{cntasterisk}}{*}}
        \newcounter{cntoption}
        \newcommand{\OptionAsterisk}[1]{\stepcounter{cntoption}\tikznode{op-\arabic{cntoption}}{#1}}
        \NewDocumentCommand{\TypeName}{sm}{%
            \IfBooleanTF{#1}{%
                {\bf #2}&\multicolumn{2}{l|}{}\\[1ex]%
            }{%
                {\bf #2}&\multicolumn{2}{l|}{}\\%
            }
        }
        \NewDocumentCommand{\OptName}{sm}{%
            \IfBooleanTF{#1}{%
                &\multicolumn{2}{l|}{\OptionAsterisk{\it #2:}}\\[1ex]%
            }{%
                &\multicolumn{2}{l|}{\OptionAsterisk\it #2:}\\%
            }
        }
        \NewDocumentCommand{\OptValue}{smm}{%
            \IfBooleanTF{#1}{%
                &\makebox[1ex]{}{\bf #2}&#3\\[1ex]%
            }{%
                &\makebox[1ex]{}{\bf #2}&#3\\%
            }
        }

        \newcommand\savedfootnotes{}        
        \newcommand\MyFootnote[1]{%
            \stepcounter{mpfootnote}$^\textrm{\scriptsize\thempfootnote}$
            \xdef\savedfootnotes%
            {\unexpanded\expandafter{\savedfootnotes}\noexpand\footnotetext{#1}}%
        }

         \begin{tabularx}{\textwidth}{|l<{\makebox[1em]{}}|l@{\makebox[2ex]{--}\makebox[1ex]{}}X|}
        \hline
        \TypeName{name\TypeAsterisk\TypeAsterisk\TypeAsterisk\TypeAsterisk}
        \hline
        \OptName{option 1}
        \hline
        \OptValue{V1}{vlaue 1}
        \hline
        \OptValue{V2}{vlaue 2\MyFootnote{whatever}}
        \hline
        \OptValue{V3}{vlaue 3\MyFootnote{anything}}
        \hline
        \OptName{option 2}
        \hline
        \OptValue{V4}{vlaue 4}
        \hline
        \OptValue{V5}{vlaue 5}
        \hline
        \OptName{option 3\MyFootnote{even more}}
        \hline
        \OptValue{V6}{vlaue 6}
        \hline
        \OptName{option 4}
        \hline
        \OptValue{X\textit{n}}{special}
        \hline
        \end{tabularx}

        \savedfootnotes

        \begin{tikzpicture}[overlay]
        \foreach \x in {1,...,\arabic{cntasterisk}} {%
            \draw [red, -{Stealth}, thick] (gw-\x) |- (op-\x);
            }
        \end{tikzpicture}

        text\footnote{text}

   \end{minipage}
}
\end{document}

여기에 이미지 설명을 입력하세요

관련 정보