一、需求#
- 在 Obsidian 中制作填空题
- 预览状态下当鼠标指针指向而不是点击就能显示答案
- 还可以导出为带空格的 PDF 格式便于纸质打印
二、尝试一#
- 借助于 Masking Type 插件
- 并修改部分代码
- 在其 styles.css 文件中增加以下代码
/* 以下为打印填空题 */
/* Cloze and Hover in Source Mode */
span.cm-em.cm-formatting.cm-formatting-em {
display: none;
}
.hoverText em, span.cm-em {
color: transparent;
background-color: transparent;
border-bottom: 1px solid #000000;
font-style: normal;
}
.hoverText em:hover, span.cm-em:hover {
color: #000000;
}
/* Cloze and Hover in Preview Mode */
@media print {
em {
color: transparent;
background-color: transparent;
border-bottom: 1px solid #000000;
font-style: normal;
}
}
- 在其 manifest.json 文件中查找 Click 并全部替换为 mouseenter
三、结果一#
- 以一对星号包括的斜体内容会被遮挡
- 预览视图下鼠标指向即可显示答案
- 在多种主题下都可以正确导出带空格的 PDF
- 不足之处:当鼠标指向后显示答案,但当鼠标移开后不会自动遮挡,需要再次鼠标指向才行
- 计划向插件作者提 isue 以实现上述需求
四、尝试二(优选)#
- 借助于 Cloze 插件
- 可实现粗体、斜体、高亮等内容显示为填空
- 不足之处:同上
- 此外,在预览模式下可导出带空格的 PDF,编辑视图导出仍显示答案