inputenc 问题

inputenc 问题

我在 Ubuntu 上使用 Kile 创建了一个 TeX。但是现在我在 Windows 10 上使用 TeXnicCenter。当我尝试编译同一个 TeX 文件时,我得到了大约 80 个错误。所有错误都与编码有关,即“Package inputenc 错误:Unicode char A\expandafter (U+4F1)。所以我试图找到一个解决方案,我发现使用

\inputencoding{latin2}
\usepackage[utf8x]{inputenc}
\usepackage[T1]{fontenc}

文档可以编译(删除上述任何命令,编译器都会提示错误)。但是,它看起来很丑。

在此处输入图片描述

请注意西班牙口音的问题以及奇怪的“d”和“u”使得文档看起来不正式。

由于文档很长,我将仅包含其中的一部分:

\documentclass[a4paper,12pt,spanish]{article}
\usepackage[utf8x]{inputenc}
\usepackage[spanish,activeacute]{babel}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage[T1]{fontenc}
\inputencoding{latin2}
\usepackage{float}
\usepackage{graphicx}
\usepackage{listings}
\usepackage{color}
\usepackage{geometry}

\decimalpoint



\begin{document}




\begin{titlepage}

\begin{center}
\vspace*{-1in}
\begin{figure}[htb]
\begin{center}
\includegraphics[width=1cm]{logo}
\end{center}
\end{figure}

Facultad de Ingenier\'ia\\
\vspace*{0.15in}
Departamento de Ingenier\'ia   el\'ectrica \\
\vspace*{0.6in}
\begin{large}
Procesamiento digital de se'nales \\
\end{large}
\vspace*{0.2in}
\begin{Large}
\textbf{Tarea 3} \\
\end{Large}
\vspace*{0.3in}
\begin{large}
Miguel Dur\'an D\'iaz  \\
\end{large}
\vspace*{0.3in}
\rule{80mm}{0.1mm}\\
\vspace*{0.1in}
\begin{large}
Profesor: Jorge Pezoa\\

\end{large}
\end{center}

\end{titlepage}

\tableofcontents

\newpage

\section{Problema 1}

A esta tarea se adjunta el archivo Matlab NoisyPixel.mat. Este archivo contiene los
datos medido en un pixel de una cámara infrarroja que toma 30 datos por segundo de un cuerpo uniforme que
está a una temperatura de 26 $^{\circ}$ C. Las mediciones tomadas son ruidosas y siguen el siguiente el modelo:
$$
y[n] = 26 + N[n]
$$

更新:使用 Notepad++ 打开 TeX 文件时,我注意到该文档是 ANSI 编码的,但我希望它是 utf-8。我该如何解决这个问题?

答案1

已解决:出于某种原因,TeX 文件使用 ANSI 编码(可能是因为操作系统不同)。因此,使用 NotePad++ 打开 TeX 文件并将其转换为 UTF-8 可使文档正常工作。但是我必须重写所有西班牙语口音。

更新:我想要的和 TeX 的编码之间存在冲突。因此,我更改了 TeX 编辑器的选项,使其以 UTF8 编码(它以 ANSI 编码)

答案2

打印的字母 ǍĄ 清楚地表明了 utf8 输入编码。

尝试删除

\inputencoding{latin2}

%从你的源代码中(通过在它前面使用一个符号来注释掉它)。你已经

\usepackage[utf8x]{inputenc}

所以它应该可以工作。

顺便说一句,更标准的选择inputencutf8,所以也尝试一下

\usepackage[utf8]{inputenc}   

相关内容