没有比这更简单的 MWE 了:
\documentclass[]{book}
\begin{document}
This is \emph{very} strange
\end{document}
您可以使用 tex4ebook 编译它,但htlatex example.tex xhtml
结果相同:如果您通过 Kindle Previewer 运行 epub 或 .html 输出,它在“Kindle Paperwhite”上显示正常,但在“Kindle DX”上,斜体“very”会缩进到它自己的行上。“This is”和“strange”都向左对齐。
(当我尝试使用特殊的“字典”标签时,我在“Paperwhite”预览器上实际上遇到了类似的问题<idx>
,当我将文件下载到实际设备时也遇到了同样的问题,所以我不认为这只是一个预览器错误,但我没有 Kindle DX......)
我意识到这可能超出了 tex.stackexchange 的范围,但我愿意听取关于其他地方发布的建议。不过,我怀疑可以通过更改 tex4ht 生成的 css 来修复它。
谢谢!
答案1
我无法访问 kindle previewer,所以我不知道问题是什么,可能是 Kindle DX 的一个错误。您可以尝试配置\emph
以生成更适合的 html 代码kindle
,例如:
\Preamble{xhtml}
\begin{document}
\Configure{emph}{\Protect\HCode{<em>}\NoFonts}{\EndNoFonts\Protect\HCode{</em>}}
\Css{em{font-style:italic;}}
\Css{em em{font-style:normal;}}
\EndPreamble
<em>
使用元素代替默认元素<span>
,也许它在方面有更好的支持kindle
。使用样式来支持嵌套命令中css
切换italic
和字体的 LaTeX 行为normal
\emph
编辑:我在 Kindle 预览器中尝试了上述示例,问题仍然存在。但当我删除文件时.css
,一切正常,所以我发现Kindle DX
css 处理存在一些问题。经过一番研究,我发现这可能是由以下程序生成的无效 css 引起的tex4ht
(此错误在当前版本中已修复TeXlive
,但我使用的是旧版本):
.likesubsectionToc ~ .subsubsectionToc, .subsectionToc ~ .subsubsectionToc, {margin-left:2em;}
注意左括号前的逗号,这是无效的。如果没有逗号,渲染即使在Kindle DX