更改 R Markdown 投影仪演示文稿中的背景

2023-12-28

我正在 rmarkdown 中编写投影仪演示文稿,并且我有两种类型的框架,它们的背景应该有所不同。 所以我在乳胶中写了两个类似的函数:

\newcommand{\settitlestyle}{
\setbeamertemplate{background canvas}{%
  \includegraphics[width = \paperwidth, height = \paperheight] 
{backgroundtitle.jpg}}
} 

\setmainstyle是完全相同的命令,但是是另一个 jpg。

在 YAML 中,我已经输入了一个定义函数和调用的 tex 文件\settitlestyle。作品。但在第一张幻灯片之后我想切换到主要风格。当我打电话时\setmainstyle在 markdown 文件中什么也没有发生。


你的问题\setmainstyle命令的缺点是它将在框架内使用,因此无效。

为了避免这个问题,您可以使用与中相同的策略https://tex.stackexchange.com/questions/173201/beamer-template-with- different-style-options-for-frames https://tex.stackexchange.com/questions/173201/beamer-template-with-different-style-options-for-frames创建一个将更改背景的框架选项。

不幸的是,rmarkdown 简单地忽略了用户创建的框架选项,并且只传递一小部分预定义选项。为了欺骗 rmarkdown,人们可以重新利用通常不被 beamer 使用的框架选项,standout框架选项(仅由大都市主题使用)

---
output: 
  beamer_presentation:
    keep_tex: true
header-includes: |
  \usepackage{etoolbox}

  \defbeamertemplate{background canvas}{mydefault}{%
    \includegraphics[width=\paperwidth,height=\paperheight]{example-image-duck}
  }
  \defbeamertemplate{background canvas}{standout}{%
    \includegraphics[width=\paperwidth,height=\paperheight,page=2]{example-image-duck}
  }

  \BeforeBeginEnvironment{frame}{%
    \setbeamertemplate{background canvas}[mydefault]%
  }

  \makeatletter
  \define@key{beamerframe}{standout}[true]{%
    \setbeamertemplate{background canvas}[standout]%
  }
  \makeatother

---

# frametitle 

test

# frametitle with different background {.standout}

test

# frametitle

test

或者如果您想更改以下所有帧的背景:

\usepackage{etoolbox}

\defbeamertemplate{background canvas}{mydefault}{%
  \includegraphics[height=\paperheight,page=2]{example-image-duck}
}
\defbeamertemplate{background canvas}{standout}{%
  \includegraphics[height=\paperheight]{example-image-duck}
}

\setbeamertemplate{background canvas}[mydefault]%

\makeatletter
\define@key{beamerframe}{standout}[true]{%
  \setbeamertemplate{background canvas}[standout]%
}
\makeatother

Update:

