# Beamerposter and bookmarks

I am using a scheme like:

\section{<section name>}
\begin{block}{\thesection.  \secname}
% content placed here
\end{block}


to achieve panels on a beamer poster. I would also ideally use

\hypersetup{bookmarks=true}


in the preamble or otherwise, so that when the poster is opened in a .pdf viewer which supports bookmarks, one could navigate to the panel / section / block of interest.

I suspect that this functionality is working fine, however, I'm realizing that the bookmark functionality may be restricted to page. Naturally, since all of the content on a poster is on the same page, then selecting different bookmarks in the .pdf viewer will have no observable effect on the document view.

The functionality that I think would be useful is to zoom to area occupied by content'. Despite the fact that all content is on the same page, selecting a bookmark would adjust the view, zooming in to encompass the page space occupied by the section associated with the bookmark selected.

Any comments on whether this functionality is supported?

\documentclass[final,professionalfonts]{beamer} % options are 12pt, 14pt, 17pt, 20pt
\usefonttheme[onlymath]{serif}
\usepackage{fp}%
\usepackage{xkeyval}%
\usepackage{amsmath,amssymb}%
\usepackage[english]{babel}%
\usepackage{calc}%
\usepackage{multicol}%
\usepackage{lipsum}
\usepackage[size=12pt,%
orientation=landscape,%
size=A0,%
scale=1]%
{beamerposter}%

% declare mode and theme
\mode<presentation>{%
\usetheme{Montpellier}
}%

% define title
\title[]{Poster title}

% define authors
\author{Author}%

% define affiliations
\institute[]{Institute}%

% date
\date{\today}

% define the conference / venue
\def\theconference{Presented at}

\def\theurl{}

% figures and tables
\setbeamertemplate{caption}[numbered]

% define lengths
\newlength{\intrablocksep}
\setlength{\intrablocksep}{0.25cm}

\newlength\MyColSep{}
\setlength\MyColSep{1cm}

\newlength\MyColWd{}
\setlength{\MyColWd}{0.24\textwidth-0.8666666\MyColSep}

% create a double column width
\newlength\MyColWddouble{}
\setlength{\MyColWddouble}{0.36\textwidth+0.8666666\MyColSep}

\newlength\MyColWhalf{}
\setlength{\MyColWhalf}{0.18\textwidth-0.8666666\MyColSep}

\hypersetup{bookmarks=true}

\begin{document}

\begin{frame}{}
\small
\begin{columns}[t]
\begin{column}[t]{\MyColWd} % 1
% Abstract
\begin{block}{Abstract}
\lipsum[1]
\end{block}
% Background
\section{Background}
\begin{block}{\thesection.  \secname}
\lipsum[1-3]
\end{block}
\end{column} % 1

\begin{column}[t]{\MyColWddouble}   % 2
% body section
\section{Body Section}
\begin{block}{\thesection.  \secname}
\lipsum[1-3]
\end{block}
% body section
\section{Body Section}
\begin{block}{\thesection.  \secname}
\lipsum[1-3]
\end{block}
\end{column} %  2

\begin{column}[t]{\MyColWddouble}   % 3
% body section
\section{Body Section}
\begin{block}{\thesection.  \secname}
\lipsum[1-10]
\end{block}
\end{column} % 3
\end{columns} % end poster columns

\end{frame} % end poster

\end{document}

• Have a look at the bookmark package. It can do all kind of crazy stuff, like specifying the view (as long as the pdfviewer supports it) – samcarter_is_at_topanswers.xyz Nov 7 '18 at 21:53
• Certainly can @samcarter, thanks for your interest. – John Chris Nov 8 '18 at 3:19
• I was hoping that something like \bookmark[dest=LastSection,view={XYZ \calc{.5\paperwidth} \calc{.5\paperheight} 0.5}]{test} would set the zoom to 50%, but unfortunately it does not seem to work – samcarter_is_at_topanswers.xyz Nov 9 '18 at 16:46
• I have looked into the bookmark package and tried a few things with no immediate success. Opening up for bounty to attract input from a user who may have more experience with the bookmark package and it's application to beamer and beamerposter. – John Chris Nov 13 '18 at 18:50

This could give you a start

\documentclass{article}
\usepackage{hyperref}
\usepackage{bookmark}

\usepackage{zref-savepos,expl3,lipsum,xcolor}
\ExplSyntaxOn
\cs_new:Npn\posinbp #1 {\dim_to_decimal_in_unit:nn{\int_eval:n{#1}sp}{1bp}}
\ExplSyntaxOff

\begin{document}

\leavevmode\zsavepos{sec1}\textcolor{red}{SEC 1}
\lipsum[1]

\vspace*{3cm}\hspace*{4cm}\zsavepos{sec2}\textcolor{blue}{SEC2}
\lipsum[1]

% +655360 is to move the y coordinate up by 10pt
\bookmark[
page=1,
view=XYZ \posinbp{\zposx{sec1}} \posinbp{\zposy{sec1}+655360}  3]{SEC 1}

\bookmark[
page=1,
view=XYZ \posinbp{\zposx{sec2}} \posinbp{\zposy{sec2}+655360}  3]{SEC 2}

\end{document}


In the adobe reader (in sumatra it doesn't work) I then get this initial view

And this if I click on the SEC2 bookmark:

An alternative view could be the page /FitR left bottom right top` setting. For this use two labels, one at the top left, and one at the bottom right.