
예제 환경을 작성하는 데 도움이 필요합니다. 나는 단지 내 도서관에 있는 오래된 책에서 가져온 아래 그림처럼 보이길 원합니다.
이것이 내가 한 일입니다.
\newtheorem{exem}{EXAMPLE}
\newenvironment{ex}{\parshape=3
0\textwidth \textwidth
0.25\textwidth 0.74\textwidth
0pt \textwidth \begin{exem} \rm \hspace{0.2cm}}{\end{exem}}
\begin{document}
\begin{ex}
Text
\end{ex}
\end{document}
그러나 정의된 환경에서 텍스트가 매우 길면 이 코드는 실패합니다. 그런 다음 오른쪽 여백에 문제가 발생하기 시작합니다. 나는 그것을 해결하는 방법을 모른다. 해당 환경을 정의하는 데 도움을 주실 수 있나요?
답변1
example
다음은 다음을 사용하여 단락 정렬/모양을 설정하는 환경 입니다 \parshape
.
\documentclass{article}
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\newcounter{example}
\newcommand{\examplename}{\textsc{Example}}
\makeatletter
\newenvironment{example}
{\refstepcounter{example}% Step example counter
\sbox\@tempboxa{\examplename~\theexample.~}% Store environment title
% Set paragraph alignment
\parshape 3 \wd\@tempboxa \dimexpr\linewidth-\wd\@tempboxa % Line 1
\wd\@tempboxa \dimexpr\linewidth-\wd\@tempboxa % Line 2
0pt \linewidth% Line 3+
\noindent% No indent
\leavevmode% Start paragraph
\llap{\usebox\@tempboxa}% Insert environment title
\ignorespaces}% Remove spaces
{\par}
\begin{document}
\lipsum[1]
\begin{example}
\lipsum[2]
\end{example}
\lipsum[3]
\begin{example}
Some example content
\end{example}
\begin{example}
Some more example content
\end{example}
\lipsum[4]
\end{document}