热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

在linux下阅读CHM,WDL以及其它格式电子图书的变通方法

在linux下阅读CHM,WDL以及其它格式电子图书的变通方法--Linux通用技术-Linux技术与应用信息,下面是详情阅读。
  现在网上的电子图书绝大部分都是pdf、chm、wdl和word文档doc格式。也有部分图书采用纯文本 txt格式。txt格式在linux下可用文本阅读器打开,灰褂玫?inux平台支持中文显示,使用上不存在什么问题。pdf格式由于使用广泛,在linux下也得到了良好支持,可以使用xpdf, KGhostView等打开阅读,还可以到www.adobe.com去下载linux版的Acrobat Reader(最新版本为5.0),使用上也没有太大问题。而且与txt相比,pdf支持图像显示,超链接等功能,使用上自然更加方便。

  对于其它电子图书格式,如chm、wdl以及超星电子图书格式,由于没有在linux平台下的阅读工具,使用十分不便。特别是对于学习在linux平台下操作和编程的图书,需要一边看书,一边操作,时常需要在 windows和linux两种平台下来回切换,操作极为麻烦。笔者因需要在linux平台下学习编程,下载的几本电子图书都是chm或者wdl格式,不得不在widows下看一部分,再重新启动到linux操作一部分,然后再启动到windows,再学习一部分,然后再换回linux。

  如此反复折腾,时间长了,人和机器都受不了。我也在网上搜索过,除了找到一大堆“chm、wdl在linux怎么用”之类问题,没有找到什么好的解决办法。一天,在 linux下使用Kwrite时无意之中打开打印菜单,显示出来的打印机里有一项是Acrobat PDFWrite,按下打印按钮,输入要保存的文件名,再用AcrobatReader打开察看,一切显示正常。原来一篇文章可以这样变成了pdf格式,如果能将windows平台下的电子图书都用这种方法转换成pdf格式,以后使用不就是大大方便了。于是重新启动到windows平台,经过一阵摸索之后,找到了两种异曲同工的解决方法,一种是打印成ps格式,另一种是打印成pdf格式。前一种转换方便,通用性强,但效果较差。后一种有诸多优点,但需要专门的软件支持。

  一、 将电子图书转换成ps格式

  绝大多数windows平台下的阅读工具都具备打印功能,因此采用打印到文件的办法转换图书格式是简单易行的。首先在windows的控制面板里看看自己的系统里有没有打印机,如果没有,就添加打印机,注意:添加的打印机必须是支持PostScript格式的,其它的参数设置选择默认即可。在我的系统上我选择的是HP LaserJet ⅢSi PostScript v52.3打印机,然后到阅读工具的打印菜单,选择打印,选择好打印机,关键的一步就来了,此时一定要选上“打印到文件”,按下“打印”后,再指定文件的保存路径和文件名,按下“确定”之后,一个后缀名为prn的文件就在你指定的目录下生成了。如果没有什么意外的话,重新启动到linux,用 GhostView打开这个文件,应该能看到文件的内容。下面以chm格式的Effective C++为例,详细讲述整个过程。

  在windows下安装好打印机后,运行effectiveC++.chm文件,出现阅读界面。在上方的工具条上点击打印图标,出现一个标题为“打印主题”的选择窗口,默认选择为“打印选定主题”,改为“打印选定主题及全部次标题”,点击“确定”,出现打印界面,选择好打印机(在我的系统上为HP LaserJet ⅢSi PostScript v52.3打印机),然后点击在“打印到文件(F)”前的方框,点击“打印”,会出现一个“打印到文件…”的对话框,指定文件的保存路径和文件名后,点击 “确定”即可生成prn文件。然后重新启动进入linux,运行ghostview或kghostview即可查看,而且文本和图像均可显示。

  Word文档格式doc的转换也很简单,只要在word里选择打印,然后按上述过程操作即可。其它的电子图书格式如wdl也完全可以如法炮制。不过转换之后的prn文件体积可不小。一本300多页的《linux参考大全》第一部分转换后就有近8兆。超星电子图书格式也完全可以如此办理。只要阅读工具支持打印,任何格式的电子图书都可以用这种方法转换成ps文件。

  存在的问题:将电子图书转换成ps文件或多或少会存在一些问题,如某些字体会发生变化,chm转换的ps文件没有超链接等等。如果文字显得太浅,不太看得清楚,可以换一种打印机试试,有些打印机驱动程序可以设置分辨率,转换之后的效果要好一些。对于wdl文档,如果发现转换后字体互相重叠,可以在打印时将纸张定义得宽一些。

  二、 将电子图书转换成pdf格式

  与转换成ps格式一样,转换成pdf也要用打印方式。不过,这次所用的打印驱动程序只能是adobe的PDFWrite。要安装这个打印机驱动程序,最好的方法是安装adobe公司提供的Acrobat软件,这里要注意不是大家常见的AcrobatReader,Acrobat是用来制作pdf格式文件的,可以将各种电子文档制作成pdf文件。而AcrobatReader只能阅读和打印pdf文件,而不能制作pdf文件。Acrobat本来可以在 adobe网站上下载,但要有帐号。所以我选择了国内的站点下载了Acrobat 5.0,这个东东可不小,有108兆。安装时要使用自定义方式,这样才能选择安装PDFWriter和亚州字体。安装好后,会出现分别一个Acrobat PDFWriter和Acrobat Distiller打印机。这里我们只用PDFWriter打印机。操作方法与转换成ps类似,选择打印机时一定要选择PDFWriter,但不要选中 “打印到文件(F)”,直接点击“确定”,会自动出现一个对话框,让你指定文件的保存位置和要保存的文件名,确定之后即可生成文件。有条件的朋友也可直接安装PDFWriter,但要有adobe exchange的支持。

  pdf格式有一些优点是ps没有的。比如转换后的chm文件仍然保持了超链接的功能,给使用带来方便,同时能较完整的保持原文件的风貌,因此我推荐有条件的朋友采用这种方式。

  在转换wdl文档时,也会出现字体重叠的毛病。经过反复试验,发现将纸张定义为400×400可以保证字符之间有足够的间距。同时将分辩率设置为600,这样转换之后字体会清晰一些。
