latex3 / hyperref

Hypertext support for LaTeX
170 stars 36 forks source link

hyperref adds vertical space at the beginning of enumerate environment when the latter nested in tblr environment #333

Open gannaiju opened 8 months ago

gannaiju commented 8 months ago

hyperref package adds vertical space at the beginning of the enumerate environment. Please compare two different compiled result:


\documentclass{article}
\usepackage{tabularray}
\UseTblrLibrary{varwidth}

\begin{document}

\begin{tblr}{
    hlines,vlines,
    measure = vbox, stretch = -1,
    }
  test & \begin{enumerate}
      \item test 1
      \item test 2
    \end{enumerate} \\ 
  test & test       
\end{tblr}
\end{document}

The code gets the result: image When hyperref package is used, there appears some space at the beginning of the enumerate environment:


\documentclass{article}
\usepackage{tabularray}
\UseTblrLibrary{varwidth}
\usepackage{hyperref}

\begin{document}

\begin{tblr}{
    hlines,vlines,
    measure = vbox, stretch = -1,
    }
  test & \begin{enumerate}
      \item test 1
      \item test 2
     \end{enumerate} \\ 
  test & test       
\end{tblr}
\end{document}

The code above gets the result: image which may not desired result.

OS: Win 10 Home Edition Distribution: TeX Live 2024 Compiler: xelatex

u-fischer commented 8 months ago

yes, hyperref inserts an anchor and that can affect spacing. You can disable the anchor locally:

\documentclass{article}
\usepackage{tabularray}
\UseTblrLibrary{varwidth}
\usepackage{hyperref}

\begin{document}

\begin{tblr}{
    hlines,vlines,
    measure = vbox, stretch = -1,
    }
  test & \begin{enumerate}\LinkTargetOff
      \item \leavevmode\LinkTargetOn   test 1
      \item test 2
     \end{enumerate} \\ 
  test & test       
\end{tblr}
\end{document}

image

muzimuzhi commented 8 months ago

related: https://github.com/lvjr/tabularray/issues/196