`fontspec` 更改 itemize 的缩进

`fontspec` 更改 itemize 的缩进

当我添加fontspec包时,环境中的项目itemize会得到额外的缩进。您可以在以下示例中找到代码,它主要来自此问题

\documentclass{scrreprt}
\usepackage{blindtext, enumitem, fontspec}

\newcommand{\myicon}[1]{%
    \smash{%
        \raisebox{\dimexpr0.5\baselineskip-\height}{#1}%
    }
}

\setlist{nosep}

\begin{document}

\blindtext
\begin{itemize}[labelindent=4cm, leftmargin=*]
\item[\myicon{\rule{4cm}{4cm}}] \blindtext
\end{itemize}
\blindtext

\end{document}

在此处输入图片描述

正方形rule与文本不对齐。

当我移除fontspec包装时,缩进是正确的: 在此处输入图片描述

如何使用“fontspec”包保持正确的缩进?

答案1

问题可能在于 em 的值不同;但是您设置的方式itemize是错误的:

\documentclass{scrreprt}
\usepackage{lipsum, enumitem,adjustbox}
\usepackage{fontspec}

\newcommand{\myicon}[1]{%
  \adjustbox{valign=t,set depth=0pt}{#1}%
}

\setlist{nosep}

\begin{document}

\lipsum[1]
\begin{itemize}[labelindent=-4cm, leftmargin=\dimexpr4cm+\labelsep]
\item[\myicon{\rule{4cm}{4cm}}] \lipsum[1]
\end{itemize}
\lipsum[1]

\end{document}

我使用它\adjustbox,因为它比较容易。

有或没有,输出fontspec都是一样的。

在此处输入图片描述

相关内容