Monday, July 27, 2015

Example Environment ใน LaTeX

อยากได้ Example แบบมีตัวเลขให้ตามบทแบบนี้


ซึ่งพอไปค้นหาดูในคำสั่ง LaTeX แล้วก็ไม่เจอ อันที่ใกล้และง่ายที่สุดก็อาจจะใช้คำสั่ง

\newtheorem{example}{Example}[chapter]

ในส่วนของ preamble และพอจะใช้งานจริงก็จะต้องใช้

\begin{example}
...
\end{example}

แต่ก็จะพบว่าตัวอักษรจะเป็นตัวเอียงทั้งหมด ตามรูปแบบปกติของ theorem

ถ้าอยากให้เป็นตัวอักษรปกติ ก็จะต้องใช้ package "amsthm" ดังนี้ในส่วนของ preamble

\usepackage{amsthm}

\theoremstyle{definition}
\newtheorem{example}{Example}[chapter]

อย่างไรก็ตาม ผมอยากได้เส้นขีดแสดงว่า Example นี้สิ้นสุดแล้ว ซึ่งไม่รู้จะทำอย่างไรใน package ข้างต้น

เลยมาเลือกวิธีใหม่ โดยการกำหนด Environment ใหม่ซะเอง ซึ่งดัดแปลงมาจากหลายๆเว็บ (ของเค้าซับซ้อน ผมไม่เข้าใจ T_T) ได้แบบนี้ครับ วางโค้ดไว้ที่ส่วนของ preamble เหมือนเดิม

%=== example environment===
\newcounter{example}[chapter]
\renewcommand{\theexample}{\thechapter.\arabic{example}}
\newenvironment{example}{
 \refstepcounter{example}
 \noindent \textbf{Example~\theexample}
}
{
 \begin{center}
  ******************* 
 \end{center}
}
%==========================

เวลาใช้งานจริงก็ใช้เหมือนเดิมครับ คือ
\begin{example}
 The program xyz below shows how to create an animation.
 
 My program here ...
\end{example}
ลองทดสอบและปรับคำสั่งให้ได้รูปแบบตามใจชอบเลยครับ

อ้างอิง
https://en.wikibooks.org/wiki/LaTeX/Theorems