图片不显示需先检查pasteImage.path配置是否合法:必须为相对路径(如./assets/images)、目录须手动创建、末尾不能加斜杠;否则插件静默失败,仅留空![]()。

粘贴后图片不显示,先查 pasteImage.path 是否合法
插件不会报错,但路径配置错就会静默失败——看起来粘贴成功了,实际没生成文件,Markdown 里只剩一个空 ![]()。
必须满足三个条件:
-
pasteImage.path值必须是相对路径,如./assets/images或${currentFileDir}/assets,不能用~/、C:\、/Users/等绝对路径 - 目录需手动创建,插件不会自动建父级目录(除非你用的是
${currentFileDir}/assets这类含变量的路径,且 VSCode 版本 ≥ 1.85) - 路径末尾不能加斜杠:
assets/images/是错的,要写成assets/images
pasteImage.fileNameFormat 怎么设才不撞名
默认时间戳命名(如 image-1712345678901.png)在高频率编辑或多人协作时仍可能重复。关键是要混入上下文信息。
推荐配置(写进 settings.json):
"pasteImage.fileNameFormat": "${filename}-${datetime:YYYYMMDD-HHmmss}-${counter}"说明:
-
${filename}:当前 .md 文件名(不含扩展名),避免跨文档重名 -
${datetime:YYYYMMDD-HHmmss}:精确到秒,比毫秒更易读,也够用 -
${counter}:同一秒内多次粘贴自动递增,彻底防覆盖 - 别用
${random}—— 不保证唯一性,部分插件版本压根不支持
注意:${filename} 依赖文件已保存;未保存的临时文件会 fallback 成 untitled-1,导致命名不可控。
将PDF文件(含扫描件、图片)转换为Markdown格式。接入MinerU和PaddleOCR双引擎,支持扫描件OCR识别、公式表格解析、多语言识别。兼容本地OCR识别。
图片存哪?按笔记隔离还是全局集中
两种主流方案,选哪个取决于你的项目结构习惯:
- 按笔记隔离(推荐用于笔记类项目):
pasteImage.path设为${currentFileDir}/assets/${currentFileNameWithoutExt}
效果:每个 .md 文件独享一个子文件夹,移动文档时连带图片一起拖,链接不失效 - 全局集中(适合文档站/技术手册):
pasteImage.path设为./docs/assets/images
好处是统一管理、方便批量压缩或 CDN 托管;坏处是文档挪位置后,所有图片链接都要重算相对路径
别用 ${projectRoot} 混搭多根工作区——VSCode 对多文件夹工作区的 ${projectRoot} 解析不稳定,容易指向第一个打开的文件夹。
导出 HTML/PDF 时图片丢失,不是路径问题而是预览链路没走插件
插件只在「编辑器文本模式下 Ctrl+V」时介入。如果你用的是 Markdown Preview Enhanced 的「导出为 HTML」功能,它读取的是原始 Markdown 文本,不触发 Paste Image 的路径重写逻辑。
所以只要插入时用了插件生成的相对路径(如 ),导出就一定正常——前提是导出工具本身支持相对路径解析(MPEnhanced 支持,VSCode 自带预览不支持导出)。
真正容易被忽略的点是:导出前务必确认图片文件真实存在且路径可访问。常见坑包括:
- 用系统截图工具(如 Snipaste)截完图立刻粘贴,剪贴板格式不标准,插件接管失败
- 在代码块里或数学公式中粘贴,插件完全不响应
- 文件名含中文或空格,某些导出工具(尤其旧版 Pandoc)解析失败

















