過調(diào)用Windows命令,將chm 文件轉(zhuǎn)換為html 文件。
方法:
命令行(cmd),輸入hh -decompile <輸出文件夾路徑> <要反編譯的CHM文件全路徑名>
例如:
win+r 鍵,彈出運行窗口輸入命令cmd回車,然后輸入:
過 Amazon Kindle 官方商店購買電子書,可以輕松實現(xiàn)「下單買電子書 - 推送至 Kindle」,但僅僅依靠官方商店渠道獲取的電子書數(shù)量可能還不足夠,Kindle 用戶選擇從網(wǎng)上其他渠道下載回來的電子文件,大多數(shù)是 pdf、epub 格式,直接放在 Kindle 設(shè)備上,會面臨格式不支持或者內(nèi)容排版變形等問題。
為了解決以上的問題,我收集了幾款本地工具和在線工具的解決方案,幫助大家輕松應(yīng)對電子書格式轉(zhuǎn)換,在 Kindle 上獲得即點即開的閱讀體驗。
Kindle 設(shè)備目前原生支持 mobi、azw 和 azw3 三種電子書格式,其中 mobi、azw 是較早推出的格式標準,而 azw3 是在 2011 年 Kindle Fire 平板一并推出的格式,由于其支持 HTML5 和 CSS3 語法,最后輸出的內(nèi)容有著較好的排版支持效果。
對于電子書格式轉(zhuǎn)換需求,下面收集了四款本地工具,有 Amazon 官方出品的 KindleGen、Kindle Comic Creator,也有最熱門的本地電子書管理工具 Calibre,而 EasyPub、Kindle Comic Converter 和 ChainLP 解決了其他文檔格式轉(zhuǎn)換的問題。
KindleGen
KindleGen是一款亞馬遜官方推出的電子書格式免費轉(zhuǎn)換工具,主要功能是將 HTML、XHTML 或者 epub 文檔轉(zhuǎn)換成 Kindle 設(shè)備兼容的 mobi 格式。KindleGen 實際上是一款命令行工具,支持 Windows、Mac 和 Linux 平臺,以將 epub 格式的《1984》轉(zhuǎn)換成 mobi 為例子,具體使用步驟:
1.下載并解壓 KindleGen 壓縮包,由于亞馬遜 官方頁面暫時不支持中國區(qū)下載,建議大家在書伴頁面找到百度網(wǎng)盤下載壓縮包;
2.比如將壓縮包解壓到文件路徑 D:\KindleGen
,打開 Windows 命令提示符,輸入D:\KindleGen\kindlegen
,系統(tǒng)將反饋 KindleGen 的使用說明;
3.比如將《1984》電子書放在 D:\ebook
,命令行窗口輸入cd /d D:\ebook
進入電子書所在的目錄文件位置;
4.輸入 D:\KindleGen\kindlegen 1984.epub
,轉(zhuǎn)換成功后自動在 epub 源文件的目錄位置生成 1984.mobi 文件。
另外還有一個更簡便的方法,將 1984.epub 文件直接拖拽至 kindlegen.exe 應(yīng)用程序圖標上,KindleGen 工具會自動彈出轉(zhuǎn)換的頁面,并在源文件的位置下生成 mobi 文件。
Kindle Comic Creator
Kindle Comic Creator則是一款亞馬遜官方專門為漫畫作者和出版商推出的漫畫轉(zhuǎn)電子書的免費工具,適用 Windows、Mac 平臺,支持將 JPG、PDF、TIFF、PNG 和 PPM 轉(zhuǎn)換成 mobi 電子書。提前準備好幾張示例圖片后,KCC 使用步驟如下:
1.打開 KCC 主界面后,選擇創(chuàng)建新圖書,彈出創(chuàng)建窗口,按步驟填寫「面板選擇」和「元數(shù)據(jù)和設(shè)置」的選項,包括了圖書定位、翻頁方向、畫布大小、封面圖片和輸出保存的位置;
2.完成基本信息輸入后,進入圖像添加的編輯界面,在左邊欄的圖書管理器中,圖書設(shè)置和頁面設(shè)置中提供了更詳細的元數(shù)據(jù)和頁面調(diào)整的選項,右邊欄有 Kindle 設(shè)備預(yù)覽效果;
3.選擇菜單欄「文件 - 導(dǎo)出為 KF8 圖書」輸出生成 mobi 電子書文件(快捷鍵 F5
直接在制定目錄生成轉(zhuǎn)換文件)。
除了亞馬遜官方出品的 KCC 軟件外,ChainLP、Kindle Comic Converter也能夠把漫畫圖片輕松轉(zhuǎn)換成 epub、mobi 格式文檔。
Calibre
Calibre是一款電子書管理工具神器,也提供了格式轉(zhuǎn)換功能,支持 Windows、Mac 和 Linux 平臺,甚至提供了便攜綠色版本,我們通過內(nèi)置的命令行工具 ebook-convert 或者圖形界面完成各種電子書格式轉(zhuǎn)換。
ebook-convert命令語法是:
ebook-convert input_file output_file [options]
參照 Calibre wiki 文檔、 顯示,input_file 支持輸入的格式 azw4、chm、comic、docx、epub、fb2、html、mobi、pdf、txt 等格式,output_file 則支持輸出 azw3、docx、epub、html、mobi、 pdf、txt 等主要格式。
輸入如下命令,實現(xiàn)將 1984.epub 文件轉(zhuǎn)換成 1984.mobi 文件格式。
ebook-convert 1984.epub 1984.mobi
圖形界面。Calibre 主界面中選中書籍后,在工具欄選擇「轉(zhuǎn)換書籍」打開轉(zhuǎn)換界面,接著在右上角的輸出格式選項,選擇希望輸出的文檔格式(支持輸入格式參照 ebook-convert 命令行介紹部分 )。另外亞馬遜近期推出較新的電子書格式 KFX,如果需要將 KFX 和其他格式互轉(zhuǎn)的話,可以嘗試安裝 Calibre 插件 KFX Input 以及 KFX Output。
EasyPub
跟 Calibre 提供一站式電子書解決方案不同之處在于,EasyPub 提供功能相對單一,它是一款針對 TXT 轉(zhuǎn)換成 mobi、epub 格式的免費工具,僅支持 Windows 系統(tǒng),下載地址在書伴網(wǎng) 頁面搜索即可。
在格式轉(zhuǎn)換的設(shè)置標簽頁中,用戶可以利用章節(jié)部分的調(diào)整選項,通過文檔的章節(jié)規(guī)則生成較好的文件目錄。
如果用戶經(jīng)常從網(wǎng)絡(luò)中下載的文檔以 TXT 格式為準,那么 EasyPub 這款純粹單一的轉(zhuǎn)換工具能夠滿足大部分需求。
除了以上四款本地工具外,在線工具同樣能夠滿足電子書格式轉(zhuǎn)換需求,其優(yōu)勢是免除了安裝應(yīng)用程序的繁瑣操作,不占用本地空間資源,隨用隨打開在線頁面。
Convertio
Convertio支持各類文檔格式相互轉(zhuǎn)換、OCR 識別功能,通過超鏈接、Dropbox 和 Google Drive 導(dǎo)入文件,注冊賬戶支持最大 100MB 文件大小。最省心的地方在于,用戶上傳文件后,Convertio 將自動識別上傳文件的格式,給出轉(zhuǎn)換成對應(yīng)格式的選項。在電子書格式轉(zhuǎn)換中,Convertio 電子書轉(zhuǎn)換支持輸出 mobi、azw3、epub 常見格式,也支持轉(zhuǎn)換成 lrf、snb、rb 等較少見的電子書格式。
Kindle 郵箱
Kindle 郵箱除了解決了文件推送到 Kindle 設(shè)備的問題外,還能夠「曲線救國」解決 epub 格式在 Kindle 閱讀器上閱讀,只需要將 epub 文件格式手動改為 zip,再通過電郵方式推送到 Kindle 個人郵箱,亞馬遜個人文檔云存儲將自動轉(zhuǎn)換格式后推送到 Kindle 設(shè)備中,用戶直接打開文檔即可閱讀。
或許 Kindle 吃灰的原因不在于電子書格式轉(zhuǎn)換的問題,但以上推薦的六款工具可以很好解決大家從網(wǎng)上下載和制作的文檔后,轉(zhuǎn)換成 Kindle 設(shè)備支持閱讀的格式,本地工具憑著更豐富的轉(zhuǎn)換設(shè)置選項更細致地調(diào)整轉(zhuǎn)換效果,在線工具則有著「用完即刪、隨用隨開」的優(yōu)勢。希望這篇工具合輯讓 Kindle 電子書格式轉(zhuǎn)換的問題,不再成為大家閱讀電子書的「絆腳石」。
1 -
場景
CHM是英文Compiled HTML Help的縮寫,是微軟公司專有的聯(lián)機幫助格式,由HTML頁面、索引和其他導(dǎo)航工具的集合組成。這些文件被壓縮并部署為二進制格式,擴展名為.CHM,用于編譯HTML。CHM格式通常用于軟件文檔。
雖然CHM格式是老的文檔格式,很多Windows程序已經(jīng)不再將它作為幫助文件的首選,但是有些場景我們依然希望將DITA或者Markdown發(fā)布成CHM格式的內(nèi)容。尤其是為運行在Windows操作系統(tǒng)下的軟件提供離線幫助。DITA發(fā)布體系支持將DITA內(nèi)容發(fā)布成CHM格式。
本文分析將DITA或Markdown格式的內(nèi)容發(fā)布成CHM格式的方法,并為實現(xiàn)這個目的掃清實際操作遇到的技術(shù)障礙。
- 2 -
DITA-OT發(fā)布框架
DITA-OT是DITA內(nèi)容發(fā)布的開源發(fā)布引擎。它的誕生,是為了將DITA格式的內(nèi)容發(fā)布成多種格式輸出。
隨著這些年的發(fā)展,DITA-OT支持的輸入內(nèi)容包括DITA和Markdown,輸出的格式包括PDF、HTML和CHM格式等。見下圖(源自DITA-OT官網(wǎng):www.dita-ot.org):
1. 輸入格式一:DITA Map + Topic
系統(tǒng)支持由XML格式的DITA Map和XML格式的Topic組成的文檔,見下例。
Map文件內(nèi)容:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE map
PUBLIC "-//OASIS//DTD DITA Map//EN" "map.dtd">
<map xml:lang="zh-CN">
<title>智能云相冊</title>
<topicref href="./topics/chap1.dita">
<topicref href="./topics/sect1-1.dita"/>
<topicref href="./topics/sect1-2.dita"/>
<topicref href="./topics/sect1-3.dita"/>
<topicref href="./topics/sect1-4.dita"/>
<topicref href="./topics/sect1-5.dita"/>
</topicref>
<topicref href="./topics/chap2.dita">
<topicref href="./topics/sect2-1.dita"/>
<topicref href="./topics/sect2-2.dita"/>
<topicref href="./topics/sect2-3.dita"/>
</topicref>
<topicref href="./topics/chap3.dita">
<topicref href="./topics/sect3-1.dita"/>
<topicref href="./topics/sect3-2.dita"/>
<topicref href="./topics/sect3-3.dita"/>
</topicref>
</map>
Topic文件內(nèi)容:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE topic
PUBLIC "-//OASIS//DTD DITA Topic//EN" "topic.dtd">
<topic id="general" xml:lang="zh-CN">
<title>產(chǎn)品概述</title>
<prolog/>
<body>
<p>智能云相冊(Cloud Photos)是阿里云為影像類應(yīng)用提供的一站式解決方案。智能云相冊除了提供影像文件存儲、管理等基礎(chǔ)功能以外,還支持對影像內(nèi)容進行分類打標、面孔識別等智能分析,并提供基于自然語言理解的智能搜索服務(wù)。</p>
<p>智能云相冊服務(wù)基于阿里云云計算服務(wù)構(gòu)建,它解決了以往搭建云相冊后端服務(wù)過程中,需要購買、搭建和運維 ECS 集群,集成其他云計算服務(wù)(對象存儲、媒體轉(zhuǎn)碼等),處理海量用戶的高并發(fā)請求等一系列繁瑣的問題。更重要的是,它提供了對影像內(nèi)容的智能分析,智能生成相簿和智能搜索等服務(wù),讓人工智能技術(shù)變得觸手可及,極大提高企業(yè)和個人用戶構(gòu)建云相冊應(yīng)用程序的效率。</p>
</body>
</topic>
發(fā)布過程是這樣的:
2. 輸入格式二:DITA Map + Markdown
同時,系統(tǒng)也支持由XML格式的DITA Map和Markdown格式的Topic組成的文檔,見下例。
Map文件內(nèi)容:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE map PUBLIC "-//OASIS//DTD DITA Map//EN" "map.dtd">
<map xml:lang="zh-CN">
<title>智能云相冊</title>
<topicref navtitle="產(chǎn)品簡介">
<topicref href="./chap1/sect1-1.md" format="mdita"/>
<topicref href="./chap1/sect1-2.md" format="mdita"/>
<topicref href="./chap1/sect1-3.md" format="mdita"/>
<topicref href="./chap1/sect1-4.md" format="mdita"/>
<topicref href="./chap1/sect1-5.md" format="mdita"/>
</topicref>
<topicref navtitle="快速入門">
<topicref href="./chap2/sect2-1.md" format="mdita"/>
<topicref href="./chap2/sect2-2.md" format="mdita"/>
<topicref href="./chap2/sect2-3.md" format="mdita"/>
</topicref>
<topicref navtitle="用戶指南">
<topicref href="./chap3/sect3-1.md" format="mdita"/>
<topicref href="./chap3/sect3-2.md" format="mdita"/>
</topicref>
</map>
注:目前DITA-OT不支持使用Markdown來寫DITA Map文件,只支持使用Markdown編寫Topic。
上例中格式mdita表示Markdown格式的DITA Topic。
Markdown格式的Topic內(nèi)容:
# 產(chǎn)品概述
智能云相冊(Cloud Photos)是阿里云為影像類應(yīng)用提供的一站式解決方案。智能云相冊除了提供影像文件存儲、管理等基礎(chǔ)功能以外,還支持對影像內(nèi)容進行分類打標、面孔識別等智能分析,并提供基于自然語言理解的智能搜索服務(wù)。
智能云相冊服務(wù)基于阿里云云計算服務(wù)構(gòu)建,它解決了以往搭建云相冊后端服務(wù)過程中,需要購買、搭建和運維 ECS 集群,集成其他云計算服務(wù)(對象存儲、媒體轉(zhuǎn)碼等),處理海量用戶的高并發(fā)請求等一系列繁瑣的問題。更重要的是,它提供了對影像內(nèi)容的智能分析,智能生成相簿和智能搜索等服務(wù),讓人工智能技術(shù)變得觸手可及,極大提高企業(yè)和個人用戶構(gòu)建云相冊應(yīng)用程序的效率。
提示:在發(fā)布過程中,如果Topic格式是Markdown,系統(tǒng)先將它轉(zhuǎn)換成XML格式的Topic,然后再執(zhí)行發(fā)布。
發(fā)布過程是這樣的:
如果你所在的公司有很多Markdown格式的內(nèi)容,想將他們組合在一起發(fā)布,那么通過這種方式可以將Markdown內(nèi)容納入DITA發(fā)布體系,獲得單一數(shù)據(jù)源多種格式輸出的能力。
- 3 -
實踐
因為CHM是微軟公司獨有的格式,只能在Windows操作系統(tǒng)上運行,所以請在運行Windows操作系統(tǒng)的電腦上運行本實踐步驟。
1. 安裝必要軟件
如果安裝了Oxygen XML Editor編輯器,它已經(jīng)包含了DITA-OT發(fā)布引擎。
如果沒有使用Oxygen XML Editor編輯器,那么可以自行到DITA-OT官網(wǎng)(www.dita-ot.org)下載安裝程序,并按照文檔安裝到電腦上。本文使用的是DITA-OT 3.7.4版本。
無論用到上邊兩種方法的哪一種,都需要額外安裝一個軟件叫做HTML help workshop。這個軟件是微軟公司開發(fā)的,但大家可能會發(fā)現(xiàn)微軟公司的官網(wǎng)已經(jīng)下載不到這個軟件了。
幸運的是,有其他人也碰到了此問題,并提供了解決方案。請訪問如下網(wǎng)頁:
https://learn.microsoft.com/en-us/answers/questions/265752/htmlhelp-workshop-download-for-chm-compiler-instal
點擊網(wǎng)頁中的下圖鏈接下載安裝程序:
注:以上鏈接需要科學(xué)上網(wǎng)才能下載。經(jīng)確認發(fā)現(xiàn)最后一個德語下載鏈接可以直接訪問下載
下載后,請運行這個安裝程序安裝HTML help workshop軟件。
注意:將htmlhelp.exe下載下來后在安裝之前建議使用殺毒軟件查殺文件確保安全。
2. 使用Oxygen XML Editor發(fā)布
在Oxygen XML Editor編輯中打開ditamap文件,然后發(fā)布,如下圖:
系統(tǒng)會生成xxx.chm文件。雙擊此文件,打開結(jié)果如下圖:
3. 使用Windows命令行發(fā)布
如果沒有Oxygen XML Editor并且安裝了DITA-OT,則使用Windows命令行發(fā)布。
1) 打開Windows命令行
2)運行以下命令
cd C:\dev\dita\dita\cloudphotox
dita -i cloudphoto.ditamap -f htmlhelp -o out
注:C:\dev\dita\dita\cloudphotox是我ditamap文件所在路徑。
第二行命令的意思:
3)輸出結(jié)果為out目錄下的cloudphoto.chm文件。
打開以后如下圖:
- 4 -
總結(jié)
通過本文描述的總結(jié)和實踐,大家可以使用此方法將DITA和Markdown格式的內(nèi)容發(fā)布成CHM格式的幫助文件。
趕快試試吧!
*請認真填寫需求信息,我們會在24小時內(nèi)與您取得聯(lián)系。