I think that something like this is potentially really useful as for many documents on-screen viewing is becoming the default. Of course, to be really useful, the tabs should not only show that the current chapter, as requested by the OP, but they should also be hyperlinks to the other chapters. The code below produces documents with hyperlnks that look like this:

The bulk of the work is done by tikz. The extra tricks are:
- the tabs are added to each page using
\AddEverypageHook from the everypage package
- the total number of chapters in the document is stored in the aux file as
\numberofchapters, which defaults to 0
- every chapter is automatically given a label (
chapter1, chapter2, ...), in the aux file so that hyperref can create a link to it
- I found that I had to use
\rotatebox from graphicx because rotating the text in a tikz \node did not rotate the hyperlink
- Using tikzpagenodes, the first chapter tab is in line with the bottom of the page header
Ideally details such as the distance of this menu-bar to the margin, the rotation angle and the choice of colours etc should be handled by some nice interface. Some, but not all, of these details are easy to change using the tikz styles at the top of the code. If there are a lot of chapters the tabs will go off the bottom of the page so this will not work so well. One way around this would be to have an option for displaying only the chapter numbers. One could imagine doing this with sections as well...
Here is the code:
\documentclass[svgnames]{book}
\usepackage[
a4paper,
left=3cm,
right=0cm,
top=3cm,
bottom=3cm,
footskip=.25in
]{geometry}
\usepackage{etoolbox}
\usepackage{everypage}
\usepackage{graphicx}
\usepackage{tikz}
\usepackage{tikzpagenodes}
\usepackage{hyperref}
\hypersetup{
colorlinks = false,%
linkbordercolor = LightSkyBlue
}
% define some tikz styles to control the chapter tabs
\usetikzlibrary{calc}
\tikzset{
chaptertab/.style = {
rectangle,
anchor = north west,
rounded corners,
draw=DodgerBlue,
line width=1mm,
fill=LightSkyBlue,
text=NavyBlue,
%rotate=270,
inner sep=1mm,
minimum height=24mm,
minimum width=10mm,
font=\bfseries
},
current chapter/.style={
text=red
},
menu background/.style = {
fill=LightSteelBlue
}
}
% we keep track of the total number of chapters in the aux file. By
% default this is 0
\providecommand\numberofchapters{0}
\makeatletter
\AtEndDocument{
\write\@auxout{\string\gdef\string\numberofchapters{\arabic{chapter}}}
}
\makeatother
% the chapter tabs are added to each page using the following command
\newcommand\addchaptertabs{%
\begin{tikzpicture}[remember picture, overlay]
\draw[menu background](current page.north west) rectangle ($ (current page.south west)+(1.2,0) $);
\foreach \chap [evaluate=\chap as \offset using {2.4*(1-\chap)}] in {1,...,\numberofchapters} {
\ifnum\value{chapter}=\chap
\def\chapterextra{current chapter}
\else
\def\chapterextra{}
\fi
\node[chaptertab,\chapterextra] (chapter\chap) at
($ (current page.north west|-current page header area.south west)+(0,\offset) $)
{\rotatebox{-270}{\hyperref[chapter\chap]{Chapter \chap}}};
}
\end{tikzpicture}%
}
% create a label (and hence a hyperlink) to each to chapter
\appto\chapter{\relax\label{chapter\arabic{chapter}}}
\AddEverypageHook{\addchaptertabs}
\begin{document}
\chapter{One}
\chapter{Two}
\chapter{Three}
\end{document}
\pdfpagewidthwith changing the layout via the geometry package - it has its own method to set the paper size, e.g.papersize={⟨width⟩,⟨height⟩}– samcarter_is_at_topanswers.xyz Jul 01 '18 at 13:34