| 
Fri, 22 Oct 2010
 本文最后更新:2010-10-31,使用calibre版本0.7.25。 最近因?yàn)殚_(kāi)發(fā)盛大錦書(shū)Bambook的SNB格式的calibre插件,更多的使用了calibre和研究了它的實(shí)現(xiàn),也在論壇上看很多對(duì)calibre使用上的問(wèn)題。干脆在這里寫(xiě)上一貼,把常見(jiàn)問(wèn)題(尤其是中文相關(guān)的問(wèn)題)做一總結(jié)。本文會(huì)不定期更新。 
 calibre是一個(gè)一站式的電子書(shū)籍管理軟件,提供電子書(shū)籍管理、元信息整理、格式轉(zhuǎn)換、閱讀設(shè)備書(shū)籍同步、新聞下載等功能??梢越瓢阉惐葹殡娮訒?shū)界的iTunes。它使用Python開(kāi)發(fā),是一個(gè)跨平臺(tái)的自由軟件。 calibre不是一個(gè)電子書(shū)下載軟件,它只能從網(wǎng)上下載書(shū)籍的信息,但不能下載書(shū)籍本身。calibre不是電子書(shū)制作工具,雖然它提供格式轉(zhuǎn)換功能,且在轉(zhuǎn)換過(guò)程中提供一些定制功能,但這些功能非常有限,并不能用于精細(xì)控制和從頭制作電子書(shū)。 
 優(yōu)點(diǎn)是功能全,可定制化程度高,可以折騰。缺點(diǎn)是體積龐大、速度慢、BUG較多(不過(guò)修得很快)。 
 因?yàn)閃indows上大部分中文TXT文件是用System Codepage編碼的,而calibre默認(rèn)用UTF-8編碼解析。解決方法是:可以把文件轉(zhuǎn)成UTF-8編碼后再放入calibre轉(zhuǎn)換格式;也可以 在calibre的轉(zhuǎn)換對(duì)話框中左邊選擇“外觀”,然后在右側(cè)的“輸入字符編碼”中填入“gbk”或“gb18030”,calibre就可以正常轉(zhuǎn)換格 式了。 
 calibre自帶并硬編碼了一些字體文件,這些字體中不包含中文字符,渲染出來(lái)的圖片就只能顯示成問(wèn)號(hào)了。解決方案是:打開(kāi)“首選 項(xiàng)”->“優(yōu)化調(diào)整”中的“Current Tweaks”中填入優(yōu)化選項(xiàng):generate_cover_title_font = 'c:\\windows\\fonts\\simhei.ttf',這樣就可以用指定的黑體做為封面標(biāo)題的字體,就不會(huì)亂碼了。如果電腦上沒(méi)有 simhei.ttf這個(gè)字體,也可以換成任意路徑下的任意字符文件。 0.7.25以前版本的用戶:用中文字體替換掉英文字體:在calibre安裝目錄下找到resources\fonts \liberation目錄,用中文字體(比如文泉驛微米黑)替換掉里面的LiberationMono-Regular.ttf和 LiberationSerif-Bold.ttf即可(刪除原來(lái)的字體文件,把中文字體文件放進(jìn)去并改名成這兩個(gè)名字)。 
 為了保證在各個(gè)平臺(tái)各種文件系統(tǒng)下文件都可以正常的保存,calibre的作者采用了把非英語(yǔ)字符轉(zhuǎn)為英語(yǔ)字符的方式來(lái)解決多語(yǔ)言文件名,中文 就變成拼音了。對(duì)于“保存到磁盤(pán)”,可以去掉“首選項(xiàng)”->“保存圖書(shū)到磁盤(pán)”->“將非英語(yǔ)字符轉(zhuǎn)換為對(duì)應(yīng)英語(yǔ)字符”的選項(xiàng)來(lái)強(qiáng)制 calibre以原始字符保存文件名。不過(guò)這個(gè)功能有Bug,對(duì)于有些字符,保存后會(huì)亂碼。對(duì)于“發(fā)送到設(shè)備”,目前沒(méi)有解決方案。有關(guān)這個(gè)問(wèn)題,目前正 在與calibre作者積極溝通中,尋找最佳的解決方案。不過(guò)總的來(lái)說(shuō),只有極少數(shù)閱讀器設(shè)備(如iRiver Story)的書(shū)架是用文件名而不是用圖書(shū)元信息來(lái)顯示的,所以對(duì)大部分閱讀器而言即使用拼音文件名也不會(huì)帶來(lái)太多的不便。 
 老外的名字常常是名在前,姓在后,而稱呼他們的時(shí)候又常常要用姓。比如Bill Gates,我們通常稱呼他為Gates,這樣如果直接用Bill Gates來(lái)排序所有的作者,就會(huì)不太好找。為了解決這個(gè)問(wèn)題,常常就把“作者”字段設(shè)為“Bill Gates”,把“作者排序”字段設(shè)為“Gates, Bill”,這樣就又好看又好找了。對(duì)于中文書(shū)籍的作者字段來(lái)說(shuō),其實(shí)是基本不存在這個(gè)問(wèn)題的,直接把兩個(gè)字段設(shè)成相同的就可以了。所以“作者排序”的實(shí) 際含義是“用于排序的作者名字表示方式”,只不過(guò)這個(gè)詞實(shí)在不知道有什么好的翻譯方式,就只好用了這個(gè)生硬而難以理解的直譯。 如果您有任何有關(guān)calibre的問(wèn)題,可以下面留言提出,我會(huì)盡量解答并挑選有代表性的放入正文。我也會(huì)不定期更新本文,添加更多常見(jiàn)的問(wèn)題和calibre的使用技巧。 | 
