![为什么标题中的首字母缩略词没有在 HTML 中展开,而是在 PDF 中展开?](https://linux22.com/image/287545/%E4%B8%BA%E4%BB%80%E4%B9%88%E6%A0%87%E9%A2%98%E4%B8%AD%E7%9A%84%E9%A6%96%E5%AD%97%E6%AF%8D%E7%BC%A9%E7%95%A5%E8%AF%8D%E6%B2%A1%E6%9C%89%E5%9C%A8%20HTML%20%E4%B8%AD%E5%B1%95%E5%BC%80%EF%BC%8C%E8%80%8C%E6%98%AF%E5%9C%A8%20PDF%20%E4%B8%AD%E5%B1%95%E5%BC%80%EF%BC%9F.png)
我正在使用 acronym 包和 htlatex 转换为 HTML。我发现在标题中使用首字母缩略词不会在 HTML 中扩展,即使在 PDF 中也是如此。扩展在常规段落中有效。以下是我的 MWE 来显示问题:
\documentclass{article}
\usepackage{acronym}
\title{My Awesome \acp{AC}}
\begin{document}
\maketitle % this is where the acronym should get expanded in HTML
\acresetall % reset any acronyms used to force expansion again
Expanding \acp{AC} works in regular paragraphs.
\section{Acronyms}
\begin{acronym}
\acro{AC}{Acronym}
\end{acronym}
\end{document}
我编译
pdflatex <FILE>
pdflatex <FILE>
htlatex <FILE>
并得到以下 PDF 输出
而生成的 HTML 只显示标题标签中的首字母缩略词(未展开):
...
<h2 class="titleHead">My Awesome ACs</h2>
...
<!--l. 11--><p class="indent" > Expanding <a
id="x1-1doc"></a>Acronyms (ACs) works in regular paragraphs.
...
我希望 HTML 使用与 PDF 相同的文本“首字母缩略词 (ACs)”而不是“ACs”。
答案1
似乎\acp
命令仅在第一次使用时才使用完整的首字母缩写文本。在中使用它时\title
,实际上是在两个地方使用它 - <title>
html 标题中的元素,文档正文中打印的标题是第二次使用,使用缩写形式:
...
<html xmlns="http://www.w3.org/1999/xhtml"
>
<head><title>My Awesome Acronyms (ACs)</title>
...
</head><body>
<div class="maketitle">
<h2 class="titleHead">My Awesome ACs</h2>
...
我认为您可以做的最简单的事情就是不要在标题中使用首字母缩略词,但您在问题中使用的解决方案似乎也有效。
编辑:
您还可以提供TITLE+
钩子的配置,它为元素提供文本<title>
。此钩子可以在自定义配置文件中提供,mycfg.cfg
例如:
\Preamble{xhtml}
\Configure{TITLE+}{My Awesome Acronyms}
\begin{document}
\EndPreamble
现在编译你的文档
htlatex <FILE> mycfg
并且缩写应该在标题栏中正确展开