我正在尝试使用 CSS 来设置 tex4ht 输出的样式,以便制作一本 Kindle 书。例如,我想verse
使用.verse { margin-left:2.5em; white-space:normal; }
Kindle 指南要求使用单个 CSS 文件。当我\CssFile
在 .cfg 文件中使用时,CSS 位于开始.css 文件的,因此它被 tex4ht 生成的 CSS 覆盖。我可以手动编辑它以将我的 CSS 移到末尾,但我希望找到一种尽可能少手动步骤的方法。
更改 tex4ht css 类似乎问的是同样的问题,但最终却得到了截然不同的答案。
抱歉没有发布 MWE,但如果有必要,我愿意这样做。
答案1
有关\CssFile
用法的一些信息tex4ht 文档
您可以在可选参数中包含 css 文件,多个文件必须用逗号分隔。 生成的 css 行的位置tex4ht
可以用 line in/* css.sty */
格式指定。 请注意,您必须将\CssFile
AFTER放在文件begin{document}
中.cfg
。
现在有一些示例,我们有两个 css 文件sample.css
:
body{color:green}
和hello.css
:
/* css.sty */
body{width:30em;margin: 0 auto;}
然后我们可以代入sample.cfg
:
\Preamble{xhtml}
\begin{document}
\CssFile[sample.css,hello.css]
\EndCssFile
\EndPreamble
因为行在/* css.sty */
第二个文件中,css
所以生成的tex4ht
行放在这两个文件的内容之间:
/* sample.css from ahoj.tex (TeX4ht, 2014-09-20 17:00:00) */
body{color:green}
/* start css.sty */
.cmtt-10{font-family: monospace;}
p.noindent { text-indent: 0em }
...
lot of lines
...
/* end css.sty */
body{width:30em;margin: 0 auto;}
最后警告:不要将任何 css 文件命名为与TeX
文件相同的名称,否则它将被覆盖。