Beamer 背景图片未覆盖徽标区域

Beamer 背景图片未覆盖徽标区域

我的目标是为每一帧切换背景模板\AtBeginSection{}。到目前为止,这是可行的,但徽标区域用纯白色区域覆盖了背景。

在此处输入图片描述

我正在使用\useoutertheme{sidebar}。我以前遇到过这个问题,当时我想不包含实际徽标,而是包含徽标和灰色区域\usebackgroundtemplate{}。问题还在于徽标区域被白色覆盖。我认为它现在的工作方式是一种黑客行为,因为我将灰色背景和徽标放在了命令中,\tikz{}并且\logo{}坐标非常模糊:

\logo{
  \tikz{
    \fill[grayborder] (-1,0) rectangle (20.7mm,1cm);
    \node at (.5cm,.5cm) {\includegraphics[width=2.5cm]{Hochschule-esslingen}};
  }
}

这是我\AtBeginSection{}现在的命令的样子:

\AtBeginSection[]{
  {
    \logo{}
    \useoutertheme{}
    \setbeamertemplate{footline}{}
    \setbeamertemplate{background}{
      \begin{tikzpicture}[at=(current page.south east)]
        \shadedraw[shading=axis,
          left color=left,
          right color=right,
          shading angle=135,
          middle color=right,
          vertical custom shading=35
        ]
        (0,0) rectangle (\paperwidth,\paperheight);
      \end{tikzpicture}
    }
    \begin{frame}
      \textcolor{white}{\MakeUppercase{\Huge\thesection\\[.4ex]\insertsectionhead}}
    \end{frame}
  }
}

作为额外的奖励,侧边栏也应该为\AtBeginSection{}-frame 禁用,但这可能是另一个问题。

梅威瑟:

\documentclass[aspectratio=169]{beamer}

\usepackage{tikz}
\usepackage{xcolor}

\definecolor{right}{HTML}{002d58}
\definecolor{left}{HTML}{00aadc}

\setbeamertemplate{navigation symbols}{}

\setbeamertemplate{footline}{%
  \hspace{10pt}\insertdate\hfill% 
  \insertshorttitle\hfill%
  \insertframenumber/\inserttotalframenumber\hspace{10pt}%
  \vspace{8pt}%
}

\useoutertheme[%
  width=3cm,
  height=1cm,
  hideothersubsections,
  ]{sidebar}

\AtBeginSection[]{
  {
    \useoutertheme{} % Should deactivate outertheme temporarily
    \setbeamertemplate{footline}{}
    \setbeamertemplate{background}{
      \begin{tikzpicture}[at=(current page.south east)]
        \shadedraw[shading=axis,
          left color=left,
          right color=right,
          shading angle=135,
        ]
        (0,0) rectangle (\paperwidth,\paperheight);
      \end{tikzpicture}
    }
    \begin{frame}
      \textcolor{white}{\MakeUppercase{\Huge\thesection\\[.4ex]\insertsectionhead}}
    \end{frame}
  }
}


\begin{document}

\section{First section}

\begin{frame}{Title}
  Some content
\end{frame}

\begin{frame}{Title}
  Some content
\end{frame}

\section{Second section}

\begin{frame}{Title}
  Some content
\end{frame}

\begin{frame}{Title}
  Some content
\end{frame}

\end{document}

答案1

在...的帮助下此主题,我试图重新定义 beamertemplate 以\logo完全禁用 -region。

kpsewhich beamerouterthemesidebar.sty给出了样式文件在磁盘上的存储位置。之后,可以检查徽标定义的位置,在本例中,徽标如下所示:

\defbeamertemplate*{headline}{sidebar theme}
{%
  \begin{beamercolorbox}[wd=\paperwidth]{frametitle}
    \ifx\beamer@sidebarside\beamer@lefttext%
    \else%
      \hfill%
    \fi%
    \ifdim\beamer@sidebarwidth>0pt%
      \usebeamercolor[bg]{logo}%
      \vrule width\beamer@sidebarwidth height \beamer@headheight%
      \hskip-\beamer@sidebarwidth%
      \hbox to \beamer@sidebarwidth{\hss\vbox to
        \beamer@headheight{\vss\hbox{\color{fg}\insertlogo}\vss}\hss}%
    \else%
      \vrule width0pt height \beamer@headheight%
    \fi%
  \end{beamercolorbox}
}

然后我包括

\defbeamertemplate{headline}{dummy}{}
\setbeamertemplate{headline}[dummy]

在我的文档的序言中。这样就删除了整个徽标,这对我来说已经足够了。

相关内容