解决图片渲染问题¶
使用markdown-it渲染器,渲染编辑区域文档,发现图片无法显示。
调测过程中,使用本地文件url路径,发现依然无法显示
通过查询资料,发现在html标签<img>
中,src可以通过file:///E:/github.com/hemy08/hemynotes/docs/900-个人项目/010-electron+vue构建HemyEditor/images/20240602173139文件管理器.png
方式设置本地图片路径。
设置完成之后,依然无法显示,询问文心一言,有如下结果:
-
在预加载脚本中配置 CSP: 实际上,Electron 的 CSP 是在 Chromium 渲染器进程中实现的,并且通常不能通过预加载脚本直接修改。但是,你可以通过预加载脚本来注入允许某些资源的代码,或者配置你的应用程序以允许加载特定的资源。 如果你确实需要绕过 CSP(这通常不推荐),你可能需要在预加载脚本中注入一些代码来修改或覆盖页面的 CSP 策略。但是,请注意,这样做可能会引入安全风险,并且可能违反你的应用程序的安全最佳实践。
-
在 HTML 文件的
部分,你可以使用 标签来设置 CSP。但是,请注意,这种方法不如 HTTP 响应头中的 CSP 强大或灵活,因为某些指令可能不受支持或具有不同的行为。HTML
看了工程的index.html文件,发现在head部分中有如下代码:
HTML | |
---|---|
将这部分删除后,图片可以正常显示。
剩下的就是渲染问题了,需要在文件进行markdown-it渲染之前,或者之后,将图片路径设置为本地文件路径引用
这里也将图片进行了限制,当前图片宽度600px