|  | 
B l o g :http://
評(píng)論時(shí)間:2010-10-26 14:43:26
評(píng) 論:
我按照您說(shuō)的。 在calibre上改的能看了。生成的epub,中文可以正常顯示了。但放到Nook上,還一樣是問(wèn)號(hào)。。。
B l o g :http://www.
評(píng)論時(shí)間:2010-10-26 15:27:23
評(píng) 論:
@xinwen
Nook對(duì)中文的支持不太好,如果epub沒(méi)有內(nèi)嵌字體或字體路徑有問(wèn)題就會(huì)出來(lái)問(wèn)號(hào)。
我沒(méi)有Nook設(shè)備,所以無(wú)法幫您測(cè)試,只能幫您找到幾篇網(wǎng)上的文章,供參考:
http://www./html/2/2-474.html
http://www./html/2/2-475.html
這兩篇文章分析的比較深入,也提供了一些解決方案,就是比較復(fù)雜難懂。
http://www./discuz/thread-19471-1-1.html
這里說(shuō)了一個(gè)在calibre上可能可行的方案。
看起來(lái)Nook中文顯示問(wèn)號(hào)的問(wèn)題是一個(gè)比較常見(jiàn)的問(wèn)題,您也可以自己再找找相關(guān)的資料,找到適合您的解決方案。
B l o g :http://
評(píng)論時(shí)間:2010-11-05 10:59:17
評(píng) 論:
因?yàn)閃indows上大部分中文TXT文件是用System Codepage編碼的,而calibre默認(rèn)用UTF-8編碼解析。解決方法是:可以把文件轉(zhuǎn)成UTF-8編碼后再放入calibre轉(zhuǎn)換格式;也可以 在calibre的轉(zhuǎn)換對(duì)話框中左邊選擇“外觀”,然后在右側(cè)的“輸入字符編碼”中填入“gbk”或“gb18030”,calibre就可以正常轉(zhuǎn)換格 式了。
但是在軟件中找平到“外觀“及其內(nèi)容?
B l o g :http://www.
評(píng)論時(shí)間:2010-11-05 12:38:56
評(píng) 論:
@樓上
就是在轉(zhuǎn)換操作的對(duì)話框中(在主界面上選一個(gè)文件,點(diǎn)“轉(zhuǎn)換書(shū)籍”,或按C鍵),左邊可以選“外觀”設(shè)置組,右邊進(jìn)行設(shè)置。也可以在“首選項(xiàng)”->“常規(guī)選項(xiàng)“中的”外觀“設(shè)置組中做全局的設(shè)置。
B l o g :http://
評(píng)論時(shí)間:2010-11-05 13:16:38
評(píng) 論:
今天轉(zhuǎn)換一本TXT文本,確發(fā)現(xiàn)轉(zhuǎn)換后文字重疊。不知是何原因?
B l o g :http://www.
評(píng)論時(shí)間:2010-11-05 16:47:11
評(píng) 論:
@樓上
把TXT轉(zhuǎn)成什么格式?在什么設(shè)備上閱讀?如果可以的話,請(qǐng)把轉(zhuǎn)換前后的文件發(fā)到我的郵箱。
B l o g :http://
評(píng)論時(shí)間:2010-11-24 11:56:25
評(píng) 論:
我按您的建議, 可以轉(zhuǎn)換中文小說(shuō)了。 謝謝!
B l o g :http://
評(píng)論時(shí)間:2010-12-15 14:40:12
評(píng) 論:
calibre中如何分別控制行距?全文中只能有一種行距嗎?
B l o g :http://www.
評(píng)論時(shí)間:2010-12-15 16:48:43
評(píng) 論:
@fatbrain
只能有一種行距。要不就只能自己定義CSS了,不過(guò)這樣也很受限于calibre生成的html中預(yù)定義好的一些元素。你可以 用“調(diào)整ePub“功能把epub文件解開(kāi),然后看里面的html和css,如果有可以調(diào)整的余地,就在轉(zhuǎn)換對(duì)話框中的“外觀”中添加一些額外的CSS。
B l o g :http://
評(píng)論時(shí)間:2010-12-18 08:11:50
評(píng) 論:
感謝樓主的文章,我是最近才發(fā)現(xiàn)calibre這個(gè)軟件,非常激動(dòng)啊,哈,找了好久才找到這么好的個(gè)人圖書(shū)管理軟件。
幾個(gè)問(wèn)題請(qǐng)教:
1 元數(shù)據(jù)字段太少,可以自定義增加嗎:比如:TITLE 需要分為 英文書(shū)名和中文譯名,作者需分為:原作者和譯者,增加語(yǔ)言等等
2 增加一本書(shū)之后,軟件自己解析的作者往往是錯(cuò)誤的,在元數(shù)據(jù)里修改之后,又會(huì)生成一個(gè)新的文件夾路徑,同時(shí)拷貝一份新的電子書(shū)文檔,感覺(jué)比較浪費(fèi)硬盤(pán)空間,可否修改
3 顯示界面書(shū)籍信息的排序是否可以調(diào)整?
再次感謝樓主的文章,同時(shí)感謝Caliber的作者
B l o g :http://www.
評(píng)論時(shí)間:2010-12-19 15:58:51
評(píng) 論:
@徐勝
1. 在“首選項(xiàng)”中的“增加欄目“中添加自定義字段。添加后在書(shū)籍列表中就會(huì)出現(xiàn)相應(yīng)的列,在編輯元數(shù)據(jù)對(duì)話框中會(huì)多出”自定義元數(shù)據(jù)“的頁(yè)面。
2. 沒(méi)有重現(xiàn)您說(shuō)的問(wèn)題,修改元數(shù)據(jù)后書(shū)籍會(huì)移到新的目錄中。請(qǐng)告訴你可以重現(xiàn)問(wèn)題的calibre版本和步驟。
3. 點(diǎn)擊書(shū)籍列表的標(biāo)題字段就可對(duì)書(shū)籍按指定字段排序。似乎不支持隨意調(diào)整排列順序。
B l o g :http://
評(píng)論時(shí)間:2011-02-23 10:58:39
評(píng) 論:
使用calibre 生成的mobi 文件統(tǒng)一不能使用add to collection 這個(gè)功能,其他的mobi文件倒是可以
B l o g :http://www.
評(píng)論時(shí)間:2011-02-23 23:17:54
評(píng) 論:
@atpking
可以詳述一下問(wèn)題和重視步驟么?Add to collection這個(gè)功能我不太了解,是針對(duì)Kindle的嗎?您可以直接去calibre網(wǎng)站提交ticket,也可以在這里描述一下問(wèn)題,我代為提交ticket。
B l o g :http://
評(píng)論時(shí)間:2011-03-02 23:18:06
評(píng) 論:
您好,將一個(gè)背單詞的pdf文檔轉(zhuǎn)換為epub,原本好端端的音標(biāo)文件成了亂七八遭的大寫(xiě)英文字母,音標(biāo)不能認(rèn)了,請(qǐng)問(wèn)您有什么好的解決建議嗎?
B l o g :http://www.
評(píng)論時(shí)間:2011-03-04 01:13:56
評(píng) 論:
@liu
對(duì)于PDF文件,我的建議就是最好不要轉(zhuǎn),似乎還沒(méi)有什么軟件可以完美的轉(zhuǎn)換PDF格式的。
音標(biāo)的問(wèn)題,要看pdf文件里內(nèi)部原來(lái)存的是什么東西,可能是unicode字符,也可能是內(nèi)嵌了特殊的字體,還有可能是圖片。按你說(shuō)的音標(biāo)變成 大寫(xiě)字母的話,很可能是因?yàn)閜df中的音標(biāo)是用特殊字體來(lái)顯示的。如果可能,請(qǐng)發(fā)一個(gè)有問(wèn)題的pdf文件到我的郵箱,我分析分析看看具體的原因。