LaTeX のスタイル列挙

LaTeX のスタイル列挙

私はジャーナルを書いており、enumitem列挙リストを書くための標準パッケージを使用しています。現在使用しているリストは次のとおりです。

前文では

\usepackage[shortlabels]{enumitem}

そして文書の中で

\begin{enumerate}[label=\textbf{\arabic*}.]
%code to executed here
\end{enumerate}

しかし、ジャーナルのチームは私にこれを次のように変更するように求めました。

______________________

演習XX

______________________

ここで、XX はカウンターです (例: 1、2、3... など)。これをどうやって行うのか、私にはわかりません。思いつくのは、TIkZ と自分で作成した列挙子を組み合わせることだけです。ただし、これを行うために必要な正しいマクロを思いつくことができません。

何か助けて?

答え1

amsthmあなたの演習はパッケージで定義されているものとよく似ているように思えたので、それを使用しましたamsthm。そのドキュメントを読んでみることをお勧めします。

利点は、スタイルを非常に適切かつ簡単に設定できることですが、欠点は、例ごとに環境が必要になることです。

私が得たものは次のとおりです:

\documentclass[letterpaper,12pt]{article}
\usepackage{amsthm}
\theoremstyle{definition}
\newtheorem{xca}{Exercise}
\newenvironment{myexercise}{%
\par\noindent \rule{4pc}{1pt}\begin{xca}}%
{\end{xca}\noindent\rule{4pc}{1pt}}
\begin{document}
\begin{myexercise}
Test
\end{myexercise}
\end{document}

結果は次のようになります:

ここに画像の説明を入力してください

主な行は次のとおりです。

  • \theoremstyle{definition}amsthmの定義済みスタイルを使用する

  • \newtheorem{xca}{Exercise}xca前述のスタイルで新しい定理( )を設定し、タイトルはエクササイズ

  • 次に、ルールを設定する必要がありますが、\rule{4pc}{1pt}私にとっては問題ないと思われるので、次のように設定しました。微調整が必​​要になるかもしれません。

  • は、\par\noindent前の段落を終了し、インデントを残さないという目的に使用されます。noindent環境の後にも が必要です。


編集

OP は少し違うもの、つまり\newlineタイトルの後の が必要なので、新しい を定義しtheoremstyleて適用しました。amsthmドキュメントにすべて説明されています。

\documentclass[letterpaper,12pt]{article}
\usepackage{amsthm}
\newtheoremstyle{mydefinition}%
{3pt}% space above
{5pt}% space below
{}% body font
{}% indent
{\bfseries}% header font
{.} % header punctuation
{\newline}% after header space
{}%
\theoremstyle{mydefinition}
\newtheorem{xca}{Exercse}
\newenvironment{myexercise}{\par\noindent \rule{4pc}{1pt}\begin{xca}}{\end{xca}\noindent\rule{4pc}{1pt}}
\begin{document}
\begin{myexercise}
Test
\end{myexercise}
\end{document}

結果:

ここに画像の説明を入力してください

注記:そこに「通常の」寸法を配置できることを示すために、上部と下部の分離に関するダミーの例をいくつか示します。

答え2

これは、 を使用した別の可能性ですntheorem。スタイルにパッチを適用してスタイルbreakを定義しruled、 を使用したちょっとした工夫を加えましたmicrotype

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{ntheorem}
\usepackage{microtype}
\usepackage{fourier, cabin}

\makeatletter
\newtheoremstyle{ruled}%
  {\hrule\qquad\item[[\indent\rlap{\vbox{\hbox{\hskip\labelsep \theorem@headerfont
          ##1\ ##2\theorem@separator}\hbox{\strut}}}] \leavevmode\vspace*{-1.3ex}\hrule\vspace{2ex}}%
  {\hrule\item[\indent\rlap{\vbox{\hbox{\hskip\labelsep \theorem@headerfont
          ##1\ ##2\ (##3)\theorem@separator}\hbox{\strut}}}] \leavevmode\vspace*{-1.3ex}\hrule\vspace{2ex}}
\makeatother
\theoremstyle{ruled}%
\theoremheaderfont{\lsstyle\sffamily\scshape}
\theorembodyfont{\normalfont}
\newtheorem{exercise}{Exercise}

\begin{document}

\begin{exercise}[An exciting exercise]
 Prove that equality is an equivalence relation.
\end{exercise}

\end{document} 

ここに画像の説明を入力してください

関連情報