From d0c7cc17855848085c3c573b0b62f5495cecc326 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Thu, 6 Sep 2018 20:46:11 +0000 Subject: beamerswitch (6sep18) git-svn-id: svn://tug.org/texlive/trunk@48603 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/beamerswitch/README.md | 2 +- .../beamerswitch/beamerswitch-example-article.pdf | Bin 19268 -> 19449 bytes .../beamerswitch/beamerswitch-example-handout.pdf | Bin 21464 -> 21750 bytes .../beamerswitch/beamerswitch-example-trans.pdf | Bin 22072 -> 22398 bytes .../latex/beamerswitch/beamerswitch-example.pdf | Bin 35507 -> 36065 bytes .../latex/beamerswitch/beamerswitch-example.tex | 2 +- .../doc/latex/beamerswitch/beamerswitch.pdf | Bin 178966 -> 180847 bytes .../source/latex/beamerswitch/beamerswitch.dtx | 64 ++++++++++++++------- .../source/latex/beamerswitch/beamerswitch.ins | 4 +- .../tex/latex/beamerswitch/beamerswitch.cls | 33 +++++++---- 10 files changed, 68 insertions(+), 37 deletions(-) diff --git a/Master/texmf-dist/doc/latex/beamerswitch/README.md b/Master/texmf-dist/doc/latex/beamerswitch/README.md index 61606727ca0..a9fa98d429a 100644 --- a/Master/texmf-dist/doc/latex/beamerswitch/README.md +++ b/Master/texmf-dist/doc/latex/beamerswitch/README.md @@ -88,7 +88,7 @@ first three steps. ## Licence -Copyright 2016–2017 Alex Ball. +Copyright 2016–2018 Alex Ball. This work consists of the file beamerswitch.dtx and a Makefile. diff --git a/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example-article.pdf b/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example-article.pdf index dcd142b2eed..252abb8ebed 100644 Binary files a/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example-article.pdf and b/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example-article.pdf differ diff --git a/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example-handout.pdf b/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example-handout.pdf index 2eab8d0ae64..2379a5e71ae 100644 Binary files a/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example-handout.pdf and b/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example-handout.pdf differ diff --git a/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example-trans.pdf b/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example-trans.pdf index c34950254b9..345e28dc55a 100644 Binary files a/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example-trans.pdf and b/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example-trans.pdf differ diff --git a/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example.pdf b/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example.pdf index 22162c3dc51..fbd9042cce9 100644 Binary files a/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example.pdf and b/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example.pdf differ diff --git a/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example.tex b/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example.tex index d4ad2527b43..6fc2fa51423 100644 --- a/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example.tex +++ b/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example.tex @@ -77,6 +77,6 @@ Happy {\LaTeX}ing! \end{document} %% -%% Copyright (C) 2016-2017 by Alex Ball +%% Copyright (C) 2016-2018 by Alex Ball %% %% End of file `beamerswitch-example.tex'. diff --git a/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch.pdf b/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch.pdf index 81353b62318..b343110216f 100644 Binary files a/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch.pdf and b/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch.pdf differ diff --git a/Master/texmf-dist/source/latex/beamerswitch/beamerswitch.dtx b/Master/texmf-dist/source/latex/beamerswitch/beamerswitch.dtx index 385951fe169..38340046358 100644 --- a/Master/texmf-dist/source/latex/beamerswitch/beamerswitch.dtx +++ b/Master/texmf-dist/source/latex/beamerswitch/beamerswitch.dtx @@ -93,7 +93,7 @@ first three steps. ## Licence -Copyright 2016–2017 Alex Ball. +Copyright 2016–2018 Alex Ball. This work consists of the file beamerswitch.dtx and a Makefile. @@ -135,10 +135,10 @@ This work is "maintained" (as per LPPL maintenance status) by \begin{frame} \maketitle \end{frame} - + This very brief demonstration shows how to use the \textsf{beamerswitch} class. It allows easy switching between four \textsf{beamer} modes: - + \begin{frame}{Beamer modes} \begin{itemize}[<+->] \item \textbf{beamer:} regular slides @@ -148,9 +148,9 @@ This work is "maintained" (as per LPPL maintenance status) by document based on the slides \end{itemize} \end{frame} - + Notice how the text outside frames is only shown in article mode. Also, - + \begin{frame}{Features shown in this example} \begin{itemize}[<+->] \item Different class options are passed to the \textsf{beamer} and @@ -160,13 +160,13 @@ This work is "maintained" (as per LPPL maintenance status) by \item The handout has three slides to a page with room for handwritten notes at the side, and is in black and white. \end{itemize} - + \uncover<+->{See the source code of this example to see how it was done.} \end{frame} - + This PDF also has title and author information saved in the metadata (look at the properties in your PDF viewer). - + Happy {\LaTeX}ing! \end{document} % @@ -193,7 +193,7 @@ See: http://www.latex-project.org/lppl.txt \endpreamble \postamble -Copyright (C) 2016-2017 by Alex Ball +Copyright (C) 2016-2018 by Alex Ball \endpostamble \usedir{tex/latex/\jobname} @@ -228,7 +228,7 @@ Copyright (C) 2016-2017 by Alex Ball %\NeedsTeXFormat{LaTeX2e}[1999/12/01] %\ProvidesClass{beamerswitch} %<*class> - [2018/08/29 v1.4 Convenient mode selection in Beamer documents] + [2018/09/05 v1.4.1 Convenient mode selection in Beamer documents] % %<*driver> \documentclass[12pt]{article} @@ -617,7 +617,7 @@ with \pkg{pgfpages} to get several slides on a single side of A4 (or Letter) paper. Beamer can also produce a double-height or double-width slide set, with the -intention that each half will be shown on a different display (e.g. one for +intention that each half will be shown on a different display (e.g.\@ one for the audience, one for the speaker). There are three variations of this, activated using \cs{setbeameroption}: @@ -1076,7 +1076,8 @@ using the following command in the preamble. \begin{docKey}{pnos}{}{no value, initially unset} Adds page numbers to the bottom of each page. The number appears at a distance of \cs{handoutpnobaseline} (initially 5mm) from the bottom edge of the page. - You change this with \cs{setlength}. + You can change this before calling \cs{handoutlayout}, if you like, using the + usual mechanisms (e.g.\@ \cs{setlength}). \end{docKey} \begin{docKey}{border}{=\meta{length}}{default 0.4pt, initially 0pt} @@ -1089,7 +1090,7 @@ using the following command in the preamble. Sets how much extra space to leave around each slide on the page. To achieve this it uses the \key{border shrink} option from \pkg{pgfpages}. If you add page numbers, this value will increase if necessary to prevent the number - colliding with the slides. + colliding with the slides, so treat it as a minimum. \end{docKey} \begin{docKey}{align}{}{no value, initially unset} @@ -1628,11 +1629,26 @@ suggestions for improvements or new features to the % \begin{macrocode} \newlength{\handoutpnobaseline} \setlength{\handoutpnobaseline}{5mm} +\newcounter{handoutpno} \define@boolkey[HL]{beamerswitch}{pnos}[true]{} % \end{macrocode} % \end{macro} % \end{optionkey} % +% \begin{macro}{beamerswitch@footer} +% In order to implement the page numbers, we need to add a hook to the +% \pkg{pgfpages} shipout routine. +% +% \begin{macrocode} +\def\beamerswitch@footer{} +\patchcmd{\pgfpages@buildshipoutbox}{% + \pgfsys@endpicture +}{% + \beamerswitch@footer\pgfsys@endpicture +}{}{} +% \end{macrocode} +% \end{macro} +% % \begin{macro}{handoutlayout} % \begin{macro}{beamerswitch@nup} % We set up the \cs{handoutlayout} command for applying these options. @@ -1644,13 +1660,16 @@ suggestions for improvements or new features to the \setlength{\beamerswitch@pnoadjust}{1em}% \setkeys[HL]{beamerswitch}{#1}% \ifbool{HL@beamerswitch@pnos}{% - \def\pgfsys@endpicture{% - \raisebox{\the\handoutpnobaseline}[0pt][0pt]{% - \makebox[\pgfphysicalwidth]{% - \the\numexpr(\value{page} - 2 + (\beamerswitch@nup / 2))% - / \beamerswitch@nup\relax - }% - }\par + \def\beamerswitch@footer{% + \stepcounter{handoutpno}% + \setbox0\vbox{\makebox[0pt][c]{\arabic{handoutpno}}}% + \pgfsys@beginscope + \pgflowlevel{\pgftransformshift{% + \pgfpoint{.5\pgfphysicalwidth}{\handoutpnobaseline}}}% + \wd0=0pt% + \dp0=-\ht0% + \pgfsys@hbox0% + \pgfsys@endscope }% \ifbool{HL@beamerswitch@align}{% \ifcase\value{beamerswitch@nupcase}\relax @@ -1675,7 +1694,7 @@ suggestions for improvements or new features to the {\the\dimexpr\handoutpnobaseline + \beamerswitch@pnoadjust\relax}% }{}% }{% - \def\pgfsys@endpicture{}% + \def\beamerswitch@footer{}% }% \ifcase\value{beamerswitch@nupcase}\relax \def\beamerswitch@nup{2}% @@ -2777,7 +2796,8 @@ suggestions for improvements or new features to the \ifundef{\beamer@originstitute}{% \renewcommand{\institute}[2][]{\def\insertinstitute{##2}}% }{% - \renewcommand{\institute}[2][]{\def\insertinstitute{##2}\beamer@originstitute{##2}}% + \renewcommand{\institute}[2][]{% + \def\insertinstitute{##2}\beamer@originstitute{##2}}% }% % \end{macrocode} % diff --git a/Master/texmf-dist/source/latex/beamerswitch/beamerswitch.ins b/Master/texmf-dist/source/latex/beamerswitch/beamerswitch.ins index e48670e9fbe..9db81b07ff1 100644 --- a/Master/texmf-dist/source/latex/beamerswitch/beamerswitch.ins +++ b/Master/texmf-dist/source/latex/beamerswitch/beamerswitch.ins @@ -28,7 +28,7 @@ See: http://www.latex-project.org/lppl.txt \endpreamble \postamble -Copyright (C) 2016-2017 by Alex Ball +Copyright (C) 2016-2018 by Alex Ball \endpostamble \usedir{tex/latex/\jobname} @@ -41,6 +41,6 @@ Copyright (C) 2016-2017 by Alex Ball } \endbatchfile %% -%% Copyright (C) 2016-2017 by Alex Ball +%% Copyright (C) 2016-2018 by Alex Ball %% %% End of file `beamerswitch.ins'. diff --git a/Master/texmf-dist/tex/latex/beamerswitch/beamerswitch.cls b/Master/texmf-dist/tex/latex/beamerswitch/beamerswitch.cls index df711623170..a9302bd920a 100644 --- a/Master/texmf-dist/tex/latex/beamerswitch/beamerswitch.cls +++ b/Master/texmf-dist/tex/latex/beamerswitch/beamerswitch.cls @@ -15,7 +15,7 @@ %% \NeedsTeXFormat{LaTeX2e}[1999/12/01] \ProvidesClass{beamerswitch} - [2018/08/29 v1.4 Convenient mode selection in Beamer documents] + [2018/09/05 v1.4.1 Convenient mode selection in Beamer documents] \RequirePackage{xkeyval,xkvltxp,etoolbox,xstring,shellesc,iftex} \define@boolkey[DC]{beamerswitch}{beamer}[true]{% \ifbool{DC@beamerswitch@beamer}{% @@ -183,20 +183,30 @@ \define@boolkey[HL]{beamerswitch}{align}[true]{} \newlength{\handoutpnobaseline} \setlength{\handoutpnobaseline}{5mm} +\newcounter{handoutpno} \define@boolkey[HL]{beamerswitch}{pnos}[true]{} +\def\beamerswitch@footer{} +\patchcmd{\pgfpages@buildshipoutbox}{% + \pgfsys@endpicture +}{% + \beamerswitch@footer\pgfsys@endpicture +}{}{} \newlength{\beamerswitch@pnoadjust} \newcommand*{\handoutlayout}[1]{% \only{% \setlength{\beamerswitch@pnoadjust}{1em}% \setkeys[HL]{beamerswitch}{#1}% \ifbool{HL@beamerswitch@pnos}{% - \def\pgfsys@endpicture{% - \raisebox{\the\handoutpnobaseline}[0pt][0pt]{% - \makebox[\pgfphysicalwidth]{% - \the\numexpr(\value{page} - 2 + (\beamerswitch@nup / 2))% - / \beamerswitch@nup\relax - }% - }\par + \def\beamerswitch@footer{% + \stepcounter{handoutpno}% + \setbox0\vbox{\makebox[0pt][c]{\arabic{handoutpno}}}% + \pgfsys@beginscope + \pgflowlevel{\pgftransformshift{% + \pgfpoint{.5\pgfphysicalwidth}{\handoutpnobaseline}}}% + \wd0=0pt% + \dp0=-\ht0% + \pgfsys@hbox0% + \pgfsys@endscope }% \ifbool{HL@beamerswitch@align}{% \ifcase\value{beamerswitch@nupcase}\relax @@ -221,7 +231,7 @@ {\the\dimexpr\handoutpnobaseline + \beamerswitch@pnoadjust\relax}% }{}% }{% - \def\pgfsys@endpicture{}% + \def\beamerswitch@footer{}% }% \ifcase\value{beamerswitch@nupcase}\relax \def\beamerswitch@nup{2}% @@ -1174,7 +1184,8 @@ \ifundef{\beamer@originstitute}{% \renewcommand{\institute}[2][]{\def\insertinstitute{##2}}% }{% - \renewcommand{\institute}[2][]{\def\insertinstitute{##2}\beamer@originstitute{##2}}% + \renewcommand{\institute}[2][]{% + \def\insertinstitute{##2}\beamer@originstitute{##2}}% }% \def\@maketitle{% \newpage @@ -1217,6 +1228,6 @@ }% } %% -%% Copyright (C) 2016-2017 by Alex Ball +%% Copyright (C) 2016-2018 by Alex Ball %% %% End of file `beamerswitch.cls'. -- cgit v1.2.3