espaçamento entre linhas quebrado por \begin{inglês}

espaçamento entre linhas quebrado por \begin{inglês}

Estou tentando produzir uma página A4 para nossas portas. Eu usei LuaLaTeX. No espírito de exploração, tentei usar \begin{czech}o \begin{english}pacote polyglossia. O MWE é este:

\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}

O documento resultante fica assim:

resultado

Observe como o espaçamento entre linhas é diferente para a parte da mensagem em inglês. Comentar as seleções de idioma poliglossia corrige o resultado para mim.

Por que está usando a \begin{english}quebra do espaçamento entre linhas e como posso evitá-lo/corrigir?

ATUALIZAR

Parece que 1emnão é aceito o formato do tamanho da \fontsizemacro. O uso 1.8cmfunciona e corrige o problema.

Responder1

Conforme mencionado nos comentários, o tamanho da fonte é o culpado aqui. Veja abaixo a alteração proposta. Adicionei um \vspace{1em} para criar mais distância entre o sublinhado e a linha de separação e antes da parte em inglês. Abandone qualquer um deles se for conveniente para você.

\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}

Responder2

Você tem vários erros no seu código de exemplo.

  1. Você nunca deve definir o baselineskip menor que o tamanho da fonte para a composição de um parágrafo, ou o espaçamento entre as linhas será irregular.

  2. Você deve definir o tamanho da fonte em todo o centerambiente.

  3. Antes e depois \hruleé necessário algum espaço vertical.

  4. Você nunca deve usar a minimalclasse.

Aqui está uma versão fixa, você pode querer ajustar o baselineskip.

\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}

Eu removi \textscporque as fontes Latin Modern não têm versalete em negrito.

insira a descrição da imagem aqui

informação relacionada