在定义内枚举

在定义内枚举

我有一个用于数学定义的宏,它在“Definition”一词后添加了换行符,除了当我以枚举开始定义时,它工作得很好。在这种情况下有没有办法添加换行符?

\documentclass[12pt,a4paper]{article}

\usepackage[fleqn]{amsmath}
\usepackage{amsthm}
\usepackage{enumitem}

\makeatletter
\newtheoremstyle{TheoStyle}
  {}%         Space above, empty = `usual value'
  {}%         Space below
  {\itshape}% Body font
  {}%         Indent amount (empty = no indent, \parindent = para indent)
  {\bfseries}% Thm head font
  {}%        Punctuation after thm head
  {\newline}% Space after thm head: \newline = linebreak
  {}%         Thm head spec
  \makeatother
\theoremstyle{TheoStyle}
\theoremstyle{TheoStyle}

\newtheorem*{defn*}{Definition}

\begin{document}
  \begin{defn*}
      A new definition
  \end{defn*}

  \begin{defn*}
    \begin{enumerate}[label=(\roman*)]
      \item Item 1
      \item Item 2
    \end{enumerate}
  \end{defn*}
\end{document}

答案1

您可以使用\mbox{}开始一个段落,然后使用 进行备份\vspace

  \begin{defn*}
    \mbox{}\vspace{\dimexpr-\baselineskip-\topsep}
    \begin{enumerate}[label=(\roman*)]

在此处输入图片描述

\documentclass[12pt,a4paper]{article}

\usepackage[fleqn]{amsmath}
\usepackage{amsthm}
\usepackage{enumitem}

\makeatletter
\newtheoremstyle{TheoStyle}
  {}%         Space above, empty = `usual value'
  {}%         Space below
  {\itshape}% Body font
  {}%         Indent amount (empty = no indent, \parindent = para indent)
  {\bfseries}% Thm head font
  {}%        Punctuation after thm head
  {\newline}% Space after thm head: \newline = linebreak
  {}%         Thm head spec
  \makeatother
\theoremstyle{TheoStyle}
\theoremstyle{TheoStyle}

\newtheorem*{defn*}{Definition}

\begin{document}
  \begin{defn*}
      A new definition
  \end{defn*}

  \begin{defn*}

\mbox{}\vspace{\dimexpr-\baselineskip-\topsep}
\begin{enumerate}[label=(\roman*)]
  \item Item 1
  \item Item 2
\end{enumerate}
\end{defn*}
\end{document}

相关内容