找回密码
 欢迎注册
查看: 6102|回复: 7

[分享] 网站公式展示优化方案

[复制链接]
发表于 2010-2-9 00:02:43 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?欢迎注册

×
将帖子中的公式图片处理为base64编码,然后直接放在html的img标签里(这是符合w3c的)。
也就是将图片文本化与帖子内容一同存储在数据库里了。
这样可以
1、提高公式的展示速度
2、无须用户装任何插件(甚至不支持js都行,但当然discuz本身不能没有js)
3、减少公益latex服务器的负载
转换可以放在帖子编辑完成后的保存过程(后台)
预览时也可以用类似方法处理但并不提高相应效率
----------
只是觉得这想法本身还不错,所以分享下
我其实觉得这还是比较复杂的,论坛又没有专职的技术人员,所以没必要作这种修改
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2010-2-9 07:41:50 | 显示全部楼层
因为帖子还需要编辑功能,
所以需要 文本←→图形 的双向可逆过程,
其中文本需要符合人们手写输入习惯,
图形需要简洁直观美观,
这都不是个简单过程。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2010-2-9 08:54:48 | 显示全部楼层
更重要的,按照楼主主要处理后,就无法支持火狐等的mathml了
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2010-2-9 10:19:26 | 显示全部楼层
2# gxqcn

再编辑 到是容易实现,不过还真没注意到gxqcn竟也设计了mathml的支持(虽然我也用了很久的firefox...)
latex源码可以放在img的alt属性里(一般将公式转换为图片插件都是这么做的),这样在编辑时可以转换为任意形式

3楼,其实没有人直接使用mathml写公式
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2010-2-9 16:04:34 | 显示全部楼层
2# gxqcn

再编辑 到是容易实现,不过还真没注意到gxqcn竟也设计了mathml的支持(虽然我也用了很久的firefox...)
latex源码可以放在img的alt属性里(一般将公式转换为图片插件都是这么做的),这样在编辑时可以 ...
没——问题 发表于 2010-2-9 10:19

不是直接写mathml,是如果你使用火狐浏览器,那么他就会把代码解析成为mathml,而不是显示图片,这样在多公式的情况下会更快,公式相对也漂亮一些
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2010-2-10 08:03:28 | 显示全部楼层
公式的表现不仅仅是内容,还有字体、颜色、大小等,它们有些是外围标签,这是固定图形(图片)无法自适应的。
比如代码为:

  1. [size=1]这是1号size:[TeX]e^{i\pi}+1=0[/TeX][/size]
  2. [size=2]这是2号size:[TeX]e^{i\pi}+1=0[/TeX][/size]
  3. [size=3]这是3号size:[TeX]e^{i\pi}+1=0[/TeX][/size]
  4. [size=4]这是4号size:[TeX]e^{i\pi}+1=0[/TeX][/size]
  5. [size=5]这是5号size:[TeX]e^{i\pi}+1=0[/TeX][/size]
  6. [size=6]这是6号size:[TeX]e^{i\pi}+1=0[/TeX][/size]
  7. [size=7]这是7号size:[TeX]e^{i\pi}+1=0[/TeX][/size]

  8. 这是正常字体:[TeX]e^{i\pi}+1=0[/TeX]
  9. [b]加粗字体:[TeX]e^{i\pi}+1=0[/TeX][/b]
  10. [i]斜体:[TeX]e^{i\pi}+1=0[/TeX][/i]
  11. [u]加下划线:[TeX]e^{i\pi}+1=0[/TeX][/u]

  12. [font=黑体]这是黑体:[TeX]e^{i\pi}+1=0[/TeX][/font]
  13. [font=Verdana]Verdana字体:[TeX]e^{i\pi}+1=0[/TeX][/font]
复制代码
效果如下:
这是1号size:$e^{i\pi}+1=0$
这是2号size:$e^{i\pi}+1=0$
这是3号size:$e^{i\pi}+1=0$
这是4号size:$e^{i\pi}+1=0$
这是5号size:$e^{i\pi}+1=0$
这是6号size:$e^{i\pi}+1=0$
这是7号size:$e^{i\pi}+1=0$

这是正常字体:$e^{i\pi}+1=0$
加粗字体:$e^{i\pi}+1=0$
斜体:$e^{i\pi}+1=0$
加下划线:$e^{i\pi}+1=0$

这是黑体:$e^{i\pi}+1=0$
Verdana字体:$e^{i\pi}+1=0$
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2010-2-10 08:06:09 | 显示全部楼层
颜色是因为我强制将公式以blue显示,否则它也会随着外围颜色变化而变化。
TeX里的字体也被我强制设置成了“Times New Roman”,否则它也会随着外围字体变化而变化。

从上贴可看出,数学公式要与其它文字相协调,不仅仅与其自身内容相关。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2010-2-10 14:40:38 | 显示全部楼层
恩,很不错,见识了
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-4-20 10:50 , Processed in 0.048902 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表