epub电子书格式转换(E-bookConversion翻译)calibre转换系统的设计非常容易使用。
通常情况下,你只需要添加一本书到calibre,单击转换,calibre将尽可能接近输入地产生输出。
然而,calibre接受的输入格式非常多,但并非适合所有这些格式都转换为其它格式电子图书。
在这种情况下对于这些输入格式,如果你想在更大程度上控制转换系统,calibre有很多转换过程中的控制选项。
但是请注意,calibre的转换系统并不是一个完全成熟的电子书编辑器的替代品。
要编辑电子书,我建议首先使用calibre将它们转换为EPUB,然后用专用EPUB的编辑器,如Sigil,以获得完美的造型成书。
然后,您可以使用编辑过的EPUB作为输入,用calibre转换为其他格式。
这份文件将主要是指转换设置,如下图转换对话框所示。
所有这些设置也可以通过命令行界面的转换,并记录电子书转换。
在calibre,您可以通过移动你的鼠标,在任何个人设置中获得帮助,会出现一个工具提示描述设置。
内容简介外观和感觉页面设置结构检测目录如何设置选项/保存的转换特定格式的转换提示简介首先要了解有关转换系统,它是一个管道设计的。
示意图如下:输入格式是先由相应的输入插件转换为XHTML。
然后转换HTML。
在最后一步,处理XHTML是有适当的输出插件转换到指定的输出格式。
转换的结果根据输入格式可能差别很大。
一些格式转换比其它工具好。
这里有一个最好的源格式转换列表如:LIT,MOBI,EPUB,HTML,PRC,RTF,PDB,TXT,PDF。
该转换XHTML的输出上的行为是发生在所有的工作。
有各种各样的转换,例如,在书的开始要插入书元数据(metadata)页,用来检测章节标题并自动创建的目录表,按比例调整字体大小,等等。
重要的是要记住,所有的转换是XHTML输出输入插件的行为不是在输入文件本身。
因此,举例来说,如果你问calibre转换RTF文件为EPUB的,它首先被内部转换为XHTML,各种转换将被应用到的XHTML,然后输出插件将创建EPUB的文件,所有元数据(metadata)、目录等等,自动生成。
您可以通过使用调试选项看到这一行动的过程。
只需指定调试的路径为输出目录。
在转换过程中,calibre将会把生成的XHTML转换流水线的各个阶段放在不同子目录。
四个子目录是:转换管道阶段目录|说明input|这包含了HTML输出输入插件。
使用此调试输入插件。
parsed|前处理和从输入插件转换为XHTML输出结果。
用于调试的结构检测。
structure|后结构检测,但在CSSflattening和字体大小的转换之前。
用于调试的字体大小转换和CSS转换。
processed|在电子图书传递到输出插件之前。
用于调试输出插件。
如果你想用calibre转换之前,编辑输入文件,最好的办法是编辑输入子目录中的文件,然后压缩它的小,并以此作为后续的转换输入格式的压缩文件。
要做到这一点,使用编辑元(meta)信息对话框添加压缩文件ZIP文件,然后在转换对话框顶部的左下角,选择ZIP作为输入格式。
这份文件将主要处理以XHTML为中间格式的各种操作转换,并讲述如何控制它们。
在最后有一些提示,具体到每一个输入/输出格式。
外观和感觉内容字体大小缩放段落间距附加的CSS杂项这组选项控制的外观各个方面和转换电子书的感觉。
字体大小缩放对电子阅读体验最好的功能之一是能够方便地调整字体大小以适应个人的需要和亮度选项。
calibre有复杂的算法,以确保所有的书籍,输出有一个一致的字体大小,字体大小是没有什么在输入文件中指定的问题。
文档的基本字体大小是在该文件中,即在该文件中的文本批量大小最常见的字体大小。
当您指定相应的字体大小,calibre自动重新成比例调整文档中的所有字体大小,因此,最常见的字体大小成为指定的基本字体大小,其他字体大小适当的重新调整。
通过选择一个更大的基本字体大小,您可以在文件中获得较大字体,反之亦然。
当您设置相应的字体大小,以取得最佳效果,你也应该设置关键的字体大小。
一般来说,calibre会自动选择您已选择(见页面设置)的输出模式合适的基本字体大小。
但是,您在这里可以覆盖此情况下,默认是不适合你。
Fontsizekey选项可以控制如何使非基本字体大小重新调整。
字体缩放算法的工作原理使用Fontsizekey,这是一个简单的字体大小以逗号分隔的列表。
Fontsizekey告诉calibre,对比于基本字体大小,给定的字体大小应有多少大或小“步骤”。
这个idea是一个文档中的字体大小应该数量有限。
例如,一个用于正文文本大小,不同层次的大小标题和一对super/sub脚本和脚注字体大小。
fontsizekey允许calibre在输入文件划分成独立的“箱”字体大小对应不同的逻辑字体大小。
让我们用一个例子说明。
假设我们的源文件转换是由具有优良的视力的人制作,并以8pt为基本的字体大小。
这意味着该文件中的文字大部分是在8pts大小,而标题是有点大(如10和12pt)和小一些的6pt脚注。
现在,如果我们使用以下设置:Basefontsize:12ptFontsizekey:7,8,10,12,14,16,18,20输出文件将有一个基本字体大小12pt,14,16pt标题和脚注8pt字体大小。
现在假设我们要做出最大的标题大小更加突出,以及一些较大的脚注。
要做到这一点,关键的字体应改为:Newfontsizekey:7,9,12,14,18,20,22最大的标题将成为18pt,而脚注将成为9pt。
你可以通过这些设置,找出使用字体缩放向导的最佳方式,可以通过点击旁边的小按钮,字体大小项设置为您最佳的访问。
如果你想保留在输入文件中的字体大小,所有的字体大小缩放转换中被禁止。
行的高度控制线的垂直高度。
默认情况下,(行高度0),没有行的高度进行操纵。
如果你指定一个非默认值,行的高度将设在所有地点,不指定自己的行高度。
然而,这是一个钝器,应谨慎使用。
如果你想调整一些输入部分的行高度,最好使用EXTRACSS。
段落间距通常,在XHTML段落之间呈现空行,而没有文本缩进。
calibre有一对选项来控制这些呈现方式。
删除段落之间的间距强制所有段落之间没有段落间距。
它还设置文本缩进1.5em(可改变),以标志每一个段落的开头。
另一方面可插入空行,保证有每个段落之间有空行。
这两个选项非常全面,删除空格,或插入的所有段落(实际上对应于
和
唯一的例外是当输入文件使用硬换行符实施跨段落间距。
如果你想删除所有段落之间的间距,除了有选择的几个,不要使用这些选项。
相反添加以下CSS代码为ExtraCSS:p,div{margin:0pt;border:0pt;text-indent:1.5em}.spacious{margin-bottom:1em;text-indent:0pt;}然后,在您的源文件,需要用class=”spacious”标记的段落间距。
如果你输入的文件不是在HTML中,使用调试选项,描述如何得到HTML(使用输入子目录)。
ExtraCSS这个选项允许你指定任意的CSS将其应用到所有的输入HTML文件。
这个CSS应用具有非常高的优先,所以最应该重写CSS在输入文件本身存在。
你可以用它来微调设定文档的presentation/layout。
例如,如果你想所有段落尾类是正确对齐,只需要添加:.endnote{text-align:right}或者如果你想改变所有段落的缩进:p{text-indent:5mm;}ExtraCSS是一个非常强大的选项,但您确实需要很好地理解如何使用CSS,充分发挥其潜力的。
杂项这里有几个在本节的选项。
Notextjustification一般来说,如果输出格式支持的话,calibre将强制输出有合理的文本(即平滑右边距)的电子书。
此选项将关闭此行为,在这种情况下,在输入文件中指定任何调节将被使用。
Linearizetables一些设计不良的文件,使用表格控制网页上的文字布局。
此选项将提取的表的内容和线性方式呈现它。
请注意,此选项线性化的所有表,所以只有你是确保输入的文件不使用正当目的,比如提交表格信息,才使用它。
Transliterateunicodecharacters音译Unicode字符的ASCII表示。
应小心使用,因为这将取代使用ASCIIUnicode字符。
比如,它会用“MikhailGorbachiov”取代“МихаилГорбачёв”。
此外,请注意,一个字符有多个表示意义,(例如由中国和日本共同字符),使用人数最多将被使用(在前面的例子中用中文)。
如果你的电子设备上不支持Unicode的电子书,这个选项主要是有用的。
Inputcharacterencoding旧文档有时不指定其字符编码。
转换时,这可能导致非英文字符或特殊字符,如智能引号被损坏。
calibre尝试自动检测源文件的字符编码,但它不是总是成功。
你可以强制使用此设置特定字符的编码。
cp1252是一种常见的使用Windows软件所产生的文件编码。
你也应该阅读HowdoIconvertmyfilecontainingnon-Englishcharacters,orsmartquotes解决更多编码问题。
页面设置页面设置选项用于控制屏幕布局,如页边距、屏幕尺寸。
如果选定的输出格式支持页边距选项,这里有一些选项配置页边距供输出插件使用。
此外,你应该选择一个输入和输出配置文件。
这两套配置文件在输入/输出文档基本处理如何测量屏幕尺寸和默认fontrescalingkeys。
如果你知道你的文件正在转换的目的是用在一个特定的设备/软件平台,选择相应的输入配置,否则就选择默认输入配置。
如果你知道你正在生成的文件是给一个特定的设备类型,选择相应的输出配置文件。
特别是,对MOBI输出文件,你应该选择适合Kindle,LIT对应微软,EPUB对应索尼阅读器。
对于EPUB,索尼阅读器的配置将导致所有EPUB的文件的输出。
但是,它有一些副作用,如像人工插入分节符保持内部组件低于阈值大小的索尼设备需要。
特别是在为iPhone/Android手机,选择索尼输出配置文件。
如果你知道你的EPUB文件将无法在一个索尼或类似设备阅读,使用默认的输出配置文件。
如果您生成MOBI而不用于Kindle,选择Mobipocket的图书输出配置文件。
输出配置文件也可以控制屏幕的大小。
这将导致,比如说,图像,自动调整大小以适合在一些屏幕输出格式。
因此,选择一个与你的设备有一个类似屏幕尺寸的配置文件。
结构检测当输入文档没有正确指定结构元素,calibre结构检测将尽力检测,例如,章节,分页,页眉,页脚等。
你可以想像,这个进程会随着不同的书变化很大。
幸运的是,calibre有非常强大的选项来控制。
章节和分页符calibre有两个章节的检测选项和插入分页符集。
这有时会稍微有些混乱,默认情况下,calibre将在检测到章节以及所检测分页选项的位置插入分页符。
其原因是,经常有位置插入分页符但不属于本章的界限。
此外,检测到的章节可以设置为生成的目录自动插入。
calibre使用一种强大的语言XPath,允许用户指定章节界限/分页符。
XPath在开始使用时看起来有点令人生畏的,幸运的是,这里XPath教程用户手册。
请记住,结构检测操作由XHTML转换管道产生的。
使用调试选项的为你的电子书找出适当的设置说明。
还有一个XPath向导按钮,以协助处理简单的XPath表达式生成。
它的意思是,calibre假定章节开始于
或标记,其中包含内容(包括章,书籍,分段或分部)或有class=”chapter”属性。
默认情况下,它会在章节之前插入一个分页符。
你也可以插入规则线,或附加分页符。
也可以什么也不做。
注意:默认的表达可能你的输入格式转换而改变。
删除页眉和页脚这些选项是有用的,主要用于对PDF文件的转换。
通常,转换留下页眉和页脚中的文本。
这些选项使用正则表达式来尝试检测和删除页眉和页脚他们。
请记住,他们在由转换XHTML的管道产生的中间操作。
还有一个向导来帮助您自定义文档的正则表达式。
页眉和页脚中使用正则表达式结合删除页眉和页脚选项。
如果删除选项未启用正则表达式将不会被用于消除匹配的文本。
清除过程使用Python正则表达式。
所有匹配的文本只是从文件中移除。
你可以了解正则表达式和他们的语法(/library/re.html)。
Insertmetadataaspageatstartofbook关于calibre最具成就的事情之一是,它可以让你保持着所有图书非常完整的元数据(metadata),例如,rating,tags,comments等,这选项将创建一个单页的所有元数据(metadata),并将其插入到转换的电子书,一般在封面之后。
你可以把它看成是一种创建你自己定制的书夹克的方式。
Removefirstimage有时候,你要转换的源文件包含了书中的一部分,作为封面,而不是作为一个单独的封面。
如果你也指定一个封面,然后将转换后的书有两个封面。
此选项只会删除源文件的第一个图像,从而确保转换后的书只有一个封面,即calibre规定的一个。
Preprocessinput此选项将激活那些试图发现和纠正错误格式的输入文件常见的情况不同的算法,如硬断行,没有格式的大块文本等。
如果你的输入文件格式非常坏,可打开此选项。
但要知道,在某些情况下,这个选项可能会导致更坏的结果,所以请小心使用。
Line-unwrapfactor此选项控制calibre用于去除硬换行符算法。
例如,如果该选项的值是0.4,这意味着calibre将删除行长度低于文档中所有行长度40%的硬换行符。
目录当输入文件已在其元数据(metadata)的目录表,calibre只会使用它。
然而,旧格式或者不支持基于元数据目录,或个别文档中没有。
在这种情况下,在转换电子书输入文档的实际内容的目录的基础上在本节中的选项可以帮助您自动生成。
第一种选择是强制自动生成的目录使用。
选中此选项,您可以有calibre覆盖任何目录中的自动输入与元数据中找到生成的文件。
默认的方式下,创建自动生成目录表的工作原理是,calibre将首先尝试添加任何检测到的章节的内容生成的表。
你可以学习如何自定义在上面检测到的部分的章节结构。
如果您不希望在生成的目录表中包含检测到的内容章节,则不添加detectedchapters选项。
如果低于检测章章数阈值,calibre将它添加任何发现的超链接在输入文件的目录表。
这对在多个输入文件开始包括一个超链接的目录往往行之有效。
链接数目的选项可以用来控制此行为。
如果设置为零,没有链接添加。
如果设置最多为大于零的数字,即链接的数量随之尽量增加。
calibre会自动过滤目录生成的表重复内容。
但是,如果有一些额外的不良条目,您可以用TOCFilter过滤他们。
这是一个将在生成的目录表匹配内容条目标题的正则表达式。
每当找到匹配,它会被删除。
例如,要删除所有条目标题“Next”or“Previous”使用:Next|Previous最后,1,2,3级TOC选项允许你创建一个复杂的多级目录。
他们是XPath表达式匹配的转换产生的管道中的XHTML标记。
请参阅如何访问这个XHTML的介绍。
也读XPath教程,学习如何构建XPath表达式。
每个选项旁边有一个按钮,启动一个向导来帮助基本XPath表达式创建。
下面简单的例子说明如何使用这些选项。
假设你有一个输入文件,在XHTML看起来像这样:Chapter1
...Section1.1
...Section1.2
...Chapter2
...Section2.1
...