中華大字典[調整排版]MDX

成本问题罢了,如果仅想看着是对的字的话,那抓取的时候将字体下载下来就好了,也不费事。
如果想要替换成正确的字的话,应该是可行的,我还在分析字体和代码。(仅会提供可行性报告)

可行性报告

结论

完全可行

分析过程

查询的时候,会有三个 WOFF 字体加载请求。这个字体格式关系不大,WOFF网页用的而已。其中文件大小最小的就是 加密字体 。这个网站(http://www.ancientbooks.cn/home)只是会加密一个文章的几个字,而辞源会加密所有字。
以 同 这个词条的乱码字 𠔼 为例,这字不认识,还找了个网站手写查字。下面开始硬核环节,其思路同样适用于辞源网页版。
先简单说一下字体加密原理,此网站和辞源在线版均采用了我能知道的字体加密的最先进技术。我们都知道一个字在编码的时候是一个 unicode 码,也就是一些数字和字母的组合。比如 这个字在编码的时候会写成 Uni9fa2。在解码或者渲染的时候,浏览器会到字体文件中找对应的 unicode 码的信息,再将这些信息呈现出来,我说的这些信息就是上文提到的笔画的信息,笔画构成文字,所以就渲染出了文字。这俩网站的加密方式是:将某些的字的 unicode 改成 另一些字的 unicode,比如说我用 xxxx 代表 这个字,但是 的实际的 unicode 码是 U+6211,但是我只告诉你一个人我的 xxxx 代表我,那么这就我们之间的暗语了。同样的,这俩网站替换一些文字的 unicode 为另一些文字的 unicode,然后在字体文件中写上“破译暗语的东西”,那么在渲染网页的时候,加载对应的字体,我们眼睛看到的就是正常的文字了。但是复制出来还是那些 xxxx 暗语,复制出来的文字就不对了。
解包前文提到的较小文件大小的字体。得到 XML 文件,是的,字体本质上是一些数字,这些数字代表了笔画的位置、起终、上下等信息。然后再找到这些字体的 本家字体,顺便一提,好像都是方正做的这些个加密字体。这个网站的本家字体是 方正中华书局宋体字库02,我放在下面,可能有人有用呢。

FZSONG_ZhongHuaSongPlane02_2018111620191105100324.7z (19.4 MB)

从上文的较小文件大小的字体中找出 unicode 对应的数字,再到本家字体中用数字找 unicode 就是一个完整的破解流程了。
没想到之前分析辞海的经验在这儿也能派上用场,当然如果你不想破解,只想看着对劲(我似乎从来没有复制过查词结果去哪儿),那么

截图两张,仅供讲解所用,图也并没有包含所有数字,左为加密字体,右为本家字体,请注意两点

  • unicode 的差异
  • 对应数字的相同。


至此就说明白了。逻辑不难,实现较难。

4 个赞