在尝试了 之后tex4ebook
,我注意到如果fontspec
加载了包,脚注中的斜体和粗体将无法正常工作。它应用了粗体/斜体,但文本不再是脚注大小,而是比脚注文本的其余部分更大。如果fontspec
没有加载,则脚注中的斜体和粗体文本大小正确。我正在使用 lualatex。MWE:
\documentclass{scrbook}
\usepackage{fontspec}
\begin{document}
Some text here. \footnote{This footnote is \textit{italic} and \textbf{bold}}.
\end{document}
使用一个简单的配置文件:
\Preamble{xhtml,svg,no-cut}
\begin{document}
\EndPreamble
有人有什么办法可以解决这个问题吗?最终,我想在我的电子书中嵌入拉丁脚本字体,但电子书中有一些来自其他字母的小段文本,对于我的标准 tex pdf,我使用了新的 fontspec 系列来打印。对于 tex4ebook,我认为多语言电子书的推荐解决方案是 fontspec (https://www.kodymirus.cz/tex4ht-doc/Configurations.html#unicode),但是我有上述的fontspec问题,所以我需要解决其中一个问题。
顺便说一句,我不确定如何在 Lualatex 中的 tex4ebook 中嵌入一种不涵盖所有使用的 Unicode 字母的字体(即我的书是多种语言的),如果有人对此有任何建议的话。
非常感谢!
答案1
这里的问题是,使用 Fontspec 时,TeX4ht 会为和生成标准 HTML 标签<i>
和,而不是看起来像 的默认标记。在大多数情况下,这是可以接受的,但当它被使用这种格式的较小字体包围时,情况就不一样了,就像脚注的 HTML 代码一样:<strong>
\textit
\textbf
<span class="ec-lmr-9">
<div class='footnote-text'>
<!-- l. 4 --><p class='indent'>
<span class='footnote-mark'><a id='fn1x0'><a id='x2-3x'></a><sup class='textsuperscript'>1 </sup></a></span>
<span class='ec-lmr-9'>This footnote is </span><i>italic</i> <span class='ec-lmr-9'>and </span><strong>bold</strong></p></div>
在这种情况下,您需要使用 CSS 并声明<strong>
和<i>
标签,使其footnote-text
具有与 相同的大小<span class='ec-lmr-9'>
。
可以使用此配置文件来完成:
\Preamble{xhtml,svg,no-cut}
\Css{.footnote-text strong {font-size: 81\%}}
\Css{.footnote-text i {font-size: 81\%}}
\begin{document}
\EndPreamble
结果如下: