
mdframed
원하는 설정을 얻는 데 매우 가까워졌습니다 .
\documentclass[a4paper,10pt]{book}
\usepackage[paper=a4paper,twoside=true,lmargin=4cm,
rmargin=4cm,bindingoffset=0cm]{geometry}
\usepackage{mdframed}
\begin{document}
\noindent Surrounding text.
\begin{mdframed}
\begin{tabbing}
some great \=code\\
\>next line
\end{tabbing}
\end{mdframed}
\noindent Surrounding text.
\end{document}
두 가지 질문:
mdframed
환경 내에서 글꼴 크기를 어떻게 설정합니까\small
?매번
mdframed
및 환경을 모두 시작하고 종료할 필요가 없도록 이것을 재사용 가능한 환경으로 어떻게 바꿀 수 있습니까 ?tabbing
답변1
추가 패키지가 없는 또 다른 접근 방식은 새로운 환경을 정의하는 것입니다. 다음 예에서 환경은 myenv
사용자가 원하는 작업을 수행하고 옵션을 전달하는 선택적 인수를 갖습니다 mdframed
.
\documentclass[a4paper,10pt]{book}
\usepackage[framemethod=tikz]{mdframed}
\newenvironment{myenv}[1][]
{\begin{mdframed}[font=\small,#1]\begin{tabbing}}
{\end{tabbing}\end{mdframed}}
\begin{document}
\noindent Surrounding text.
\begin{myenv}
some great \=code\\
\>next line
\end{myenv}
\noindent Surrounding text.
\begin{myenv}[backgroundcolor=red!20]
some great \=code\\
\>next line
\end{myenv}
\end{document}
답변2
모든 환경에 \mdfsetup{font=\small}
추가하는 데 사용됩니다 . 환경을 에 포함하려면 다음을 사용할 수 있습니다.\small
mdframed
tabbing
mdframed
xpatch
패키지와 그 \xapptocmd
매크로 \xpretocmd
.
\documentclass[a4paper,10pt]{book}
\usepackage{mdframed}
\mdfsetup{font=\small}
\usepackage{xpatch}
\xapptocmd{\mdframed}{\begin{tabbing}}{}{}
\xpretocmd{\endmdframed}{\end{tabbing}}{}{}
\begin{document}
\noindent Surrounding text.
\begin{mdframed}
some great \=code\\
\>next line
\end{mdframed}
\noindent Surrounding text.
\end{document}
없이 수행하는 대안은 전문을 xpatch
발행 하고 문서 본문의 환경을 사용하는 것입니다. 위의 해결 방법과 달리 개별 환경에 선택적 인수를 추가할 수 없다는 점에 유의하세요.\surroundwithmdframed{tabbing}
tabbing
\documentclass[a4paper,10pt]{book}
\usepackage{mdframed}
\surroundwithmdframed[font=\small]{tabbing}
\begin{document}
\noindent Surrounding text.
\begin{tabbing}
some great \=code\\
\>next line
\end{tabbing}
\noindent Surrounding text.
\end{document}
두 예의 출력은 다음과 같습니다.