You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Pandoc中配合Reveal.js正确使用.r-stretch类处理图片?

解决Pandoc配合Reveal.js使用.r-stretch类的问题

你的核心问题在于没有指定Pandoc输出为Reveal.js格式,默认的HTML转换不会触发Reveal.js专属的r-stretch处理逻辑。以下是可行的解决方案:

1. 基础正确用法(无图片标题)

确保使用-t revealjs参数生成幻灯片,同时使用无标题的图片写法(空的[]),让图片单独占一个段落:

# Test-Title

![](image.jpg){.r-stretch}

执行命令:

pandoc -i test.md -o test.html -t revealjs

生成的HTML会直接输出不带容器的img标签:

<h1 id="test-title">Test-Title</h1>
<img class="r-stretch" src="image.jpg" />

2. 带alt文本的处理方案

如果需要保留图片的alt文本,又不想被<figure>或<p>包裹,直接使用Raw HTML写法即可:

# Test-Title

<img class="r-stretch" src="image.jpg" alt="A funny image" />

Pandoc会直接保留这段HTML代码,完全匹配Reveal.js官方示例的结构。

为什么之前的写法失败?

你之前的命令pandoc -i test.md -o test.html没有指定输出格式,Pandoc默认生成普通HTML文档,不会识别r-stretch类对应的Reveal.js特殊规则,因此会按普通图片逻辑生成<figure>或<p>容器。只有指定-t revealjs后,Pandoc才会启用针对Reveal.js的转换逻辑,对单独段落中带r-stretch类的无标题图片省略容器。

内容的提问来源于stack exchange,提问作者Joshua Muheim

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 12:07:21