많은 파일에 대한 올바른 하이퍼링크가 포함된 별도 파일의 목차

많은 파일에 대한 올바른 하이퍼링크가 포함된 별도 파일의 목차

이것이 나의 첫 번째 질문입니다. 규칙을 따르지 않았다면 죄송합니다.

나는 가지고있다:

나는 pdflatex (Linux의 TeX Live)를 사용하여 책 수업에서 매뉴얼을 작성하고 있습니다. 각 장은 별도의 tex 파일(Chapter1.tex,Chapter2.tex).

또한 각 부분의 목차를 생성하기 위해 minitoc 패키지를 사용하고 있습니다. 주요 목차와 각 부분의 목차를 생성하는 명령도 별도의 tex 파일에 저장됩니다(maintoc.tex,parttoc.tex).

나는 필요하다:

전체 문서를 컴파일한 후 별도의 PDF 파일을 얻기 위해 \includeonly를 사용합니다(덕분에우편). hyperref 및 zref-xr 패키지를 사용하면 서로 다른 장에 해당하는 서로 다른 PDF 간의 올바른 하이퍼링크를 얻을 수 있습니다.하지만주요 목차와 각 부분의 목차 링크가 깨졌습니다.

최소한의 작업 예:

main.tex:

\documentclass[12pt,oneside]{book}
\usepackage{minitoc}
\usepackage{hyperref}

\ifdefined\tosplit
    \usepackage{zref-xr}
    \zxrsetup{toltxlabel}
\fi

\begin{document}
    \include{maintoc}
    \include{parttoc}
    \include{chapter1}
    \include{chapter2}
\end{document}

maintoc.tex:

\doparttoc
\tableofcontents

parttoc.tex:

\part{The first and last part}
\parttoc

Chapter1.tex:

\ifdefined\tosplit
    \zexternaldocument*{chapter2}
\fi

\chapter{The first chapter}
\label{chap:first}
See chapter~\ref{chap:second}.

Chapter2.tex:

\ifdefined\tosplit
    \zexternaldocument*{chapter1}
\fi

\chapter{The second chapter}
\label{chap:second}
See chapter~\ref{chap:first}.

내가 사용하는 명령 순서는 다음과 같습니다.

  1. pdflatex -jobname=tmp main && mv tmp.pdf main.pdf (x2)
  2. pdflatex -jobname=tmp "\def\tosplit{1}\includeonly{maintoc}\input{main}" && mv tmp.pdf maintoc.pdf
  3. pdflatex -jobname=tmp "\def\tosplit{1}\includeonly{parttoc}\input{main}" && mv tmp.pdf parttoc.pdf
  4. pdflatex -jobname=tmp "\def\tosplit{1}\includeonly{chapter1}\input{main}" && mv tmp.pdf Chapter1.pdf
  5. pdflatex -jobname=tmp "\def\tosplit{1}\includeonly{chapter2}\input{main}" && mv tmp.pdf Chapter2.pdf

나는 노력했다조언저자로부터하이코 오버디크hyperref 및 zref 패키지. 솔직히 나에게는 명확하지 않지만 두 개의 PDF(TOC 및 나머지)만 없으면 작동하고 그렇지 않으면 작동하지 않습니다. 항상 PDF 하나만 열려고 시도하지만 PDF가 너무 많습니다.

관련 정보