\leftskip、\linewidth 和 minipage

\leftskip、\linewidth 和 minipage

minipage我有一个长度为的环境\linewidth-\parindent(使用包)。当我将它粘贴在它突出于边距calc的地方时。不应该适应这些新尺寸并将小页面保持在边距内吗?\leftskip=\parindent\linewidth

\documentclass{article}
\usepackage{blindtext}
\usepackage{calc}

\newenvironment{env}
    {\hfill\begin{minipage}{\linewidth-\parindent}\bf}
    {\end{minipage}}

\begin{document}

\tiny

\blindtext

\begin{env}
\blindtext
\end{env}

\blindtext

\setlength{\leftskip}{\parindent}

\blindtext

\begin{env}
\blindtext
\end{env}

\end{document}

在此处输入图片描述

编辑:根据 David 的提示,我找到了我需要的东西这个问题(这是重复的吗?):

\newenvironment{env}
    {\list{}{}\item\relax
    \nointerlineskip\leavevmode}
    {\endlist}

list这可以通过(像 LaTeXs 一样)缩进边距quote\nointerlineskip\leavevmode修复缺少项目的问题。

答案1

如果您设置了 TeX 原始寄存器,那么\leftskip就不会重新计算任何内容\linewidth\leftmargin\@totaleftmargin就是为什么 LaTeX 具有列表结构和list环境来将所有这些参数设置为一致的值。

如果您想要缩进区域,请不要设置\leftskip使用quote或类似定义的环境。

切勿直接在乳胶中设置,否则\leftskip您将破坏几乎所有的显示结构(而不​​仅仅是您自己的定义)。

答案2

虽然可能与 OP 的要求不同,但以下只是使用该changepage包实现缩进段落的建议。希望它有所帮助。对环境的使用有更多了解将有助于提供更合适的解决方案。可以参考。

在此处输入图片描述

\documentclass[letterpaper]{article}
\usepackage{lipsum}
\usepackage{changepage}
\begin{document}
\lipsum[1-1]
\begin{adjustwidth*}{0.25\linewidth}{}
\lipsum[1-1]
\begin{equation}
    E=mc^2 \label{eq1}
\end{equation}
    \begin{enumerate}
        \item one \label{item1}
    \end{enumerate}
\end{adjustwidth*}
Reference Equation~\ref{eq1}. Reference Item~\ref{item1}.

\lipsum[1-1]
\end{document}

相关内容