西班牙语 Babel 导致句子开头的重音符号拉伸单元格高度

西班牙语 Babel 导致句子开头的重音符号拉伸单元格高度

当。。。的时候第一的表格单元格中句子的字母带有重音,单元格高度被拉伸,看起来很奇怪。这种情况只发生在我使用 Babel 包(带有西班牙语)时,所以我认为这可能是原因。

例子:

\documentclass[11pt]{article}

\usepackage[utf8]{inputenc}
\usepackage[spanish]{babel}

\begin{document}
\begin{table}
\begin{tabular}{|p{1cm}|}
        \hline
        AÁ  \\
        \hline
        ÁA \\
        \hline
    \end{tabular}
\end{table}
\end{document}

生成:

表格单元格高度拉伸

如果我删除\usepackage[spanish]{babel}或替换p{1cm}两个l单元格,则它们的高度相同。

答案1

这绝对是 中的一个错误spanish.ldf。你可以用补丁修复它:

\documentclass[11pt]{article}

\usepackage[utf8]{inputenc}
\usepackage[spanish]{babel}

\usepackage{etoolbox}
\makeatletter
\pretocmd{\es@accent}{\leavevmode}{}{}
\makeatother

\begin{document}

\begin{table}
\begin{tabular}{|p{1cm}|}
        \hline
        AÁ  \\
        \hline
        ÁA \\
        \hline
    \end{tabular}
\end{table}
\end{document}

在此处输入图片描述

然而,排版西班牙语的最佳方法是加载

\usepackage[T1]{fontenc}

问题就会自动消失:

\documentclass[11pt]{article}

\usepackage[T1]{fontenc}    
\usepackage[utf8]{inputenc}
\usepackage[spanish]{babel}

\begin{document}

\begin{table}
\begin{tabular}{|p{1cm}|}
        \hline
        AÁ  \\
        \hline
        ÁA \\
        \hline
    \end{tabular}
\end{table}
\end{document}

(感谢哈维尔·贝佐斯对此的评论;以及修复了错误。)

相关内容