1

I have a beamer presentation, in which there are some hyperlinks on each slide. These allow to jump to different sections in the pdf.

enter image description here

Sometimes these buttons interfere with the text, formulas and figures of the slide. Is there a way to make them visible only when pressing a key?

Code:

\documentclass{beamer}

\AtBeginSection[]{\label{sec:\thesection}}
\newcounter{prevsec}

\title{Some Title}

\setbeamertemplate{navigation symbols}{}

\setbeamertemplate{footline}{%
        \setcounter{prevsec}{\thesection}
        \ifnum\theprevsec>1
            \addtocounter{prevsec}{-1}
        \fi
    \quad\hyperlinkpresentationstart{\beamerreturnbutton{Back to start}}%
    \quad\hyperlinksectionstart{\beamerreturnbutton{Back to section start}}%
    \quad\hyperlink{Detailed_Analysis}{\beamergotobutton{Detailed Analysis}}%
    \quad\hyperlinksectionstartnext{\beamerskipbutton{Next section}}%
    \quad\hyperlink{sec:\theprevsec}{\beamerskipbutton{previous section}}%
    \vspace*{0.2cm}%
}


\begin{document}

   \section{sec1}
    \begin{frame}%{ss}
    1st section/ page 1 out of 1
    \end{frame}

    \begin{frame}
    1st section/ page 2 out of 2
    \end{frame}

    \begin{frame}[label=Detailed_Analysis]
        Detailed Analysis
    \end{frame}

    \section{sec2}
    \begin{frame}
    2nd section
    \end{frame}

    \section{sec3}
    \begin{frame}
    3rd section
    \end{frame}

    \begin{frame}
    More content on the 3rd section
    \end{frame}

    \begin{frame}
    Even More content on the 3rd section
    \end{frame}


\end{document}
  • 1
    Look at the ocgx package if you are using Adobe Acrobat. – percusse Feb 11 '18 at 2:10
  • or package ocgx2, as in the answer. – AlexG Apr 12 '18 at 10:55
1

This is an OCG-based (i. e. PDF Layers) solution that works in Acrobat Reader.

Instead of pressing a key, the visibility of the navigation controls is toggled by approaching the slide foot with the mouse pointer:

\documentclass{beamer}

\usepackage{ocgx2}

%patch hyperref to make PDF Annotations PDF-Layer-(OCG)-aware
\makeatletter
  \let\Hy@setpdfborderOrig\Hy@setpdfborder
  \def\Hy@setpdfborder{\ocgbase@insert@oc\Hy@setpdfborderOrig}%
\makeatother

\AtBeginSection[]{\label{sec:\thesection}}
\newcounter{prevsec}

\title{Some Title}

\setbeamertemplate{navigation symbols}{}

\setbeamertemplate{footline}{%
  \setcounter{prevsec}{\thesection}%
  \ifnum\theprevsec>1
    \addtocounter{prevsec}{-1}%
  \fi%
  \parbox{\paperwidth}{%
    \toggleocgs[triggerocg=onmouseenter]{navLayer}{\phantom{\rule{\paperwidth}{.2cm}}}\\
    \begin{ocg}{navLayer}{navLayer}{off}
    % dumb PDF annotation to work-around an AR bug  
    \immediate\pdfannot width 3pt height 3pt depth 0pt{/Ff 65537/FT/Btn/Subtype/Widget}%   
    \quad\hyperlinkpresentationstart{\beamerreturnbutton{Back to start}}%
    \quad\hyperlinksectionstart{\beamerreturnbutton{Back to section start}}%
    \quad\hyperlink{Detailed_Analysis}{\beamergotobutton{Detailed Analysis}}%
    \quad\hyperlinksectionstartnext{\beamerskipbutton{Next section}}%
    \quad\hyperlink{sec:\theprevsec}{\beamerskipbutton{previous section}}%
    \end{ocg}\\%
    \toggleocgs[triggerocg=onmouseenter]{navLayer}{\phantom{\rule{\paperwidth}{.2cm}}}%
  }% 
}

\begin{document}

   \section{sec1}
    \begin{frame}%{ss}
    1st section/ page 1 out of 1
    \end{frame}

    \begin{frame}
    1st section/ page 2 out of 2
    \end{frame}

    \begin{frame}[label=Detailed_Analysis]
        Detailed Analysis
    \end{frame}

    \section{sec2}
    \begin{frame}
    2nd section
    \end{frame}

    \section{sec3}
    \begin{frame}
    3rd section
    \end{frame}

    \begin{frame}
    More content on the 3rd section
    \end{frame}

    \begin{frame}
    Even More content on the 3rd section
    \end{frame}

\end{document}
-1

No, LaTeX only makes static pdf files, so you can't hide until a keyboard click.

What you can do is to hide them on one page:

\begin{frame}[plain]
  • 1
    That is just wrong. Using OCG you can have interactive elements in a PDF. – Henri Menke Apr 12 '18 at 0:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.