TeX4ebook 错误地处理重音字符

TeX4ebook 错误地处理重音字符

我正在尝试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。变音符号可以。

这是 Calibre 查看器中 epub 文件的屏幕截图。

遵循建议关于这个问题,我将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

我正在使用TeXLiveUbuntu 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在这种情况下,您不需要该选项。

无论哪种方式,它都应该产生这样的结果:

在此处输入图片描述

相关内容