Skip to content
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

维基百科导出到Obsidian时的转换问题 #6455

Open
warming-afternoon opened this issue Apr 19, 2024 · 15 comments
Open

维基百科导出到Obsidian时的转换问题 #6455

warming-afternoon opened this issue Apr 19, 2024 · 15 comments

Comments

@warming-afternoon
Copy link

warming-afternoon commented Apr 19, 2024

请描述你的建议或任何内容

使用"维基百科辅助增强"及"导入到 Obsidian"插件,将维基百科页面转换成markdown格式导入到Obsidian时,数学公式的转换结果是图片而非MathJax公式,不便于在Obsidian中查看及修改

希望能在"维基百科辅助增强"中增加导出为MathJax公式的功能

此外,维基百科的图片导出成markdown格式后,图片链接最前面没有"https:"协议头,导致Obsidian无法正常显示图片(链接示例: //upload.wikimedia.org/wikipedia/commons/thumb/c/c4/Complex_Impedance.svg/200px-Complex_Impedance.svg.png)

维基百科网页示例:https://zh.wikipedia.org/w/index.php?title=%E9%98%BB%E6%8A%97

网页中公式显示效果:
页面中公式展示结果

转换后obsidian中公式查看效果:
SVG导出结果

现有公式导出格式:
公式导出格式

希望的公式导出格式:
希望导出格式

系统版本:windows10

使用浏览器:Chrome (版本: 123.0.6312.123(64 位))

补充说明

No response

@warming-afternoon warming-afternoon changed the title 维基百科的公式导出到Obsidian时的转换问题 维基百科导出到Obsidian时的转换问题 Apr 19, 2024
@Kenshin
Copy link
Owner

Kenshin commented Apr 19, 2024

浏览维基百科简建议使用 #5832 提到的方式可以得到更好的阅读模式效果。(你应该知道了)

维基百科的公式本就是图片,没法「转换」为公式… 😂

@warming-afternoon
Copy link
Author

warming-afternoon commented Apr 19, 2024

啊,抱歉,是我没写明白😂

现在维基百科的数学公式有三种显示方法

维基百科设置

我说的是中间这种(默认的)显示方式导出的结果

在这种情况下,导出公式的图片名称就是公式本身

具体格式如下 —— ! [{\displaystyle 公式}] (图片地址)

例如: {\displaystyle \left(K,,+,,\times \right)}的图片链接是 ! [{\displaystyle \left(K,\ ,+,\ ,\times \right)}] (地址)

我上面说的格式转换,其实指的就是把导出的图片名称中的公式提取出来,添加公式标记$而已

至于数学公式的其他两种显示方法,其实我也尝试过了,不过效果不怎么好,可能还是使用中间这个导出进行修改比较方便

上面那种显示方法(LaTeX源)在阅读时没有进行渲染,不方便阅读,且导出后公式标记$与公式之间存在空格,Obsidian无法直接识别,我还得手动替换掉这个空格

示例:LATEX导出结果

下面这种显示方法(MathML)在导出时所有公式都不导出

示例:
MathML导出结果

@warming-afternoon
Copy link
Author

warming-afternoon commented Apr 19, 2024

此外,维基百科的图片导出成markdown格式后,图片链接最前面没有"https:"协议头,导致Obsidian无法正常显示图片(链接示例: //upload.wikimedia.org/wikipedia/commons/thumb/c/c4/Complex_Impedance.svg/200px-Complex_Impedance.svg.png)

这个好像也没写明白

我指的是非公式类图片的导出

公式类图片的导出是正常的

但非公式类图片就会出错

比如:

非公式图片

@Kenshin
Copy link
Owner

Kenshin commented Apr 20, 2024

我导入到 Obsidian 是这样的效果(跟网页没有区别

image

#6455 (comment)

在哪里更改?

其实指的就是把导出的图片名称中的公式提取出来,添加公式标记$而已

即便可以的话,可能也有点麻烦。(只是猜测,具体我需要上条设置后才能判断)

#6455 (comment)

举个具体的例子

@warming-afternoon
Copy link
Author

warming-afternoon commented Apr 20, 2024

我导入到 Obsidian 是这样的效果(跟网页没有区别

这个是由于Obsidian图片展示设置引发的问题,我的图片会放置到行中间且调整宽度为行宽的40%,而不是默认设置下的图片本身宽度

因此我的导入会和网页展示不一样

在哪里更改?

我的想法是这样的

例如以下这个公式

原始导出结果

将选中部分

第一步操作目标

更改为$

第一步操作结果

然后再将下面第二个选中部分 , 也更改为$

第二步操作目标
第二步操作结果

这样就变成了公式 , Obsidian 的识别结果如下

操作结果

即便可以的话,可能也有点麻烦。(只是猜测,具体我需要上条设置后才能判断)

不知道这个想法实现起来困不困难,如果比较难搞的话,就不麻烦您了,我改一下Obsidian就行

@warming-afternoon
Copy link
Author

举个具体的例子

比如说导入的这张图片(位于文件头部)

原始导出图片

Obsidian显示无法找到

选中

将图片链接的首部添加协议字段 http: (或https:) , 即可成功展示

修改后

在其余网页中 , 图片导出均正常 , 仅维基百科的导出有此情况 , 故我猜测可能是"维基百科辅助增强"插件(#5832 )出现的问题

@Kenshin
Copy link
Owner

Kenshin commented Apr 20, 2024

#6455 (comment)

我大概明白你的意思了,你只所以看到类似 MathJax 的原因是因为下图

image

在生成 Markdown 时,会将 alt 转换为此结构 ![alt](src) 导致的。

我能 Get 到你的想法,这有点麻烦,或者说并不具有任何共性,我想想如何实现吧。

image

这个问题有点奇怪,因为简悦会自动加上 https 所以并不会出现这个情况,你可以试试下图的方式,然后看下是否包含 https(正常应该自动包含了)

image

@warming-afternoon
Copy link
Author

warming-afternoon commented Apr 20, 2024

在生成 Markdown 时,会将 alt 转换为此结构 ![alt](src) 导致的。

是的,我想说的就是这一部分

我猜(因为只试了6、7个网站),维基百科现在(默认)显示方式中公式图片alt 部分就是MathML公式,通过将alt{} 转换为 $ 即可得到目标公式

维基百科设置

此外,我发现测试的所有网页中公式图片的alt 部分均含有\displaystyle ,这是一个用来设置公式渲染样式的公式符号,而非公式类图片好像没有(也可能只是我试得不够多),这可能有助于确定哪些部分是公式

希望这能对您有所帮助

@warming-afternoon
Copy link
Author

warming-afternoon commented Apr 20, 2024

这个问题有点奇怪,因为简悦会自动加上 https 所以并不会出现这个情况,你可以试试下图的方式,然后看下是否包含 https(正常应该自动包含了)

我尝试了一下,发现并没有包含

我明天抽点时间再排查一遍

@Kenshin
Copy link
Owner

Kenshin commented Apr 21, 2024

我是问下图是维基百科的某种功能?还是?

image

@warming-afternoon
Copy link
Author

warming-afternoon commented Apr 21, 2024

我是问下图是维基百科的某种功能?还是?

这是维基百科自己的显示设置功能

登录维基百科账号后,选择"参数设置-外观",拉到网页最底部,就是这个选项

参数设置

通过这个选项,可以修改公式的输出结果

至于数学公式的其他两种显示方法,其实我也尝试过了,不过效果不怎么好,可能还是使用中间这个(默认)显示方式进行修改比较方便

上面那种显示方法(LaTeX源)在阅读时没有进行渲染,不方便阅读,且导出后公式标记$与公式之间存在空格,Obsidian无法直接识别,我还得手动替换掉这个空格

示例:LATEX导出结果

下面这种显示方法(MathML)在导出时所有公式都不导出

示例: MathML导出结果

@Kenshin
Copy link
Owner

Kenshin commented Apr 21, 2024

登录维基百科账号后,选择"参数设置-外观",拉到网页最底部,就是这个选项

原来如此... 😂 通过修改公式的格式,在显示时可以将图片转换为公式? 👍

@warming-afternoon
Copy link
Author

warming-afternoon commented Apr 21, 2024

原来如此... 😂 通过修改公式的格式,在显示时可以将图片转换为公式? 👍

可以这么做

事实上,就如我上面所说

选择LaTeX源时,网页在显示时直接展示公式(不进行渲染),比较方便导出(但不方便阅读),导出后直接获得公式,将$与公式之间的空格删除即可被Obsidian识别

LaTeX源下网页示例:
LATEX 网页

选择SVG源时,网页展出图片,但公式可以从网页代码中获取

SVG源下网页代码示例:
SVG源代码

但是选择MathML源时,什么都导不出来,也无法从网页代码中获取公式

@Kenshin
Copy link
Owner

Kenshin commented Apr 21, 2024

okay 我研究下 😂

@warming-afternoon
Copy link
Author

这个问题有点奇怪,因为简悦会自动加上 https 所以并不会出现这个情况,你可以试试下图的方式,然后看下是否包含 https(正常应该自动包含了)

我尝试了一下,发现并没有包含

我明天抽点时间再排查一遍

通过添加 #817 插件,该问题已得到解决

okay 我研究下 😂

非常感谢

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants