这个beamer主题中的页码和logo的位置怎么互换?

发布于 2021-03-13 23:20:38

LOGO.rar

e65afdbc5c37a72ab9cf560f9e8a3c05.png

附件中是主题的sty文件和beamer的tex文件,logo图片是在网上找的。上次压缩错了,已改正。

如上图,这个主题的页码在右上角显示,logo在右下角,怎么调换这俩的位置?我没找见关于这两个的设置。

查看更多

关注者
0
被浏览
202

你给了个 aux 是闹哪样?


补充回答

现在这个案例里,logo 位置是由 default 主题确定的,在beamerouterthemedefault.sty 中 126-133 行可以找到:

\defbeamertemplate*{sidebar right}{default}
{
  \vfill%
  \llap{\insertlogo\hskip0.1cm}%
  \vskip2pt%
  \llap{\usebeamertemplate***{navigation symbols}\hskip0.1cm}%
  \vskip2pt%
}

那么,照猫画虎可以在导言区或 beamerthemeHeverlee.sty 里添加代码设置成:

\setbeamertemplate{sidebar right}
{
  \vfill%
  \llap{\small\insertframenumber\hskip1cm}%
  \vskip2pt%
  \llap{\usebeamertemplate***{navigation symbols}\hskip0.1cm}%
  \vskip2pt%
}

insertframenumber 替代 \insertlogo,然后调整一下字号,就把页码换到了现在 logo 的位置。

原来主题中 beamerthemeHeverlee.sty 中的 75-79 行把页码放在了 frametitle 里:

\setbeamertemplate{frametitle}
        {
        \vspace{1.2em}
        {\hspace{-1em}\large{\thesection \hspace{0.5em} \insertframetitle} {\hfill\scriptsize\color{gray}$\mid$\,\insertframenumber} \rule[-.3\baselineskip]{0pt}{\baselineskip}}
        }

这里,把 \scriptsize\color{gray}$\mid$\,\insertframenumber 改成 \insertlogo 就把原来的页码换成了 logo。

我这里只是就这个问题来给一个解决方案,效果未必合适,方法也不很合理。实际上,这些都涉及到模板的设计,想要设计一个好的模板,还是要多看看优秀的设计,多看 beamer 文档手册。

3 个回答
LaTeXStudio
LaTeXStudio 2021-03-13

你最好把整体的代码压缩下我们看看,只有这个 theme 文件看不出来的。标志出来具体要改哪里?

1210
1210 2021-03-14

想解决问题,要先学会提问。你应该提供一个能在别人的电脑上复现自己问题的例子,即最小工作示例MWE。

Minimum Work Example,“最小工作示例”。顾名思义,最小工作示例特点有三:

简短 不包含与问题无关的代码片段;

工作 能够独立运行于他人的电脑上,而不需要添加额外的代码;

示例 在他人计算机上的运行结果,能完整的再现你遇到的问题。

一、希望他人帮忙解决问题,首先要让他们理解你遇到了什么问题。因此示例必不可少。二、如果提供的示例在他人的电脑上无法运行,那么他们也就没有办法知道你遇到了什么问题。所以提供的代码必须能够正常工作。三、时间对于任何一个人都是- .笔宝贵的财富。如果提供的代码冗长,则回答者势必要话费大量时间阅读不必要的代码。这浪费了回答者的时间,也浪费了提问者的时间(等待时间更久),因此有必要让代码足够简短。

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览