-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
svg 内嵌的本地图片无法显示 #4
Comments
load_image 函数中, 如果你发现是 url 是一个 svg 文件, 可以直接读取 svg 的文本内容, 找到 href 的地方, 首先把路径换成 file:// 开头的, 然后修改 load_image_js, 使得 eaf-image-viewer 的插入 svg 标签, 而不是 img 标签。 简而言之, 就是遇到 svg 文件的时候更改 img tag 为 svg tag, svg tag 的内容和 chrome 显示的内容一样, 同时 href 的路径改成 file:// 开头的。 这样应该就可以了, 欢迎发送补丁。 |
我尝试了一下,只需要把 index.html 中的 但是出现新的问题, toolbar 消失了,如图。 我看了,是通过
创建 viewer 实例来实现 toolbar。 我简单的想通过给 svg 标签加 id="image" 实现,结果没有效果。 可能是 viewer.js 库本身不支持吧。 不能使用 toolbar 这样的话,在 eaf-image-viewer 看 svg 不能缩放等操作,也没有意义了。 |
fengyuanchen/viewerjs#216 应该是支持的svg |
@czqhurricane 建议直接写JS代码来嵌入 svg, 如果实在不行有一个后备方案, 就是遇到 svg 文件, 用Python转换成 png 临时文件, 再把临时文件传递给 viewer.js |
今天在尝试 https://github.com/misohena/el-easydraw 在 Emacs 上画 svg 文件。它支持 import 本地图片,然后继续画线等等操作。
我有个
demo.edraw.svg
(后缀 edraw.svg 是 el-easydraw 约定的,但其实还是 svg)。它的 text 内容:
可以看到其中
xlink:href="/Users/c/Library/Mobile Documents/iCloud~com~appsonthemove~beorg/Documents/braindump/notes/static/STM32 入门/2024-03-07_01-11-54_screenshot.jpg
就是内嵌的本地图片。在 Emacs org-mode 中,显示正常,在本地文件夹预览,显示正常,在 Chrome 浏览器,显示正常。
如下图所示:
在 eaf-image-viewer 中,只能显示我画的线,内嵌的本体图片没有正常显示
如下图所示:
如下图所示:
是不是因为在 eaf-image-viewer 中 Sources 只加载了要预览的 svg 自身资源,svg 内嵌的图片资源没有加载?
在 eaf-image-viewer 的 Python 代码中:
对于 svg ,确实只是传入 svg 本身 url,对于 svg 内嵌的图片没有被加载。
这个不知道是不是原因?后续如何解决?
The text was updated successfully, but these errors were encountered: