Beamer Parttoc mit anklickbaren Links

Beamer Parttoc mit anklickbaren Links

Ich versuche, ein Inhaltsverzeichnis mit anklickbaren Links zu erstellen. Ich habe festgestellt,Das, aber leider werden keine Hyperlinks generiert. Ich habe den folgenden Vorschlag gefunden, der anklickbare Links generiert, aber alle diese Links verweisen auf das Parttoc selbst.

\documentclass{beamer}
\usepackage[ngerman]{babel}
\usepackage{blindtext}

\newcommand{\dummyFrame}[1][1]{\begin{frame}{Test}\blindtext[#1]\end{frame}}
\usepackage{hyperref}


% for the list of parts
\makeatletter
\AtBeginPart{%
    \addtocontents{toc}{%
        \protect\beamer@partintoc{\the\c@part}{\beamer@partnameshort}{\the\c@page}%
    }%
    %    \setcounter{framenumber}{0}
    \frame{\partpage}
}
%% number, shortname, page.
\providecommand\beamer@partintoc[3]{%
    \ifnum\c@tocdepth=-1\relax
    % requesting onlyparts.
    \makebox[6em]{Einheit #1:} \textcolor{green!30!blue}{\hyperlink{#2}{#2}}
    \par
    \fi
}
\define@key{beamertoc}{onlyparts}[]{%
    \c@tocdepth=-1\relax
}
\makeatother%




\begin{document}
    \begin{frame}{Inhaltsübersicht}
        \tableofcontents[onlyparts]
    \end{frame}

\part{MyPart One}
    \dummyFrame
    
\part{MyPart Two}
    \dummyFrame
    \dummyFrame
    
\part{MyPart Three}
    \dummyFrame
    \dummyFrame
    
\end{document}

Wie kann ich dafür sorgen, dass diese Links auf den richtigen Frame verweisen? Vielen Dank im Voraus für alle Vorschläge

Antwort1

Sie könnten den Teilrahmen Beschriftungen geben, die Sie dann als Linkziele verwenden können:

\documentclass{beamer}
\usepackage[ngerman]{babel}
\usepackage{blindtext}

\newcommand{\dummyFrame}[1][1]{\begin{frame}{Test}\blindtext[#1]\end{frame}}
\usepackage{hyperref}


% for the list of parts
\makeatletter
\AtBeginPart{%
    \addtocontents{toc}{%
        \protect\beamer@partintoc{\the\c@part}{\hyperlink{part-\thepart}{\beamer@partnameshort}}{\the\c@page}%
    }%
    %    \setcounter{framenumber}{0}
    \frame[label=part-\thepart]{\partpage}
}
%% number, shortname, page.
\providecommand\beamer@partintoc[3]{%
    \ifnum\c@tocdepth=-1\relax
    % requesting onlyparts.
    \makebox[6em]{Einheit #1:} \textcolor{green!30!blue}{#2}
    \par
    \fi
}
\define@key{beamertoc}{onlyparts}[]{%
    \c@tocdepth=-1\relax
}
\makeatother%


\begin{document}
    \begin{frame}{Inhaltsübersicht}
        \tableofcontents[onlyparts]
    \end{frame}

\part{MyPart One}
    \dummyFrame
    
\part{MyPart Two}
    \dummyFrame
    \dummyFrame
    
\part{MyPart Three}
    \dummyFrame
    \dummyFrame
    
\end{document}

verwandte Informationen