\hyperref 명령에 *를 사용하지 않으면 무엇이 잘못될 수 있나요?

\hyperref 명령에 *를 사용하지 않으면 무엇이 잘못될 수 있나요?

\hyperref위키북의 Latex 매뉴얼에는 다음과 같이 명령을 사용해야 한다고 나와 있습니다 .

We use \hyperref[mainlemma]{lemma \ref*{mainlemma} }.

여기서 "mainlemma"는 라벨 이름입니다. 그런 다음 다음과 같이 말합니다.

중첩된 하이퍼링크를 방지하려면 * after 를 참고하세요 .\ref

내 문서에 이 줄을 한 번, 한 번 없이 구현했는데 *아무런 차이가 없었습니다.

그렇다면 를 사용하지 않으면 어떤 해를 끼칠 수 있습니까 *?

답변1

중요한 문제는 별표 버전을 사용하지 않으면 문서가 중첩된 하이퍼링크로 끝난다는 것입니다. PDF 뷰어에는 중첩된 하이퍼링크를 처리하는 일관된 방법이 없기 때문에 예상치 못한 결과가 발생할 수 있습니다.

이를 설명하기 위해 MWE를 고려하십시오.

\documentclass{article}

\usepackage{hyperref}

\begin{document}

\section{Sample}
\label{sample}

\section{Another Sample}

\hyperref[sample]{section~\ref{sample}}

\end{document}

이는 okular다음과 같이 표시됩니다.

두 하이퍼링크 모두 박스형으로 표시됨

hidelinksor 를 사용하면 colorlinks이 문제를 해결할 수 있습니다.

\documentclass{article}

\usepackage[colorlinks]{hyperref}

\begin{document}

\section{Sample}
\label{sample}

\section{Another Sample}

\hyperref[sample]{section~\ref{sample}}

\end{document}

이는 okular다음과 같습니다:

빨간색으로 표시된 링크

okular하지만 링크가 테두리가 되도록 의 접근성 설정을 변경하면 다음과 같이 표시됩니다.

링크 텍스트 빨간색 두 링크 모두 박스형

내부 링크와 외부 링크가 모두 동일한 위치를 가리키므로 의 실제 하이퍼링크는 okular동일한 위치로 연결되지만 다른 PDF 뷰어에게 혼란을 줄 수 있습니다. 내부 링크가 외부 링크와 다른 위치를 가리키면 더 많은 혼란이 발생합니다. 이는 \ref목차로 끝나는 섹션화 명령에 사용될 때 발생할 수 있습니다.

예를 들어:

\documentclass{article}

\usepackage[colorlinks]{hyperref}

\begin{document}

\tableofcontents

\section{Sample}
\label{sample}

\section{Another Sample Following on from section \ref{sample}}

\end{document}

목차가 포함된 문서 이미지

이제 목차에는 중첩된 링크가 있지만 해당 링크가 이동하는 위치는 PDF 뷰어와 문서 생성에 PDF 또는 DVI 형식을 사용했는지 여부에 따라 달라집니다. 내부 링크를 클릭하여 pdflatex문서를 컴파일하고 보면 섹션 2로 전송되지만 내부 링크 okular의 문서를 보면 섹션 1로 전송됩니다. + +를 사용하여 문서를 작성하는 경우 반대 발생합니다.evincelatexdvipsps2pdf

관련 정보