使用 \dimexpr 的投影仪中出现不需要的等号

使用 \dimexpr 的投影仪中出现不需要的等号

我在 Beamer 中使用以下脚本将我们的徽标放置在演示文稿中所有页面的最右上角,

\begin{textblock}{5}(10.0, \dimexpr 0.5\headheight - 7.5pt )
   \includegraphics[width=40pt]{logo.png}
\end{textblock}

文本块在页面中的放置没有问题,但是页面中有一个不想要的等号(见添加的图像)。这是我第一次使用\dimexpr,我犯了错误吗?

在此处输入图片描述

我认为这个不需要的等号来自\dimexpr 0.5\headheight - 7.5pt脚本的这一部分。因为当我将其替换为例如时1,等号就消失了。

我刚刚尝试做一些事情但\dimexpr 15pt - 7.5pt它仍然给出一个不受欢迎的等号。

答案1

另一个选择是使用带星号的textblock环境版本。这样,您可以指示单位,并且在calc加载包时,您可以进行常规calc计算。

\documentclass[10pt]{beamer}
\usetheme{Warsaw}
\usepackage{calc}
\usepackage{textpos}
\title{Topic name}
\author{My name}
\date{\today}
\begin{document}
\begin{frame}
\maketitle
\begin{textblock*}{5cm}(10pt,\dimexpr0.5\headheight - 7.5pt)
   \includegraphics[width=40pt]{example-image}
\end{textblock*}
\end{frame}
\end{document}

答案2

我认为它testblock不接受带单位的值。您必须将其删除:

\PassOptionsToPackage{demo}{graphicx}%% only for demo
\documentclass[12pt]{beamer}
\usepackage{textpos}
\begin{document}

\makeatletter
\def\foo{\strip@pt\dimexpr0.5\headheight - 5pt\relax}
\makeatother
\begin{textblock}{5}(10.0,\foo)
   \includegraphics[width=40pt]{logo.png}
\end{textblock}

\end{document}

但是,您不应该使用,而textblock应该重新定义您的标题,这可以通过 beamer 提供的默认宏来实现。

相关内容