Tex4ht 将重音符字母 ` (十六进制 60)更改为左单引号(十六进制 0xE2 0x80 0x98)

Tex4ht 将重音符字母 ` (十六进制 60)更改为左单引号(十六进制 0xE2 0x80 0x98)

我需要帮助解决这个问题,因为我找不到解决办法。这对我来说是个大问题,因为输入文件包含许多重音符我通过点击

Mathematica 图形

但在生成 HTML 时,它们都变为 Unicode 字符'左单引号'

Mathematica 图形

这是一个大问题,因为现在当我将它们从网页复制回应用程序以使用它们时,应用程序会抱怨输入中的语法错误。

这个问题在逐字和普通 latex 文本模式下都会出现。下面是一个 MWE

\documentclass[12pt]{article}
\begin{document}
`123`

\verb|`123`|

\end{document}

之后的htlatex foo.texHTML 是什么样子的

Mathematica 图形

但这些并不是我输入的文件。以下是 HTML 源代码

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"  
  "http://www.w3.org/TR/html4/loose.dtd">  
<html > 
<head><title></title> 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
<meta name="generator" content="TeX4ht (http://www.tug.org/tex4ht/)"> 
<meta name="originator" content="TeX4ht (http://www.tug.org/tex4ht/)"> 
<!-- html --> 
<meta name="src" content="foo.tex"> 
<meta name="date" content="2015-01-15 19:02:00"> 
<link rel="stylesheet" type="text/css" href="foo.css"> 
</head><body 
>
<!--l. 3--><p class="noindent" >&#8216;123&#8216;
<!--l. 5--><p class="indent" >   <span class="obeylines-h"><span class="verb"><span 
class="cmtt-12">&#8216;123&#8216;</span></span></span>

</body></html> 

我在 Linux 上使用 texlive 2014。最近更新。以下是上述运行的文件列表

LaTeX2e <2014/05/01>
Babel <3.9l> and hyphenation patterns for 79 languages loaded.
(/usr/local/texlive/2014/texmf-dist/tex/latex/base/article.cls
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class
(/usr/local/texlive/2014/texmf-dist/tex/latex/base/size12.clo)) (./foo.aux)
[1{/usr/local/texlive/2014/texmf-var/fonts/map/pdftex/updmap/pdftex.map}]
(./foo.aux)

 *File List*
 article.cls    2014/09/29 v1.4h Standard LaTeX document class
  size12.clo    2014/09/29 v1.4h Standard LaTeX file (size option)
 ***********

 )</usr/local/texlive/2014/texmf-dist/fonts/type1/public/amsfonts/cm/cmr12.pfb>
</usr/local/texlive/2014/texmf-dist/fonts/type1/public/amsfonts/cm/cmtt12.pfb>
Output written on foo.pdf (1 page, 11730 bytes).
Transcript written on foo.log.

答案1

这是默认行为,即使使用 ,您也会得到相同的结果pdflatex。您可以使用upquote包重新定义 grave 和 upright-quote 以产生正确的字形:

\documentclass[12pt]{article}
\usepackage{upquote}
\begin{document}
`123`

\verb|`123`|
\end{document}

结果:

<!--l. 6--><p class="noindent" >‘123‘
</p><!--l. 8--><p class="indent" >   <span class="obeylines-h"><span class="verb"><span 
class="cmtt-12">`123`</span></span></span> </p> 

相关内容