Pandoc 现在允许任意帧选项(https://github.com/jgm/pandoc/commit/7fbce82f2f7b69e88b23cf138ea6cd3a86786b91 https://github.com/jgm/pandoc/commit/7fbce82f2f7b69e88b23cf138ea6cd3a86786b91)

---
output: 
  beamer_presentation:
header-includes: |

  \defbeamertemplate{background canvas}{mydefault}{}
  \defbeamertemplate{background canvas}{special}{%
    \includegraphics[width=\paperwidth,height=\paperheight]{example-image-duck}
  }

  \BeforeBeginEnvironment{frame}{%
    \setbeamertemplate{background canvas}[mydefault]%
  }

  \makeatletter
  \define@key{beamerframe}{special}[true]{%
    \setbeamertemplate{background canvas}[special]%
  }
  \makeatother

---

# frametitle 

test

# Heading {frameoptions="special"}

test

# frametitle 

test
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

更改 R Markdown 投影仪演示文稿中的背景 的相关文章

  • 如何按时间间隔匹配数据帧?

    这是我从数据记录器导入原始数据时经常出现的问题 温度记录仪设置为每十分钟记录一次温度 单独的气体记录仪设置为记录最后十分钟间隔内使用的气体 我想将这两个记录器的数据合并到一个数据框中进行绘图和分析 但时间并不完全一致 我希望每十分钟的时间段
  • RMarkdown html_output 错误

    我正在尝试使用 RStudio 创建 RMarkdown 文档闪亮的服务器 如果输出是 pdf 它工作正常 但如果我想要它作为 html 我会在过程结束时收到以下错误 在 RMarkdown 控制台中 我可以看到它达到了 100 错误 ht
  • R Shiny:如何将无功值从闪亮模块返回到主服务器功能?

    我有一个简单的玩具示例 它使用 add removeBtn 模块在 第一个 模块中添加和删除 UI 我需要跟踪单击 添加 删除 的次数 如果我不使用模块 这很容易 但我试图在嵌套模块的上下文中执行此操作 代码如下 但基本上 我似乎无法访问主
  • 在 R 的 for 循环中创建动态命名对象并分配动态值

    我正在尝试创建一套动态命名的新对象 例如 temp2015 使用 for 循环 并存储动态值 具体来说 其他对象的名称 例如 Y2015 和 for 循环中使用的值 例如 2015 在动态命名的新对象中 我不确定为什么下面的代码不起作用 Y
  • 在 R 中提取 data.frames 列表的名称以及 data.frame 中的值

    在下面的代码中 j是 data frames 的命名列表 我想知道是否有办法 a 提取变量的数值 即one short and one long 在 data frames 内并附加它们的相关名称 即 AAA or BBB or CCC 到
  • 为什么这个 R ggplot2 代码会显示一个空白的显示设备?

    虽然 SO 通常不用于帮助解决错误 但这个显示了特别简单且特别烦人的行为 如果你是一个ggplot2用户 您可以在 10 秒或更短的时间内重现它 正如这个 GitHub 问题 ggplot gtable 创建空白显示 https githu
  • dplyr:连接中的 NSE (by)

    我很难弄清楚如何使用 dplyr left join 和 NSE 连接两个表 问题是我无法为 by 提供正确的值 我想我现在已经找到了解决方案 但感觉我正在以一种额外复杂的方式来做 因此 如果您知道更简单 更优雅的解决方案 请告诉我 这就是
  • 从数据框中绘制多条平滑线

    我对 R 比较陌生 我正在尝试绘制从 csv 文件加载的数据框 数据由 6 列组成 如下所示 xval col1 col2 col3 col4 col5 第一列 xval 由一系列单调递增的正整数 例如 10 40 60 等 组成 其他列
  • 增加雷达图中长轴标签的空间

    我想创建一个雷达图ggirahExtra ggRadar 问题是我的标签很长并且被剪掉了 我想我可以通过添加在标签和绘图之间创建更多空间margin margin 0 0 2 0 cm to element text in axis tex
  • ggplot:如何限制条形图中的输出,以便仅显示最频繁出现的情况?

    我几个小时以来一直在寻找这个简单的东西 但没有结果 我有一个数据框 其中一列为变量 国家 地区 我想要两件事以下 绘制最常见的国家 地区 最常见的位于顶部 找到部分解决方案EDIT找到完整的解决方案 gt gt 重点问题是根据频率限制条形图
  • 平滑连续 2D 点

    UPDATE 感谢 user20650和 李哲源Zheyuan Li 这是我想出的解决方案 Example data set df 3600 observations points Create a vector of the cumula
  • R 改变构面的顺序

    我正在尝试将方面的顺序从 BA SLG 更改为 SLG BA 我发现了与此类似的问题 但我认为我的解决方案可能不起作用 因为我已经在Excel中汇总了数据 因此 我的数据框可能会有所不同 无论如何 我尝试实现这个但无济于事 df2 lt f
  • StatET调试工具

    我想我只是很密集 但我似乎无法弄清楚如何在 Eclipse 中的 R 中使用调试工具 StatET 插件 有人有关于这个主题的任何提示或教程吗 StatET 2 00 现在对高级 可视化调试提供实验性支持 需要 Eclipse 3 6 或
  • 在 R 上安装 TDA 包时出错:目标“diag.o”的配方失败

    使用 Ubuntu 16 04 和 R 3 4 1 安装 R 包 TDA 时收到错误消息 它似乎与制作 CGAL diag cpp 和 或 diag o 最后的完整错误打印输出 有关 我仔细看了这个 在 R 上安装 TDA 包时出错 htt
  • 自定义轴缩放后 ggplot2 缺少标签

    我正在尝试使用我的 x 轴应用自定义缩放ggplot2 and scales trans new 但是 当我这样做时 一些轴标签丢失了 有人可以帮我弄清楚为什么吗 Setup library tidyverse the data ds lt
  • R 数据结构的运算效率

    我想知道是否有任何关于操作效率的文档R 特别是那些与数据操作相关的 例如 我认为向数据框添加列是有效的 因为我猜您只是向链接列表添加一个元素 我想添加行会更慢 因为向量保存在数组中C level你必须分配一个新的长度数组n 1并将所有元素复
  • 将整个包传递给雪簇

    我正在尝试并行化 使用snow parLapply 一些依赖于包 即除snow 调用函数中引用的对象parLapply必须使用显式传递给集群clusterExport 有没有办法将整个包传递到集群 而不必显式命名每个函数 包括用户函数调用的
  • 安装 2.15 后 ggplot2 中的 alpha 通道不起作用

    更新到 R 2 15 后 ggplot 中的 alpha 通道似乎不再起作用 plot rnorm 100 rnorm 100 bg cc000055 pch 21 工作得很好但是 qplot rnorm 100 rnorm 100 col
  • 如何在R中分离两个图?

    每当我运行这段代码时 第一个图就会简单地覆盖前一个图 R中有没有办法分开得到两个图 plot pc title main abc xlab xx ylab yy plot pcs title main sdf xlab sdf ylab x
  • 更改ggplot2中的字体

    曾几何时 我改变了我的ggplot2字体使用windowsFonts Times windowsFont TT Times New Roman 现在 我无法摆脱这一切 在尝试设置family in ggplot2 theme 当我用不同的字

随机推荐

  • 分解字符串并为带有分隔符前面文本的数组设置键?

    有没有办法接受这样的输入 testing one two three setting more testing 并得到这样的东西 array testing one two three array setting more testing
  • 为什么 `map.has()` 不充当类型保护

    我遇到了以下问题 在我的应用程序中 我有一个Map其中一组 lambda 函数与一些函数配对Roles 每个 lambda 需要一个secondParameter并返回一个settings object enum Role ROLE 1 r
  • unity:游戏对象不可见?

    我组合了两个可以显示透明度和截止 Alpha 的着色器 它工作得很好 只有两个小问题 1 在某些特定的摄像机角度下 对象的截止区域是可见的 仅当具有相同着色器的另一个对象位于该对象后面时 2 如果我淡出一个对象 它会变得黑色而不透明 我是着
  • 具有加密/密码保护的 SQLite

    我刚刚学习使用 SQLite 我很好奇这是否可能 数据库文件加密 密码保护数据库的打开 附言 我知道有这个 SQLite Encryption Extension SEE 但根据文档 SEE 是许可软件 和 SEE 永久源代码许可证的成本为
  • IE11间歇性不加载页面

    我们的许多用户报告说 他们在使用 IE11 访问我们的网站时遇到空白页面 有时他们甚至没有得到空白页面 浏览器只是停留在最后访问的页面上 这些用户可以毫无问题地访问其他域 例如 google com 对于出现故障的浏览器 如果这些用户在 I
  • Woocommerce 结账页面内部服务器错误

    我在 woocommerce 的结帐页面中遇到 500 内部服务器错误 虽然订购简单的产品 但它工作正常 但是当与可预订产品一起使用时 预订订单将保存在管理面板中 邮件也会发送 但订单收据不会显示在结帐页面中 在此 wc ajax chec
  • 根据 MA​​TLAB 中的数据值使用标记填充颜色

    我正在使用 matlab 绘制三个数据系列 例如 0 4545 0 7676 10 0 3232 0 5432 20 假设这是一个 100 x 3 矩阵 我们称其为A 也是根据A 1 排序的 第三列是一个附加数字 范围从1到100 我正在使
  • Jacoco:查找外部测试的代码覆盖率

    我最近在 eclipse 中使用 EclEmma 插件来查找应用程序中 JUnit 的代码覆盖率 效果非常好 在下一步中 我希望能够找到从外部调用我们的应用程序的端到端测试 功能测试的代码覆盖率 它们驻留在单独的服务器上 基本上 我们将应用
  • 如何检测HTML5视频是否暂停缓冲?

    我正在尝试测试视频是否断断续续 我注意到pause当视频暂停缓冲时 不会触发事件 检测视频是否已暂停缓冲的最佳方法是什么 我通过检查玩家的进度来做到这一点x毫秒 例如50 如果玩家的进步没有达到预期 那么我们就会进行缓冲 这是相当可靠的 因
  • 在 MySQL 中使用 LIMIT 根据列值限制结果 (PHP/MySQL)

    我多次搜索这个问题的答案 在 SO 和其他地方 但没有找到真正符合我需求的答案 如果有 我提前道歉 我有一个使用 PHP 的查询 它从数据库 WordPress 返回一个数组 基本上我想做的是查看列的值 然后根据该值进行 LIMIT 这是为
  • Python - 成功使用 Cookie

    当我尝试使用 facebook cookie 在 facebook 上打开登录帐户时 import urllib2 urllib cookielib jar cookielib CookieJar cookie urllib2 HTTPCo
  • PHP array_rand 返回唯一键吗?

    如果我打电话array rand array 100 它是否可以避免多次选择相同的键 是的 在one调用的返回集应该是唯一的
  • 将日期组件(整数)转换为字符串

    我的代码采用 NSDate 并读取年 月和日 然后将它们串在一起作为一个整数 接下来我想将这个 Int 转换为 String 以便可以将其插入 URL String 但没有成功 let calendarUnits NSCalendarUni
  • 如何将 CKEditor 集成到 Asp.net MVC 中

    Saw 这个帖子 http www codeproject com KB aspnet fckeditor aspx在 FCKEditor 的 CodeProject 上 有人可以解释一下新版本的情况吗 实际上这很容易做到 首先从官网下载最
  • WebSocket 的 API 网关

    我的 websocket 应用程序需要一个 API 网关 分析并识别来自某些IP的异常请求 配额和速率限制 统计数据 免费或商业 性能稳定 我的WebSocket的子协议是WAMP 所以恐怕没有现有的产品可以完成这项工作 我打算开发一个并假
  • 使用 JavaScriptSerializer.DeserializeObject 如何取回使用不区分大小写的字符串比较器的字典?

    我有一些需要反序列化的 JSON 所以我使用 JavaScriptSerializer DeserializeObject 如下所示 var jsonObject serializer DeserializeObject line as D
  • 在 netbeans 中为 Maven 项目设置自定义运行时类路径

    当我从 netbeans 中运行 Maven 项目时 我想添加自定义类路径 到目前为止 我已经尝试将以下内容添加到运行项目项目属性中的操作 exec args classpath classpath c QUASR duplicateRem
  • EF Core 3.0 中的存储过程

    如何在 EF Core 3 0 中使用存储过程 我尝试过以下方法 var user await context Query
  • Linux 上的原子文件创建?

    如果文件不存在 我需要创建一个文件 这样尝试创建该文件的另一个进程就会失败 我需要甚至在创建过程完成向其中写入实际数据之前就将文件视为 已创建 我读到O EXCL标记为open 看来解决方案是存在的 但是我有几个问题 你有这种技术的经验吗
  • 更改 R Markdown 投影仪演示文稿中的背景

    我正在 rmarkdown 中编写投影仪演示文稿 并且我有两种类型的框架 它们的背景应该有所不同 所以我在乳胶中写了两个类似的函数 newcommand settitlestyle setbeamertemplate background