TransWikia.com

Beamer's only animations break layout intra-animation with multicol

TeX - LaTeX Asked by ComFreek on November 26, 2020

I am typesetting code with minted inside a multicols environment together with Beamer’s only animations. That leads to inconsistent layout spacing between the animated frames.

Demo Video

GIF screencast of the problem
(click if you don’t see a GIF animation)

MWE

For the MWE you first need to save the files from this post’s appendix.
The problem is reproducible with text files of different lengths, too, albeit not that clearly anymore. If somebody finds an easy way to embed those files into the code here without cluttering the whole page, feel free to comment that.
.

% !TEX TS-program = latexmk -xelatex -shell-escape -silent -latexoption="-synctex=1" -f %
% !TEX encoding = UTF-8 Unicode
%
% First download casestudy1.txt and casestudy2.txt from the appendix of
% https://tex.stackexchange.com/q/540969/38074, then compile!
documentclass[xcolor=dvipsnames,hyperref={bookmarksnumbered,colorlinks}]{beamer}
usetheme{Madrid}
usecolortheme{beaver}
setbeamertemplate{navigation symbols}{}

usepackage{multicol}
usepackage{minted}

newcommandsupertiny{fontsize{2.5}{3}selectfont}
newmintedfile[casestudyFile]{text}{firstline=2,breaklines=true,breakanywhere=true,fontsize=supertiny,frame=none,linenos=false}
newcommand{typesetCaseStudy}[2]{%
    begin{multicols}{5}
        {supertiny
            casestudyFile{#1}%
            only<1>{casestudyFile{#2}}%
            only<2>{{usebeamercolor[bg]{block title alerted}casestudyFile{#2}}}%
            only<3->{textcolor{white}{casestudyFile{#2}}}%
        }
    end{multicols}
}

begin{document}    
    begin{frame}{Case Study}
        typesetCaseStudy{casestudy1.txt}{casestudy2.txt}
        begin{itemize}
            item structure{Before:} 
            begin{itemize}
                item Foo
                item Bar
            end{itemize}
            item<3-> structure{After:} Baz
        end{itemize}
    end{frame}
end{document}

Appendix

castestudy1.txt:

testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest

casestudy2.txt:

testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest

One Answer

Here is a (probably not final) solution based on egreg's answer here

EDIT After your correction of the definition of typesetCaseStudy I believe everything works as expected using

newcommand{typesetCaseStudy}[2]{%
        begin{multicols}{5}
                casestudyFile{#1}%
                only<1>{casestudyFile{#2}}%
                only<2>{{color{blockred}casestudyFile{#2}}}%
                only<3->{{color{white}casestudyFile{#2}}}%
        end{multicols}
    }
% !TEX TS-program = latexmk -xelatex -shell-escape -silent -latexoption="-synctex=1" -f %
% !TEX encoding = UTF-8 Unicode
%
% First download casestudy1.txt and casestudy2.txt from the appendix of
% https://tex.stackexchange.com/q/540969/38074, then compile!
documentclass[xcolor=dvipsnames,hyperref={bookmarksnumbered,colorlinks}]{beamer}
usetheme{Madrid}
usecolortheme{beaver}
setbeamertemplate{navigation symbols}{}

usepackage{multicol}
usepackage{minted}

begin{filecontents*}[overwrite]{casestudy1.txt}
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
end{filecontents*}
begin{filecontents*}[overwrite]{casestudy2.txt}
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
testtesttesttesttesttesttest
end{filecontents*}

usebeamercolor{block title alerted}
colorlet{blockred}{bg}

usepackage{xpatch}
xapptocmd{inputminted}{vspace{-1ex}}{}{}

newcommandsupertiny{fontsize{2.5}{3}selectfont}
newmintedfile[casestudyFile]{text}{firstline=2,breaklines=true,breakanywhere=true,fontsize=supertiny,frame=none,linenos=false}
newcommand{typesetCaseStudy}[2]{%
    begin{multicols}{5}
            casestudyFile{#1}%
            only<1>{casestudyFile{#2}}%
            only<2>{{color{blockred}casestudyFile{#2}}}%
            only<3->{{color{white}casestudyFile{#2}}}%
    end{multicols}
}

begin{document}    
    begin{frame}{Case Study}
        typesetCaseStudy{casestudy1.txt}{casestudy2.txt}
        begin{itemize}
            item structure{Before:} 
            begin{itemize}
                item Foo
                item Bar
            end{itemize}
            item<3-> structure{After:} Baz
        end{itemize}
    end{frame}
end{document}

enter image description here enter image description here enter image description here

Answered by BambOo on November 26, 2020

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP