我正在尝试TeX4ebook
以下最小LaTeX
文件:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[spanish]{babel}
\usepackage{csquotes}
\title{Título}
\author{Autor}
\date{Fecha}
\begin{document}
\maketitle
\textquote{¡Hola, mundo!}
áéíóúÁÉÍÓÚüÜñÑ.
\end{document}
重音字符在 epub 文件中显示为 á´aé´eí´ıó´oú´uÁ´AÉ´EÍ´IÓ´OÚ´UüÜñ˜nјN。变音符号可以。
遵循建议关于这个问题,我将tex4ebook
使用以下选项进行呼叫:
tex4ebook -t tex4ebook-test-spanish.tex "html5,charset=utf-8" " -cunihtf -utf8"
来自的所有消息tex4ebook
似乎都很好:
[STATUS] tex4ebook: Conversion started
[STATUS] tex4ebook: Input file: tex4ebook-test-spanish.tex
HTML Tidy for Linux version 5.6.0
[STATUS] tex4ebook: Conversion finished
我正在使用TeXLive
Ubuntu 20.04 自带的版本。
答案1
您绝对不需要提供"html5,charset=utf-8" " -cunihtf -utf8"
,tex4ebook
因为它默认创建 UTF-8 编码的文档。该html5
选项甚至可能会导致问题,因为 Epub 2 需要 XHTML 文档,而不是 HTML 5。不过在大多数情况下这不应该成为问题。
看来字符分解是由 Babel 引起的。您有两种选择:
- 使用 LuaLaTeX 进行编译
- 使用对 Fontenc 包的显式调用
对您来说最简单的方法应该是使用 LuaLaTeX。尝试将选项添加-l
到您的tex4ebook
调用中:
tex4ebook -l -t tex4ebook-test-spanish.tex
如果这对您的实际文档不起作用,您可以添加 Fontenc 包:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[spanish]{babel}
\usepackage[T1]{fontenc}
\usepackage{csquotes}
\title{Título}
\author{Autor}
\date{Fecha}
\begin{document}
\maketitle
\textquote{¡Hola, mundo!}
áéíóúÁÉÍÓÚüÜñÑ.
\end{document}
-l
在这种情况下,您不需要该选项。
无论哪种方式,它都应该产生这样的结果: