🚀.一些想法

今天是2021年4月2号,距离本站建立整整365天。而这一年也在不知不觉中悄无声息地过去了,但是过去的很多事情仿佛还近在眼前。非常感谢一直以来支持我的朋友们,希望在今后的日子里,大家能一起努力进步!🚩

说正题吧,前两天在谷歌搜索东西的时候,偶然看到了一个服务器上托管着Abaqus各版本的在线帮助文档,其中一个是较新的abaqus2016版,另外有一个是常用的 abaqus_6.14版。ping了一下ip,是一个德国的ip,但是国内的访问速度还是挺快的。想当年安装Abaqus的帮助文档的时候也废了九牛二虎之力,现在直接在线就能查询了,跟本地文档一模一样,方便了很多。由于是基于浏览器的,即使换了设备,换了操作系统,仍然可以访问该帮助文档。

市面上关于PFC和Flac3d的教程相比于UDEC和3DEC来说,要多得多,所以块体离散元基本全得靠帮助文档进行学习。以前还有一些小伙伴找我要过3DEC或者UDEC的帮助文档,于是,我突发奇想,能不能把Itasca软件的帮助文档也做成在线的托管到自己的网站上去呢🤔?

托管到网站上的话,帮助文档就能随时随地在线查看与搜索,且与本地帮助文档的所有功能一模一样。在线文档基于浏览器阅读,不局限于Windows系统而可以实现跨平台 ( Windows 、Linux 、MacOS、Android、iOS等 ) 实时查看帮助。

最最重要的一点是,现在的主流浏览器(例如Microsoft Edge、Google chrome等)都带有页面翻译功能,这样在看帮助文档的时候就可以整页或者部分翻译成中文辅助阅读了,岂不美哉?

话说我原来的大部分文章也都是帮助文档翻译过来的,但由于每个人做的方向都不一样,我写的文章也只能对跟我方向差不多的人或许有些许帮助,对不是这个方向的人就帮助不大,且刚入门的同学看原英文帮助文档可能也比较费劲。如果这个基于浏览器的在线的帮助文档可以实现,借助翻译辅助阅读那以后就方便的多了。

🌈.题外话

在看本地的.chm 英文帮助文档时可以借助一个翻译神器辅助阅读,这里介绍一个我一直在使用的开源免费的看英语文档的即时翻译神器 CopyTranslator ,目前在Github上已经有 10.9K star了(截止2021-4-2),如果还没用过的可以去主页看看或者下载试试:

CopyTranslator官网介绍:https://copytranslator.github.io/

CopyTranslator github仓库:https://github.com/CopyTranslator/CopyTranslator

🚚.实现的过程

说干就干,经过了解,Windows上的 .chm 格式的帮助文档都是编译好的HTML文档,并加上了索引便于浏览。这种格式的文件一般都是帮助文档,且只能在Windows系统上打开。

itasca help

打开的文档基本都长下面这样,相信经常看帮助文档的应该很熟悉了。

itasca 3DEC5.2 help

既然本身是HTML网页,只是经过了编译整合,那是不是反编译一下就可以解析出原HTML网页格式的文档了呢?

在网上查了一下,确实可以反编译,而且很简单,不需要外部软件,Windows命令行(cmd)输入一行命令再回车就行:

hh -decompile D:/chm/targethtml D:/chm/xxxhelp.chm

 
上面的命令确实将udec6.0的帮助文档反编译了,也生成了html网页文件,结果事情并没有那么简单...
 
itasca udec help

里面散落分布的 html 文件过于凌乱,文件夹下并没有生成 index.html 索引文件,这就造成了不能和原帮助文档一样有目录可以快速定位浏览。我又查了一下,这个 .hhc 文件里面就是原文档的索引,但是并不能直接改后缀成html再打开,这就比较麻烦了。😐

经过在Google上海量地搜索解决办法,很多解决方法都是无效的,中文关键字不行就换英文的搜,终于有一款名为 FlyHelp 的外国软件成功引起了我的注意。

 
正好软件有30天试用期,抱着试一试的想法就下载安装了,然后将 .chm 文件转换成 Browser-based.html文件,我去目录下查看时,惊喜的出现了期待已久的 index.html 文件。

然而,当我打开后,上一个惊喜还没过,又给我来了个“惊喜”😤。界面已经很接近原帮助文档了,只是没有目录,上面的按钮也形同虚设,点击根本没用,但是文档中的超链接还是正常的。我又陷入了沉思...😵

 
难道真的就不行了吗?明明已经如此地接近最终目标了。

怀着无比复杂的心情,我用notepad++打开了 index.html 文件,看看里面到底写的啥。然后下面的这行字又点燃了我的希望😏:

To display this page you need a browser with JavaScript support.
 

 
难道是本地浏览器打开不支持 JavaScript?又抱着试一试的心态,我将整个转换好的 html 文件上传到了网站的服务器中,接着在浏览器输入路径地址进行访问...

奇迹发生了!😎

完整目录 + Index索引 + 搜索功能 一应俱全,超链接正常跳转,跟本地 .chm 文档的功能相差无几。终于成功了!

 
于是乎,按照这个方法,将所有转换成网页得帮助文档上传到服务器上,加上访问链接,就有了下面的在线帮助文档网页的入口:
 

 
上面是最终效果,其实在这个页面也发生了一些小插曲,开始直接点击进入是无法访问帮助文档的网页的,但是在新标签页打开就可以,然而我一直没办法让这些超链接自动进行跳转到新标签页,也是搜索了各种解决办法都不管用,后来...后来也是过于复杂的过程,虽然看似很简单的一件事,但也足够恼人,反正后来莫名其妙的解决了。

🎉.试试吧

如果在线文档的页面显示太小,可以按住Ctrl+鼠标滚轮进行网页缩放调整,Ctrl+0 可以回到默认网页大小。

🔥页面翻译:虽然翻译的不准确,但是对照着英文进行辅助阅读还是很有帮助的。

 

🔥打印PDF:打印PDF的排版还是不错的,如果需要单独的某一章节可以使用网页右上角的打印功能。
 

🌲.总结

我想,其实这些软件的本地帮助文档 (.chm格式) 结合 CopyTranslator 翻译神器应该已经足够了,这个在线帮助文档相当于只是转换和整合了几个常用软件的帮助文档,由于是托管于本网站和基于浏览器的,可以实现随时随地,跨平台,跨设备查看,在某些时候如果有这方面的需求,记得有这么个在线的帮助文档就行了😀。

本文可能实际上也没有啥技术含量,但是整个搭建过程以及文章写起来还是比较费时的,在这个喧嚣浮躁的时代,个人博客越来越没有人看了,写博客也是用爱发电的状态。如果你恰巧财力雄厚,感觉本文对你有所帮助的话,可以考虑打赏一下本文💕,用以维持较高的服务器运营费用。
 
感谢你看到这,

附一张在手机上显示的状态:

 
虽然字小,好在触屏设备可以方便地缩放,要是用平板应该会好很多。


长风破浪会有时,直挂云帆济沧海。