Sombra de um bloco não arredondado no beamer

Sombra de um bloco não arredondado no beamer

Minha pergunta é simples: é possível adicionar sombra a um bloco NÃO arredondado no projetor?

Eu tenho tentado com:

\setbeamertemplate{blocks}[rounded=false][shadow=true]

Mas sem sucesso. Estou usando o tema Marburg. Aqui está o código do preâmbulo:

\documentclass[serif]{beamer}

\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage{epstopdf}
\usepackage[spanish]{babel}
\usepackage{mathpazo}
\linespread{1.05} 

\author{Lorem ipsum}
\title{LOrem ipsum}
\setbeamertemplate{navigation symbols}{}

 \usetheme[hideallsubsections,left,width=2cm]{Marburg}

\usecolortheme{rose}
 \setbeamercolor{titlelike}{bg=structure,fg=white}

\logo{\includegraphics[height=1.5cm]{../Fotos/Logo.png}}

  \setbeamertemplate{sidebar left}{
      \begin{minipage}{2cm}
          \centering      
    \vspace{\baselineskip}
    \insertlogo

      \vspace{\baselineskip}
      \color{white}{\insertshorttitle[width={2cm},center,respectlinebreaks]}

\insertshortauthor[width={2cm},center,respectlinebreaks] \vspace{\baselineskip}

\insertverticalnavigation{2cm}

\vspace{10\baselineskip}

\insertframenumber / \inserttotalframenumber
\end{minipage}
  }

\begin{document}
...

Desde já, obrigado,

Charlie

Responder1

Infelizmente, isso não é fácil nativamente beamer(mas há uma maneira fácil de conseguir isso usando ferramentas externas), já que as sombras são aplicadas apenas a caixas arredondadas (que são construídas usando beamerboxesrounded), mas não a caixas não arredondadas (que são construídas separadamente usando beamercolorbox).

Como alternativa, ofereço-lhe aqui a possibilidade de utilizar otcolorboxpacote para definir blocos emulando aqueles definidos pela beamerclasse, mas adicionando a sombra. No exemplo a seguir mostro como fazer isso facilmente definindo um estilo adequado e construindo clones sombreados para exampleblocke alertblock:

\documentclass[]{beamer}
\usepackage{mathpazo}
\usepackage[many]{tcolorbox}
\linespread{1.05} 

\usetheme[hideallsubsections,left,width=2cm]{Marburg}
\usefonttheme{serif}
\usecolortheme{rose}

\setbeamercolor{titlelike}{bg=structure,fg=white}

\setbeamertemplate{sidebar left}{%
\begin{minipage}{2cm}
  \centering      
  \vspace{\baselineskip}
  \insertlogo%
  \vspace{\baselineskip}
  \color{white}{\insertshorttitle[width={2cm},center,respectlinebreaks]}%
  \insertshortauthor[width={2cm},center,respectlinebreaks] \vspace{\baselineskip}
  \insertverticalnavigation{2cm}
  \vspace{10\baselineskip}
  \insertframenumber / \inserttotalframenumber
  \end{minipage}%
}

\makeatletter
\tikzset{beamer@color/.style={top color=\kvtcb@colback,bottom color=\kvtcb@colback}}
\makeatother

\tcbset{
tcbeamer/.style={
  beamer,
  width=\textwidth+3pt,
  enlarge left by=-3pt,
  bottom=0pt,
  top=0pt,
  left=1pt,
  right=1pt,
  arc=0pt,
  outer arc=0pt,
  toptitle=0pt,
  bottomtitle=-1pt,
  }
}

\newenvironment<>{tcexampleblock}[1]
  {\begin{actionenv}#2\begin{tcolorbox}[
    adjusted title=#1,
    tcbeamer,
    colback=block body example.bg,
    colframe=block title example.bg,
    fonttitle=\large\color{block title example.fg}
    ]
  }
  {\end{tcolorbox}\end{actionenv}}

\newenvironment<>{tcalertblock}[1]
  {\begin{actionenv}#2\begin{tcolorbox}[
    adjusted title=#1,
    tcbeamer,
    colback=block body alerted.bg,
    colframe=block title alerted.bg,
    fonttitle=\large\color{block title alerted.fg},
    adjusted title=#1,
    ]
  }
  {\end{tcolorbox}\end{actionenv}}

\begin{document}

\begin{frame}

\begin{exampleblock}<1->{Test exampleblock}
This is a block provided by the \texttt{beamer} class.
\end{exampleblock}

\begin{tcexampleblock}<2->{Test tcexampleblock}
This is a block provided by the \texttt{tcolorbox} package.
\end{tcexampleblock}

\begin{alertblock}<3->{Test alertblock}
This is a block provided by the \texttt{beamer} class.
\end{alertblock}

\begin{tcalertblock}<4-6>{Test tcalertblock}
This is a block provided by the \texttt{tcolorbox} package.
\end{tcalertblock}

\end{frame}

\end{document}

O resultado, mostrando os novos ambientes com reconhecimento de sobreposição em ação:

insira a descrição da imagem aqui

Observe que a opção de classe serif está obsoleta, então em vez de

\documentclass[serif]{beamer}

você deveria usar

\usefonttheme{serif}

Responder2

Você pode usar o novo tema interno tcolorbox (https://www.ctan.org/pkg/beamertheme-tcolorbox). Este tema tem a opção de ativar sombras independentemente de cantos arredondados/nítidos:\useinnertheme[shadow]{tcolorbox}

Exemplo completo:

\documentclass{beamer}

\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage{epstopdf}
\usepackage[spanish]{babel}
\usepackage{mathpazo}
\linespread{1.05} 

\author{Lorem ipsum}
\title{LOrem ipsum}
\setbeamertemplate{navigation symbols}{}

 \usetheme[hideallsubsections,left,width=2cm]{Marburg}

\usecolortheme{rose}
 \setbeamercolor{titlelike}{bg=structure,fg=white}

\logo{\includegraphics[height=1.5cm]{example-image-duck}}

  \setbeamertemplate{sidebar left}{
      \begin{minipage}{2cm}
          \centering      
    \vspace{\baselineskip}
    \insertlogo

      \vspace{\baselineskip}
      \color{white}{\insertshorttitle[width={2cm},center,respectlinebreaks]}

\insertshortauthor[width={2cm},center,respectlinebreaks] \vspace{\baselineskip}

\insertverticalnavigation{2cm}

\vspace{10\baselineskip}

\insertframenumber / \inserttotalframenumber
\end{minipage}
  }
  
\useinnertheme[shadow]{tcolorbox}

\begin{document}

\begin{frame}
\begin{block}{title}
content...
\end{block}
\end{frame}

\end{document}

insira a descrição da imagem aqui

informação relacionada