行距由 \begin{english} 分隔

行距由 \begin{english} 分隔

我正在尝试为我们的门制作一张 A4 页面。我使用了 LuaLaTeX。本着探索的精神,我尝试使用polyglossia 包中的\begin{czech}\begin{english}。MWE 是这样的:

\documentclass[12pt,a4paper,landscape,oneside]{minimal}
\usepackage[margin=2.5cm]{geometry}
\usepackage{fontspec}
\usepackage{polyglossia}

\setdefaultlanguage{czech}
\setotherlanguage{english}

\begin{document}
\begin{center}

\begin{czech}
\fontsize{1.5cm}{1em}\selectfont
\textsc{Až projdete, \textbf{otočte} se a ujistěte se, že jsou \textbf{dveře \underline{úplně zavřené}}.} \\
\end{czech}
\hrule
\begin{english}
\fontsize{1.5cm}{1em}\selectfont
\textsc{After you walk through, \textbf{turn around} and make sure the \textbf{door is \underline{completely closed}}.}
\end{english}

\end{center}
\end{document}

生成的文档如下所示:

结果

注意英文消息部分的行距不同。注释掉多语言选项可以修复这个问题。

为什么要使用\begin{english}断行间距以及如何避免/修复它?

更新

看来宏1em的大小格式不可接受\fontsize。使用1.8cm有效并修复了该问题。

答案1

正如评论中提到的,字体大小是罪魁祸首。请参阅下面的建议更改。我添加了 \vspace{1em} 以在下划线和分隔线之间以及英语部分之前创建更多距离。如果适合您,请删除其中任何一个。

\documentclass[12pt,a4paper,landscape,oneside]{minimal}
\usepackage[margin=2.5cm]{geometry}
\usepackage{fontspec}
\usepackage{polyglossia}

\setdefaultlanguage{czech}
\setotherlanguage{english}

\begin{document}
\begin{center}

\begin{czech}
\fontsize{20mm}{24mm}\selectfont
\textsc{Až projdete, \textbf{otočte} se a ujistěte se, že jsou \textbf{dveře \underline{úplně zavřené}}.} \\
\end{czech}
\vspace{20mm}
\hrule
\vspace{1em}
\begin{english}
\fontsize{20mm}{24mm}\selectfont
\textsc{After you walk through, \textbf{turn around} and make sure the \textbf{door is \underline{completely closed}}.}
\end{english}

\end{center}
\end{document}

答案2

您的示例代码中存在多处错误。

  1. 您永远不应该将 baselineskip 设置得小于排版段落的字体大小,否则行距会不均匀。

  2. 您应该在整个环境中设置字体大小center

  3. 前后都\hrule需要一些垂直空间。

  4. 你永远不应该使用该minimal课程。

这是一个修复版本,您可能需要调整基线跳过。

\documentclass[12pt,a4paper,landscape,oneside]{article}
\usepackage[margin=2.5cm]{geometry}
\usepackage{fontspec}
\usepackage{polyglossia}
\usepackage{fix-cm} % for avoiding spurious error messages

\setdefaultlanguage{czech}
\setotherlanguage{english}

\begin{document}
\pagestyle{empty}

\begin{center}
\fontsize{1.5cm}{1.8cm}\selectfont

\begin{czech}
Až projdete, \textbf{otočte} se a ujistěte se,
že jsou \textbf{dveře \underline{úplně zavřené}}.\\
\end{czech}

\bigskip
\hrule
\bigskip

\begin{english}
After you walk through, \textbf{turn around} and make
sure the \textbf{door is \underline{completely closed}}.
\end{english}

\end{center}
\end{document}

我删除了它,\textsc因为拉丁现代字体没有粗体小写字母。

在此处输入图片描述

相关内容