为什么文本重叠?

为什么文本重叠?

可能不太容易看出来,但错误肯定存在——看看“Nordamerikas”中的“r”:

在此处输入图片描述

我该如何补救?这是在对要打印的内容进行最终检查时引起我注意的,因此我更希望找到一种解决方案,让所有内容保持原样,当然,错误除外...

MWE(请使用 XeLaTeX 编译:

\documentclass{memoir}

\usepackage{Baskervaldx}
\usepackage[T1]{fontenc}
\usepackage{microtype}

\usepackage{color,soul}

\begin{document}

Boreali-Americana {[}\hl{\emph{Nordamerikas flora}}{]}

\end{document}

答案1

使用 Marijn 的建议,这个 MWE 应该可以完成这项工作:

\documentclass{memoir}

\usepackage{Baskervaldx}
\usepackage[T1]{fontenc}
%\usepackage[protrusion=true,expansion=true]{microtype}

\usepackage{color,soulpos}

\ulposdef{\myhl}{%
    \mbox{%
        \color{yellow}%
        \rule[-.8ex]{\ulwidth}{11pt}}}

\begin{document}
    
    Boreali-Americana {[}\hl{\emph{Nordamerikas flora}}{]}
    
    Boreali-Americana {[}\myhl{\emph{Nordamerikas flora}}{]}
    
\end{document}

使用 soulpos

但是,正如您在问题中所说,您正在使用 进行编译XeTeX,更未来化的方法是将您的序言转换为在 下使用LuaLaTeX(正如 daleif 在评论中提到的那样)。将提供的 MWE 转换为LuaLaTeX看起来如下:

\documentclass{memoir}

\usepackage{fontspec}

\setmainfont{Baskervaldx}[
    Extension = .otf,
    UprightFont = *-Reg,
    ItalicFont = *-Ita,
    BoldFont = *-Bol,
    BoldItalicFont = *-BolIta]

\usepackage{luacolor} % required by lua-ul (loads xcolor)
\usepackage{lua-ul}

\begin{document}
    
    Boreali-Americana [\highLight[yellow]{\emph{Nordamerikas flora}}]
    
\end{document}

每个不错的 TeX 编辑器都有一个search and replace选项,可用于将 更改{]}\hl[\highLight和 将 更改{]}]。因此,我想这不会对您的文档造成很大影响。

相关内容