推荐阅读
  • 优化联通光猫DNS服务器设置
    本文详细介绍了如何为联通光猫配置DNS服务器地址,以提高网络解析效率和访问体验。通过智能线路解析功能,域名解析可以根据访问者的IP来源和类型进行差异化处理,从而实现更优的网络性能。 ... [详细]
  • 本文详细分析了JSP(JavaServer Pages)技术的主要优点和缺点,帮助开发者更好地理解其适用场景及潜在挑战。JSP作为一种服务器端技术,广泛应用于Web开发中。 ... [详细]
  • PyCharm下载与安装指南
    本文详细介绍如何从官方渠道下载并安装PyCharm集成开发环境(IDE),涵盖Windows、macOS和Linux系统,同时提供详细的安装步骤及配置建议。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 在计算机技术的学习道路上,51CTO学院以其专业性和专注度给我留下了深刻印象。从2012年接触计算机到2014年开始系统学习网络技术和安全领域,51CTO学院始终是我信赖的学习平台。 ... [详细]
  • Linux 系统启动故障排除指南:MBR 和 GRUB 问题
    本文详细介绍了 Linux 系统启动过程中常见的 MBR 扇区和 GRUB 引导程序故障及其解决方案,涵盖从备份、模拟故障到恢复的具体步骤。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 解决Linux系统中pygraphviz安装问题
    本文探讨了在Linux环境下安装pygraphviz时遇到的常见问题,并提供了详细的解决方案和最佳实践。 ... [详细]
  • 本文介绍了一款用于自动化部署 Linux 服务的 Bash 脚本。该脚本不仅涵盖了基本的文件复制和目录创建,还处理了系统服务的配置和启动,确保在多种 Linux 发行版上都能顺利运行。 ... [详细]
  • CMake跨平台开发实践
    本文介绍如何使用CMake支持不同平台的代码编译。通过一个简单的示例,我们将展示如何编写CMakeLists.txt以适应Linux和Windows平台,并实现跨平台的函数调用。 ... [详细]
  • 国内BI工具迎战国际巨头Tableau,稳步崛起
    尽管商业智能(BI)工具在中国的普及程度尚不及国际市场,但近年来,随着本土企业的持续创新和市场推广,国内主流BI工具正逐渐崭露头角。面对国际品牌如Tableau的强大竞争,国内BI工具通过不断优化产品和技术,赢得了越来越多用户的认可。 ... [详细]
  • Valve 发布 Steam Deck 的新版 Windows 驱动程序
    Valve 最新发布了针对 Steam Deck 掌机的 Windows 驱动程序,旨在提升其在 Windows 环境下的兼容性、安全性和性能表现。 ... [详细]
  • Windows服务与数据库交互问题解析
    本文探讨了在Windows 10(64位)环境下开发的Windows服务,旨在定期向本地MS SQL Server (v.11)插入记录。尽管服务已成功安装并运行,但记录并未正确插入。我们将详细分析可能的原因及解决方案。 ... [详细]
  • 深入理解 Oracle 存储函数:计算员工年收入
    本文介绍如何使用 Oracle 存储函数查询特定员工的年收入。我们将详细解释存储函数的创建过程,并提供完整的代码示例。 ... [详细]
  • 本文总结了2018年的关键成就,包括职业变动、购车、考取驾照等重要事件,并分享了读书、工作、家庭和朋友方面的感悟。同时,展望2019年,制定了健康、软实力提升和技术学习的具体目标。 ... [详细]
author-avatar
小女人快乐方子
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有