运行时可以通过和htlatex <filename>
包含 CSS 代码。只要代码直接包含在主文档中,这种方法就可以正常工作。\CssFile
\EndCssFile
我怀疑这是在宏中包含逐字内容的常见问题,但是有没有办法包含 CSS 代码,但不是必须将其放入实际的文档主体中。
笔记:
pfdlatex
在这两个上运行良好,问题是仅有的htlatex
与下面的第二个 MWE一起。- 所包含的 CSS 实际上并未在由此 MWE 生成的 HTML 中使用。
代码:有效,但文档混乱
\documentclass{article}
\usepackage{ifpdf}
\begin{document}
%% This works, but would rather it not be here so that the document is not cluttered.
\ifpdf
\else
\CssFile
/* css.sty */
.imageWrapperHi { height:99%; width:100%; text-align:center; page-break-inside:avoid; }
.imageWrapperHi img { display:inline-block; height:100%; margin:0 auto; }
\EndCssFile
\fi
% -------
Some text.
\end{document}
代码:希望有这样的解决方案
\documentclass{article}
\usepackage{ifpdf}
\usepackage{etoolbox}
\ifpdf
\else
\AfterEndPreamble{%
\CssFile
/* css.sty */
.imageWrapperHi { height:99%; width:100%; text-align:center; page-break-inside:avoid; }
.imageWrapperHi img { display:inline-block; height:100%; margin:0 auto; }
\EndCssFile
}%
\fi
% -------
\begin{document}
Some text.
\end{document}
答案1
您应该使用.cfg
文件来处理这些内容,真的没有必要用tex4ht
配置来弄乱您的文档。它适用于以下文件hello.cfg
:
\Preamble{xhtml}
\begin{document}
\CssFile
/* css.sty */
.imageWrapperHi { height:99%; width:100%; text-align:center; page-break-inside:avoid; }
.imageWrapperHi img { display:inline-block; height:100%; margin:0 auto; }
\EndCssFile
\EndPreamble
编译
htlatex filename hello
有关一些信息请参见回答