查看: 498|回复: 8
打印 上一主题 下一主题

[讨论] 各个词典软件用的什么引擎来解析显示HTML?

[复制链接]
  • TA的每日心情

    2019-9-23 23:38
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    238

    主题

    552

    回帖

    4万

    积分

    禁止发言

    积分
    47766
    跳转到指定楼层
    1
    发表于 2019-12-19 16:01:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    这个帖子是讨论词典软件共性的,但是没有更合适的版块来发帖,暂且发在这里。

    互联网浏览器有好多不同的浏览器软件,它们可能用的都是不同的HTML解析引擎。MDX,MDD等本质上就是一个HTML网页,词典软件需要解析它才能显示,这也是词典软件最核心的部分。显然,网页解析编程的复杂程度已经接近一操作系统编写的难度,词典软件的作者绝无可能有实力自己从头编程来解析而且也无必要。那么这些众多的词典软件用的是哪种解析引擎呢?如果使用者的电脑里并未安装带词典软件需要引用的解析引擎的浏览器,那么这个词典软件安装包里是否自带这个引擎?
    知道某个词典软件用的是那个解析引擎,也有助于MDX词库制作者的调试,在MDX打包之前保证在词典软件所用的引擎的浏览器里是正常的。
  • TA的每日心情
    开心
    2019-1-18 23:55
  • 签到天数: 230 天

    [LV.7]常住居民III

    72

    主题

    1027

    回帖

    11万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    117972

    QQ 章

    推荐
    发表于 2019-12-19 18:35:16 | 只看该作者
    PC平台:
    Mdict是IE引擎,以前是IE7,现在据说升级到IE9了(也不咋滴。。)。
    Goldendict是Qt Webview引擎。版本4.x对一些html 5 标准不支持。版本5.x对新标准支持比较好,不过官方测试版有些问题,建议用论坛里nonwill的版本(GD区)。
    移动端:
    用的是移动端自带的引擎。对html 5支持没什么问题,Apple和Google在这方面是推动者。不过移动端和桌面端会有些区别,主要在于页面绝对定位不能用。词典如果没有悬浮于视野固定位置的元素那就一般不会有问题(可以看看ff大朗文是怎么处理悬浮按钮的。。)。

    点评

    IE内核是系统自带的,没有软件升级的说法。  发表于 2019-12-19 18:36
  • TA的每日心情
    开心
    2021-5-24 16:27
  • 签到天数: 448 天

    [LV.9]以坛为家II

    3

    主题

    655

    回帖

    2万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    27203
    3
    发表于 2019-12-19 18:12:48 | 只看该作者
    根据实际效果显示,很多软件采用老式的Chrome和IE核魔改,显示效果算不上理想,要有人有闲空的,拉进现在Chrome是最好的。
  • TA的每日心情
    奋斗
    2022-6-23 03:47
  • 签到天数: 774 天

    [LV.10]以坛为家III

    8

    主题

    1441

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    12073

    QQ 章

    4
    发表于 2019-12-19 18:41:27 | 只看该作者
    “网页解析编程的复杂程度已经接近一操作系统编写的难度”,这个是不是有点夸张了啊
  • TA的每日心情
    开心
    2019-1-18 23:55
  • 签到天数: 230 天

    [LV.7]常住居民III

    72

    主题

    1027

    回帖

    11万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    117972

    QQ 章

    5
    发表于 2019-12-19 19:47:23 | 只看该作者
    回 @atauzki 应该说是使用IE的兼容模式渲染,调用的兼容模式的版本升了。
    IE11应该算很普及了吧,而且对html 5支持也还不错,但照样一堆词典用到PC Mdict就不行。
    而且以前PC Mdict用IE7时,就有一个补丁可以升到IE9,其实就是改了注册表一个键值。
  • TA的每日心情

    2019-9-23 23:38
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    238

    主题

    552

    回帖

    4万

    积分

    禁止发言

    积分
    47766
    6
     楼主| 发表于 2019-12-20 23:38:59 | 只看该作者
    本帖最后由 lbhl 于 2019-12-20 23:44 编辑
    Howard345 发表于 2019-12-19 18:41
    “网页解析编程的复杂程度已经接近一操作系统编写的难度”,这个是不是有点夸张了啊 ...

    你最多可以说稍微夸张了点,但绝不会是太夸张。浏览器网页解析包括传统的CSS渲染JAVASCRIPT的执行,这个难度已经不是应用软件的难度,它有点象编译器和集成开发环境设计的难度,完全达到系统软件的难度。
    看看这里: https://baijiahao.baidu.com/s?id=1635782658170278084&wfr=spider&for=pc

    “自主研发浏览器内核成本高、难度大。如今一个浏览器代码接近2400万行,从项目规模来说,已经接近半个操作系统了。以目前市场占有率最大的谷歌Chromium内核为例子,Google最多时候调动超过1000个硅谷的程序员集中力量去开发出Chromium内核的浏览,从2008年算,至今也花了10年。按程序员一年25万美金年薪计算,一年研发工资近3亿美金,10年就是30亿美金的成本,这还只是研发成本,推广成本更是数倍于研发成本,也就是上百亿。从0到1,从无到有,这是很多人理解的自主研发,按这个标准,目前国内没有同等实力的公司具备这样的资源。


    中国无此核心技术,这又是一个象华为中兴被制裁一样可以被美国佬掐脖子的中国技术短板。
  • TA的每日心情
    慵懒
    2020-2-9 17:53
  • 签到天数: 9 天

    [LV.3]偶尔看看II

    9

    主题

    184

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    11480
    7
    发表于 2019-12-21 00:03:25 | 只看该作者
    css 发展了二十年……

    在中国你找个研究 css、html超过十年的看看,我觉得是个个位数。

    幸好 chromium 是开源的。

    该用户从未签到

    0

    主题

    52

    回帖

    133

    积分

    禁止发言

    积分
    133
    8
    发表于 2020-2-3 15:00:36 | 只看该作者
    Thanks for your great work.