.css 生成自 .cls 文件,而不是 .cfg 文件

.css 生成自 .cls 文件,而不是 .cfg 文件

是否可以根据自定义的.cls 文件而不是从配置文件(即 \Css {})生成.css 文件。例如,环境引用在我的类文件中定义为:

\newenvironment{quote}%
               {\list{}{\topsep9\p@\leftmargin\z@\rightmargin\z@}%
                \small\fontseries{b}\selectfont%
                \item\relax\}%
               {\endlist}%

我正在使用 HTML 转换命令htlatex test "xhtml,fn-in" "-cunihft" "-cvalidate -p",转换后的 HTML 输出如下:

                    <p class="indent" >
                    <span 
class="ptmr8t-x-x-90">Collusion  is  when  firms  use  history-dependent  strategies  to  sustain</span></p>

CSS 输出为:

.quote {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; margin-right:1em; text-align:justify;}

意味着 css 输出实际上不是从类 (.cls) 文件生成的,而是从配置文件 (用于 tex4ht 的 .cfg) 生成的

现在 CSS 中的预期输出(“quote”)是:

.quote {font-size:80%; font-weight: bold;}

我该如何实现这一点?请提出建议...

答案1

你可以.4ht为你的班级创建文件。假设你有班级myclass.cls

\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{myclass}[2017/07/11 Example LaTeX class]
\LoadClass[]{article}
\renewenvironment{quote}%
               {\list{}{\topsep9\p@\leftmargin\z@\rightmargin\z@}%
                \small\fontseries{b}\selectfont%
                \item\relax}%
               {\endlist}% 

\endinput

配置.4ht文件将是myclass.4ht

\ConfigureEnv{quote}{\NoFonts}{\EndNoFonts}{}{}
\Css{.quote{font-size:80\%; font-weight: bold;}}

\endinput

环境的配置quote仅禁用环境内的字体启发式,以摆脱这些元素。 in<span class="ptmr8t-x-x-90">的默认配置将自动在环境周围添加,因此您无需手动执行此操作。在命令中,您必须使用 转义字符。quotetex4ht<div class="quote">\Css%\%

以下示例文件:

\documentclass{myclass}

\begin{document}
\section{Do common commands work?}

Yes, \textbf{they} \textit{do}\footnote{even footnotes?}.
\begin{quote}
  Collusion  is  when  firms  use  history-dependent  strategies  to  sustain
\end{quote}
\end{document}

产生这样的结果:

在此处输入图片描述

<div class="quote">
<!--l. 8--><p class="noindent" >Collusion is when firms use history-dependent strategies to sustain</p></div>

答案2

我看到了 Andrew 的回复,与我问的要求类似,链接是我们能否简化 tex4ht 中 CFG 文件中的 \Configure 编码感谢所有尝试过的人……

相关内容