progress 2008/5/26 19:57 page 1 #2 Abstract L A TEX 은체계적인문서를작성할때특히빛을발하는조판프로그래밍언어이다. L A TEX 을사용하기위해서는먼저클래스를지정해주어야하는데, L A TEX 과함께제공되는표준클래스로 article, r

Similar documents
HL A T E X PDF

TeX

제 1 절 복습 \usepackage{ g r a p h i c x }... \ i n c l u d e g r a p h i c s [ width =0.9\ textwidth ] { b e a r. j p g } (a) includegraphics 사용의일반적인유형

이장에서다룰내용 테두리를제어하는스타일시트 외부여백 (Margin) 과내부여백 (Padding) 관련속성 위치관련속성 2

* pb61۲õðÀÚÀ̳ʸ

L A TEX 활용하기 김강수 * 2008 년 11 월 28 일 요약 2008 년 11 월 28 일, 숭실대학교교수학습센터워크숍학습자료. L A TEX 을어느정도알고계신 분을대상으로, TEX 과 L A TEX 의기본사항을상기시키고, 중급활용자가되기위해필요한사항들을 실습

750 1,500 35

수식모드수식의표현법 수학식표현 조남운 조남운 수학식표현

<B3EDB9AEC0DBBCBAB9FD2E687770>

쌍백합23호3

<BFB9BCFAB0E6BFB5C1F6BFF8BCBEC5CD5F BFB9BCFAB0E6BFB520C4C1BCB3C6C FB3BBC1F628C3D6C1BEBBF6BAAFC8AF292E706466>

\shadowbox 예제 Progress * 2007 년 2 월 요약 수학, 물리등이공계열의교재는정리, 증명, 예제, 풀이등이많이들어갑니다. 이것들은장 절에따라정리번호, 예제번호등넘버링이새로초기화되고하나의장 절에서는일련번호를띠게마련이지요. 이렇게일정한패턴을지닌문서를작성

The Asian Journal of TEX, Volume 1, No. 1, April 2007 Article revision 2007/03/02 KTS THE KOREAN TEX SOCIETY SINCE 2007 LATEX Dissection of LATEX Macr

adfasdfasfdasfasfadf

untitled

2015 경제ㆍ재정수첩


Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

LaTeX2e 길라잡이 : 문서작성 시스템

현대적 레이텍 활용 Modern Coding Conventions

문화재이야기part2

현장에서 만난 문화재 이야기 2

연구노트

프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음

PowerPoint 프레젠테이션

아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상

28 THE ASIAN JOURNAL OF TEX [2] ko.tex [5]

할렐루야10월호.ps, page Normalize ( 할 437호 )

I LATEX LATEX

Chapter ...

#7단원 1(252~269)교

01_피부과Part-01



Microsoft PowerPoint Predicates and Quantifiers.ppt

PowerPoint 프레젠테이션

~


Ä¡¿ì_44p °¡À» 89È£

C# Programming Guide - Types


Microsoft PowerPoint - 26.pptx

Microsoft PowerPoint - chap04-연산자.pptx

À¯¾ÆâÀÇ°úÇмÒÃ¥ÀÚ.PDF


º´¹«Ã»Ã¥-»ç³ªÀÌ·Î

01....b

¾Ë·¹¸£±âÁöħ¼�1-ÃÖÁ¾

2007백서-001-특집

00목차

(291)본문7

chap 5: Trees

2학년 1학기 1,2단원 1 차례 세 자리의 수 1-1 왜 몇 백을 배워야 하나요? 1-2 세 자리 수의 자릿값 알아보기와 크기 비교하기 1-3 뛰어 세기와 수 배열표에서 규칙 찾기 1단원 기본 평가 단원 창의 서술 논술형 평가 22 1단원 심화 수


2014학년도 수시 면접 문항

훈련교재 목록-내지-0520.indd

PowerPoint Presentation

歯MW-1000AP_Manual_Kor_HJS.PDF

2 C freetype ttf2tfm 18 D ttf.sh 19 E FD 20

팁! 출판을 고려한 텍 문서편집

untitled

많고 전화도 많다. 몸은 1,000년 전보다 진화한 것이 없는데, 처리할 일과 정보는 폭발적으로 늘어나고 있다. 영어가 필요 없는 분야에서까지도 취 업 시험에서 영어 성적을 요구하니, 우리를 필요 이상으로 바빠지게 하는 요인이다. 문자 생활도 우리를 바빠지게 할 수 있

Microsoft PowerPoint - chap03-변수와데이터형.pptx

4-Ç×°ø¿ìÁÖÀ̾߱â¨ç(30-39)

이 장에서 사용되는 MATLAB 명령어들은 비교적 복잡하므로 MATLAB 창에서 명령어를 직접 입력하지 않고 확장자가 m 인 text 파일을 작성하여 실행을 한다

PowerPoint Presentation

PowerPoint Presentation

¼øâÁö¿ª°úÇÐÀÚ¿ø

47.._....

_....

10월추천dvd

77

1 01 [ ] [ ] plus 002



새로운 지점에서 단이 시작하는 경우 기둥코로 시작하라고 표시합니다. 기둥코(standing stitch)로 시작하는 방법은 YouTube 에서 찾아볼 수 있습니다. 특수 용어 팝콘뜨기: 1 코에 한길긴뜨기 5 코, 바늘을 빼고 첫번째 한길긴뜨기코의 앞에서 바늘을 넣은

JUNIT 실습및발표

hwp

Week8-Extra

Part Part

PART

£01¦4Àå-2

½ºÅ丮ÅÚ¸µ3_³»Áö

272*406OSAKAÃÖÁ¾-¼öÁ¤b64ٽÚ

Microsoft PowerPoint - chap05-제어문.pptx

제 53 회서울특별시과학전람회 예선대회작품설명서 본선대회작품설명서 쓰나미의피해를최소화시키는건물과 건물배치에대한탐구 출품번호 S-504 출품분야학생부출품부문지구과학 학교명학년 ( 직위 ) 성명

LaTeX. [width=1em]Rlogo.jpg Sublime Text. ..

ÀüÀÚÇö¹Ì°æ-Áß±Þ

(Microsoft PowerPoint - Ch19_NumAnalysis.ppt [\310\243\310\257 \270\360\265\345])

특징 찾아보기 열쇠 없이 문을 열 수 있어요! 비밀번호 및 RF카드로도 문을 열 수 있습니다. 또한 비밀번호가 외부인에게 알려질 위험에 대비, 통제번호까지 입력해 둘 수 있어 더욱 안심하고 사용할 수 있습니다. 나만의 비밀번호 및 RF카드를 가질 수 있어요! 다수의 가

E (2005).hwp

RVC Robot Vaccum Cleaner

statistics

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

Index

View Licenses and Services (customer)

chap 5: Trees

PowerPoint Presentation

완벽한개념정립 _ 행렬의참, 거짓 수학전문가 NAMU 선생 1. 행렬의참, 거짓개념정리 1. 교환법칙과관련한내용, 는항상성립하지만 는항상성립하지는않는다. < 참인명제 > (1),, (2) ( ) 인경우에는 가성립한다.,,, (3) 다음과같은관계식을만족하는두행렬 A,B에

*표1234(1월호)

Transcription:

progress 2008/5/26 19:57 page 1 #1 장 절명령, 면주, 카운터다루기 이주호 1 2008 년 5 월 24 일 1 LaTeX.Juho@gmail.com

progress 2008/5/26 19:57 page 1 #2 Abstract L A TEX 은체계적인문서를작성할때특히빛을발하는조판프로그래밍언어이다. L A TEX 을사용하기위해서는먼저클래스를지정해주어야하는데, L A TEX 과함께제공되는표준클래스로 article, report, book 등이있다. 1 여기서는길지않은문서를작성하는데유용한 article 클래스를중심으로, 체계적문서레이아웃을지탱하는여러요소가운데장 절명령, 면주, 카운터에초점을맞추고이를다루는몇가지방법을설명한다. 1 표준클래스에는 letter, minimal 도있다.

progress 2008/5/26 19:57 page 2 #3 2 CONTENTS Contents 1 장과절다루기 3 1.1 article 클래스를직접수정하는법............... 4 2 우리속담 5 2.1 sectsty 패키지........................... 6 2.2 titlesec 패키지.......................... 6 2.3 article 클래스에서장명령을만들수있을까?........ 6 3 페이지스타일다루기 13 3.1 article 클래스직접수정하기.................. 13 3.2 fancyhdr 패키지이용하기..................... 14 4 카운터설정하기 16 5 판면세로길이를행수로정하는법 18 6 pdf 다루기 24 6.1 pdfpages 패키지.......................... 24 6.1.1 두개의 PDF 파일에서각각한페이지씩교차하여합 치기............................. 24 7 찾아보기만들기 25

progress 2008/5/26 19:57 page 3 #4 3 1 장과절다루기 국립국어원에펴낸 표준국어대사전 에표제어로등장하는장과절의정의 는다음과같다. 장 ( 章 ) 명 1. 글의내용을체계적으로나누는구분의하나. 가름. 글의체계에서보통장은절보다크고, 편보다작은단위이다. 2. ( 수량을나타내는말뒤에쓰여 ) 글의내용을구분한것을세는단위. 책의내용은모두다섯장으로구성되어있다. 3. 예산 결산에서의구분의하나. 장아래에관, 항, 목따위가있다. 4. 문 중국에서, 천자 ( 天子 ) 에게바치던한문문체의하나. 절 ( 節 ) 명 1. 글의내용을여러단락으로서술할때의한단락. 창세기 1 장 1 절. 2. = 절개 02( 節槪 ) 1. 3. = 절개 02 2. 4. 경 예산편성에서나누는분류의하나. 목 ( 目 ) 의아래이다. 현재는잘쓰지않는항목이다. 5. 물 = 마디 01 5. 6. 민 = 절괘 ( 節卦 ). 7. 민 풍수지리에서, 용맥 ( 龍脈 ) 을이루고있는여러산등성이. 8. 어 주어와술어를갖추었으나독립하여쓰이지못하고다른문장의한성분으로쓰이는단위. 마디 01 6. 9. 음 같은곡조의노래에둘이상의가사를붙일때의한부분. 애국가를 1 절만부르다. 하나의구문, 작은문단, 작은문단이모인큰문단등몇개의덩어리가모여문서의본문을이룬다. 체계적인문서라함은글의전개과정에서그구성방식과논리가질서정연하게이루어진것을말한다. 문서를체 계 적 으로작성하고독자가문서의구조를쉽게파악할수있도록하기위해각덩어리에해당내용을짐작할수있는제목을달수있다. 이제목을 항목 이라한다. 항목은편 ( 또는부 ), 장, 절, 소절,... 등으로나눌수있다. L A TEX 표준클래스에서제공하는장 절명령은 \part, \chapter, \section, \subsection, \paragraph 등이있다. 이를우리말로하면 chapter는장, section은절로부를수있다. 사실 subsection이나 subsubsection 등도절이라할수있다. 2 article 클래스는분량이적은문서를만드는템플릿이므로 \chapter 명령은지원하지않는다. 3 자, 이제바꿔보자. 2 소절, 소소절, 소소소절이라고굳이어색하게부를필요가있을가? 3 \part 는지원한다.

progress 2008/5/26 19:57 page 4 #5 4 1 1.1 장과 절 다루기 article 클래스를 직접 수정하는 법 LATEX의 \section 매크로는 latex.ltx에 정의된 대로 \@startsection의 정 의를 이용한다. \@startsection은 모두 여섯 개의 인자를 취하는 명령어이 며, 그 의미는 다음과 같다. \@startsection{항목의 이름}{수준(level)}{들여쓰기}% {항목 윗부분의 수직 간격}% {항목 아랫부분의 수직 간격}% {항목의 글꼴이나 크기, 정렬방식 등}} 우선 이를 설명하기 전에 article 클래스에 정의된 \section의 정의를 빌어온다. 312 \newcommand\section{\@startsection {section}{1}{\z@}% 313 {-3.5ex \@plus -1ex \@minus -.2ex}% 314 {2.3ex \@plus.2ex}% 315 {\normalfont\large\bfseries}} 위에서 정의된 바에 의하면, 1. section이라는 항목 이름을 주었다. 이는 명령 이름인 \section과 동 일하며, 내부적으로 카운터로 정의된다. 2. 수준을 1로 주었다. 사전에 항목별로 약속된 수준이 있다. \part (book, report) 1 \part (article) 0 \chapter 0 \section 1 \subsection 2 \subsubsection 3 \paragraph... 4... 3. \z@은 latex.ltx에 정의된 값으로 0pt를 의미한다. 따라서 이 \section 항목은 들여쓰기가 되지 않는다. 4. 말 그대로 항목 윗부분과 바로 위 문단 사이의 수직 간격이다. 이를 x 라 하면 x는 (3.5 0.2) x (3.5 + 1) 3.3 x 4.5ex의 값을

progress 2008/5/26 19:57 page 5 #6 1.1 article 클래스를 직접 수정하는 법 5 갖는다. 그런데 3.5에 붙은 마이너스( ) 부호는? 왜 계산할 때 은근 슬쩍 빼먹었을까? 이것은 실제로 마이너스 부호의 의미가 아니다. 절 표제 다음에 처음 시작하는 문단을 들여쓰지 말라 는 의미이다. 만약 article의 정의에서 {3.5ex \@plus -1ex \@minus -.2ex} 와 같이 정의되어 있다면, \section 항목 다음의 첫 문단은 들여쓰기를 하게 된다. 5. {2.3ex \@plus.2ex}는 항목과 항목 다음의 첫 문단 사이의 간격이다. 이 값이 음수라면, 이는 항목 다음 첫 문단을 항목쪽으로 음수 간격 만 큼 올리라는 얘기가 아니다. 음수일 때는 항목이 끝난 다음에 같은 행에 그 간격만큼 띄우고 이어서 쓴다. 6. {\normalfont\large\bfseries}는 항목을 보통 글자 모양에 \Large 크 기로, 그리고 굵게 식자하라는 것이다. 이제 이 문서의 중간에서 항목을 변경해보자.4 @문자가 들어있는 명령을 고 칠 때(\renewcommand는) \makeatletter와 \makeatother 사이에 넣어서 고 쳐야한다. \makeatletter \renewcommand\section{\@startsection {section}{1}{\z@} {-2em \@plus -1em \@minus -.2em}% {1em\@plus.2em}% {\color{cyan}\centering\itshape\sffamily\large}}%가운데, 청색, 이 탤릭, 산세리프, 라아지 \makeatother 사위가 미우면 손바닥이 희다고 나무란다. 2 우리 속담 며느리가 미우면 발 뒤꿈치가 희다고 나무란다. 4 preamble뿐만 아니라 문장 중간에서 항목의 스타일을 변경할 수 있다.

progress 2008/5/26 19:57 page 6 #7 6 2 우리속담 2.1 sectsty 패키지 secsty 패키지는 \chapter나 \section의글꼴과정렬을쉽게바꿀수있도록해준다. 가장극단적인사용은다음과같다. \usepackage{sectsty} %\allsectionsfont{\color{cyan}\centering\itshape\sffamily} \sectionfont{\color{cyan}\sffamily\centering} \sectionfont 외에 \partfont, \chapterfont, \subsectionfont,... 등이있으며, 모든항목의레이아웃을한번에바꾸기위한명령어로 \allsectionsfont 가있다. ex-sectsty.tex 참고. 2.2 titlesec 패키지이패키지는장절명령을좀더쉽게조정할수있게해주는 \titleformat 명령을제공한다. \titleformat 명령은다음과같이인자를가질수있다. \titleformat{command}[shape]{format}{label}{sep}{before}[after] 따로항목번호만장식을할수도있고항번과제목의정렬방식을달리할수도있다. 더욱편리한것은 \titleformat 명령을본문에서몇번이나제한없이바꿔쓸수있다는점이다. ex-titlesec.tex 참고. 2.3 article 클래스에서장명령을만들수있을까? article 클래스는기본적으로 \chapter 명령을지원하지않는다. 이런클래스에 \chapter를새로정의할수있을까? 물론가능하다. 1. 먼저 \chapter를정의해야한다. 2. 그다음이명령이저절로증가하거나사용자가원하는번호값을지닐수있도록카운터로지정해야한다. 3. 물론이카운터는상호참조 (cross reference) 가가능해야한다. 4. 면주 (running heading) 에도저절로들어가야하고차례에도들어갈수있도록 \chaptermark가지정되어야한다.

progress 2008/5/26 19:57 page 7 #8 2.3 article 클래스에서장명령을만들수있을까? 7 5. 아티클클래스의다른항목과마찬가지로별표 (*) 붙은명령을지원하 여야한다. 6.... 울고싶다. art workshop 폴더에서 mychap 패키지를열어보자. 이코드의대부분은 book 에서가져온것이다. 엄청나게복잡하다. \def\@part[#1]#2{% \ifnum \c@secnumdepth >-2\relax \refstepcounter{part}% \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}% \else \addcontentsline{toc}{part}{#1}% \fi \markboth{}{}% {\centering \interlinepenalty \@M \normalfont \ifnum \c@secnumdepth >-2\relax \huge\bfseries \partname\nobreakspace\thepart \par \vskip 20\p@ \fi \Huge \bfseries #2\par}% \@endpart} \def\@spart#1{% {\centering \interlinepenalty \@M \normalfont \Huge \bfseries #1\par}% \@endpart} \def\@endpart{\vfil\newpage \if@twoside \if@openright \null \thispagestyle{empty}% \newpage \fi \fi \if@tempswa \twocolumn \fi}

progress 2008/5/26 19:57 page 8 #9 8 2 우리속담 %\kscntformat{chapter}{\ksthe~}{~\chaptername} \newcommand\chapter{%\if@openright\cleardoublepage\else\clearpage\fi % % 오픈애니, 오픈라이트를 disable 하게만들고 %chapter 는홀짝수쪽구분없이항상새쪽에서시작하도록 \clearpage \thispagestyle{plain}% \global\@topnum\z@ \@afterindentfalse \secdef\@chapter\@schapter} \def\@chapter[#1]#2{%\ifnum \c@secnumdepth >\m@ne % \if@mainmatter \refstepcounter{chapter}% \typeout{\@chapapp\space\thechapter.}% \addcontentsline{toc}{chapter}% {\protect\numberline{\thechapter}#1}% % \else % \addcontentsline{toc}{chapter}{#1}% % \fi % \else % \addcontentsline{toc}{chapter}{#1}% % \fi \chaptermark{#1}% \addtocontents{lof}{\protect\addvspace{10\p@}}% \addtocontents{lot}{\protect\addvspace{10\p@}}% \if@twocolumn \@topnewpage[\@makechapterhead{#2}]% \else \@makechapterhead{#2}% \@afterheading \fi} \def\@makechapterhead#1{% \vspace*{50\p@}% {\parindent \z@ \raggedright \normalfont \ifnum \c@secnumdepth >\m@ne % \if@mainmatter \huge\bfseries \@chapapp\space \thechapter \par\nobreak \vskip 20\p@ \fi % \fi \interlinepenalty\@m \Huge \bfseries #1\par\nobreak \vskip 40\p@ }}

progress 2008/5/26 19:57 page 9 #10 2.3 article 클래스에서장명령을만들수있을까? 9 \def\@schapter#1{\if@twocolumn \@topnewpage[\@makeschapterhead{#1}]% \else \@makeschapterhead{#1}% \@afterheading \fi} \def\@makeschapterhead#1{% \vspace*{50\p@}% {\parindent \z@ \raggedright \normalfont \interlinepenalty\@m \Huge \bfseries #1\par\nobreak \vskip 40\p@ }} \newcommand*\l@chapter[2]{% \ifnum \c@tocdepth >\m@ne \addpenalty{-\@highpenalty}% \vskip 1.0em \@plus\p@ \setlength\@tempdima{1.5em}% \begingroup \parindent \z@ \rightskip \@pnumwidth \parfillskip -\@pnumwidth \leavevmode \large\gsfamily\bfseries \advance\leftskip\@tempdima \hskip -\leftskip #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par \penalty\@highpenalty \endgroup \fi} \newcounter{chapter} \newcommand\@chapapp{\chaptername} % 장제목의글꼴은은궁서로찍어본다. \newcommand\gsfamily{\setadhocfonts{utgs}{utmj}} %http://zoonek.free.fr/latex/latex_samples_chapter/0.html 의 14 번샘플을빌려온다. \def\thickhrulefill{\leavevmode \leaders \hrule height 1ex \hfill \kern \z@} \def\@makechapterhead#1{% %\vspace*{50\p@}% \vspace*{10\p@}% {\parindent \z@ \centering \reset@font \thickhrulefill\quad % \scshape \@chapapp{} \thechapter

progress 2008/5/26 19:57 page 10 #11 10 2 우리속담 \gsfamily \KSTHE\,\thechapter\,\@chapapp{} \quad \thickhrulefill \par\nobreak \vspace*{10\p@}% \interlinepenalty\@m \hrule \vspace*{10\p@}% \huge \bfseries #1\par\nobreak \par \vspace*{10\p@}% \hrule %\vskip 40\p@ \vskip 100\p@ }} \def\@makeschapterhead#1{% %\vspace*{50\p@}% \vspace*{10\p@}% {\parindent \z@ \centering \reset@font \thickhrulefill \par\nobreak \vspace*{10\p@}% \interlinepenalty\@m \hrule \vspace*{10\p@}% \gsfamily \huge \bfseries #1\par\nobreak \par \vspace*{10\p@}% \hrule %\vskip 40\p@ \vskip 100\p@ }} % 절번호가장번호에종속되도록 \RequirePackage{chngcntr} \counterwithin{section}{chapter} %% 찾아보기를차례에넣음 \renewenvironment{theindex} {\if@twocolumn \@restonecolfalse \else \@restonecoltrue \fi \ifx\chpater\undefined

progress 2008/5/26 19:57 page 11 #12 2.3 article 클래스에서 장 명령을 만들 수 있을까? 11 \twocolumn[\section*{\indexname}]% \@mkboth{\makeuppercase\indexname}% {\MakeUppercase\indexname}% \addcontentsline{toc}{section}{찾아보기}% \else \twocolumn[\chapter*{\indexname}]% \@mkboth{\makeuppercase\indexname}% {\MakeUppercase\indexname}% \addcontentsline{toc}{chapter}{찾아보기}% \fi \thispagestyle{myheadings}\parindent\z@ \parskip\z@ \@plus.3\p@\relax \columnseprule \z@ \columnsep 35\p@ \let\item\@idxitem} {\if@restonecol\onecolumn\else\clearpage\fi} %페이지스타일(면주)은 myheadings \def\ps@myheadings{% \let\@oddfoot\@empty% 홀수쪽 하단 면주 비운다 \let\@evenfoot\@empty% 짝수쪽 하단 면주 비운다 \def\@evenhead{\thepage\hfil{\small\sffamily\leftmark}\hfil}% 면주 가 운데, 스모올, 산세리프 \def\@oddhead{\hfil{\small\sffamily\rightmark}\hfil\thepage}% \let\@mkboth\markboth%@gobbletwo \let\sectionmark\@gobble \let\subsectionmark\@gobble \def\chaptermark##1{% \markboth {\MakeUppercase{% \ifnum \c@secnumdepth >\z@ % \thechapter\quad \KSTHE\,\thechapter\,\@chapapp\quad% \fi ##1}}{}}% \def\sectionmark##1{% \markright {% \ifnum \c@secnumdepth >\z@%\@ne \thesection\quad \fi ##1}} } art workshop.tex에서 \usepackage{mychap}을 활성화하면 샘플 문서에 서 장 제목이 살아나는 것을 볼 수 있다. 그러나 예제를 만들면서 느낀 점은 이렇게 복잡한 짓을 과연 아티클에다 할만한 유인이 있겠는가 였다. 그러니

progress 2008/5/26 19:57 page 12 #13 12 2 우리속담 사용자들은 CTAN 에올라온클래스를주로사용하는것이좋으며, 아니면 자신이글을쓰는체계를잘지원해줄수있는클래스를사용하면된다.

progress 2008/5/26 19:57 page 13 #14 13 3 페이지스타일다루기 면주面註 5 명 책에서각면의위나아래또는본문바깥쪽에넣는편 절 장의제목따위를통틀어이르는말. L A TEX 은기본적으로네가지페이지스타일 ( 면주와쪽번호를책의적절 한위치에표기하여독자가찾아보기쉽게하는것 ) 을갖고있다. Table 1: 페이지스타일의종류와모양 page style 어떤모양? plain 판면하단에쪽번호만붙는다. empty 쪽번호와면주, 아무것도붙이지않는다. headings 면주와쪽번호를붙인다. 아티클클래스의경우양면과단면의스타일이다르다. 양면의경우홀수쪽과짝수쪽은펼침면을기준으로판면상단에안쪽면주, 바깥쪽쪽번호를식자하며, 글꼴을기울여 (slanted) 붙인다. myheadings 면주의내용을 \markboth이나 \markright 명령으로지정할수있다. 3.1 article 클래스직접수정하기 이제 article 클래스의 twoside 옵션을가정하고페이지를바꿔보자. \pagestyle{#1} 명령은 \ps@#1 명령을실행하도록 latex.ltx 에정의되어있다. 6151 %%% From File: ltpage.dtx 6152 \def\pagestyle#1{% 6153 \@ifundefined{ps@#1}% 6154 \undefinedpagestyle 6155 {\@nameuse{ps@#1}}} 6156 \def\thispagestyle#1{% 6157 \@ifundefined{ps@#1}% 6158 \undefinedpagestyle 6159 {\global\@specialpagetrue\gdef\@specialstyle{#1}}} 이제 article에정의된 ps@headings의정의를보자. 5 국립국어원표준국어대사전에서찾은것인데, 面柱 라써야맞다.

progress 2008/5/26 19:57 page 14 #15 14 141 3 페이지 스타일 다루기 \if@twoside 142 \def\ps@headings{% 143 \let\@oddfoot\@empty\let\@evenfoot\@empty 144 \def\@evenhead{\thepage\hfil\slshape\leftmark}% 145 \def\@oddhead{{\slshape\rightmark}\hfil\thepage}% 146 \let\@mkboth\markboth 147 \def\sectionmark##1{% 148 \markboth {\MakeUppercase{% 149 \ifnum \c@secnumdepth >\z@ 150 \thesection\quad 151 \fi 152 ##1}}{}}% 153 \def\subsectionmark##1{% 154 \markright {% 155 \ifnum \c@secnumdepth >\@ne 156 \thesubsection\quad 157 \fi 158 ##1}}} \@oddfoot, \@evenfoot, \@oddhead, \@evenhead는 각각 홀수쪽의 하단 면주, 짝수쪽의 하단 면주, 홀수쪽의 상단 면주, 짝수쪽의 상단 면주를 의미한다. 위 에서 보듯이 양쪽의 하단 면주는 \@empty로 비워놓았다. 짝수쪽에는 쪽번호 \thepage를 붙이고 다음 물체가 등장할 때까지 사이를 \hfil로 좌악 늘였 다. 그리고 기울어진(slanted) 모양의 글꼴로 왼쪽 면주(\leftmark)를 붙였다. 홀수쪽은 그 반대이다. 이 코드만 가져와서 고친다면 쉽게 면주를 수정할 수 있다. ex-pagestyle.tex 참고 3.2 fancyhdr 패키지 이용하기 처음 사용할 때는 헷갈리는 패키지다. 예를 들어 LE면 짝수쪽의 왼쪽 면주 이고 RE는 짝수쪽의 오른쪽 면주인데 레프트와 라이트는 꼭 짝수쪽(왼쪽 페 이지)과 홀수쪽(오른쪽 페이지)를 가리키는 것 같다. 다음 예제 하나만 기억 하자. \fancyhead{} % clear all fields \fancyhead[ro,le]{\bfseries 좋은 문서 만들기} \fancyfoot[le,ro]{\thepage}

progress 2008/5/26 19:57 page 15 #16 From Article to My Own Style \fancyfoot[lo,ce]{ktug} \fancyfoot[co,re]{happy TeXing!} \renewcommand{\headrulewidth}{.6pt}% 디폴트는.4pt \renewcommand{\footrulewidth}{.4pt}% 디폴트는 0pt 그리고사용할때는 \pagestyle{fancy} 와같이사용하면된다. 이절이후는이페이지스타일을사용한다. KTUG Happy TeXing! 15

progress 2008/5/26 19:57 page 16 #17 From Article to My Own Style 4 카운터설정하기 카운터는정수이다. L A TEX 표준클래스에서사용되는카운터는다음과같다. 6 part chapter section subsection page equation footnote figure table enumi enumii enumiii 수학교과서에자주등장하는일련의번호가붙는정리, 예제, 공리등도카운터를지닌다. 이는일반적으로 \newtheorem이라는명령에의해정의되지만, 여기서는특별히카운터를사용자정의하여만드는법을알아보자. 여기서는 Thm이라는카운터를정의하여 Thm이라는환경에넣고 shadowbox 로감싸는것을생각해보자. %% 정리 설정 \newcounter{thm}[section] \newsavebox{\thm} \newcommand{\thmname}{% \ignorespaces\textbf{\textsf{ 정리 ~\thethm}}% } %\renewcommand\thethm{\thesection.\arabic{thm}~} \counterwithin{thm}{section} \newenvironment{thm}[1][\@empty]{% \refstepcounter{thm} \par\vspace{1.5\baselineskip} \noindent\centering \begin{sbox}% \centering\begin{minipage}{0.9\linewidth}\vspace{\baselineskip} {\ifx #1\@empty \Thmname~ \else \Thmname~\textbf{\textsf{(#1)}} \fi}} {\par\vspace{\baselineskip}\end{minipage} \end{sbox}% \setlength\fboxsep{.5em} 6 무엇이더있을까생각해보자. 16 KTUG Happy TeXing!

progress 2008/5/26 19:57 page 17 #18 From Article to My Own Style \shadowbox{\colorbox{lightcyan}{\thesbox}} \par\vspace{\baselineskip}}% 이제다음과같은모양이나온다. 정리 4.1 임의의두명제 p, q 사이에결합자 를붙여서합성명제 p q를구성한다. p q의진리값은다음표 4에의하여정의한다. 따라서결합자 는위에서언급된첫번째명제에서와같이포함하는뜻에서의 또는 으로정의한다. 다음과같이이름붙은정리모양도만들수있다. 정리 4.2 ( 무명씨의정리 ) 임의의두명제 p, q 사이에결합자 를붙여서합성명제 p q를구성한다. p q의진리값은다음표 4에의하여정의한다. 따라서결합자 는위에서언급된첫번째명제에서와같이포함하는뜻에서의 또는 으로정의한다. KTUG Happy TeXing! 17

progress 2008/5/26 19:57 page 18 #19 From Article to My Own Style 5 판면세로길이를행수로정하는법 geometry 패키지는한면에들어갈행수를지정할수있게해준다. 이때주의해야할점은판면의세로에영향을미치는명령은넣어서는안된다는점이다. 이패키지를이용하여판면에 35행이들어가도록해보자. 편의상각행옆에행번호를붙이기위해 lineno 패키지를이용하고 pagewiselinenumbers 환경에텍스트를두었다. \RequirePackage[pagewise]{lineno} % \RequirePackage{geometry} \geometry{% paperwidth=174mm, paperheight=251mm, %textwidth=120mm, %textheight=195mm, lines=35,%30행으로맞춰보자 inner=27mm, outer=27mm, %centering, %top=20mm, %bottom=25mm } 행수를정확히세기위해 \clearpage 한번한다. 결과물은다음쪽에서. 18 KTUG Happy TeXing!

progress 2008/5/26 19:57 page 19 #20 From Article to My Own Style 1 소녀 윤오영선생님 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 고개마루턱에방석소나무가하나서있었다. 예까지오면거진다왔다는생각에마음이홀가분해진다. 이마루턱에서보면야트막한산밑에올망졸망초가집들이들어선마을이보이고오른쪽으로넓은마당집이내진외가로아저씨뻘되는분의집이다. 나는여름방학이되어집에내려오면한번씩은이집을찾는다. 이집에는나보다한살아래인, 열세살되는누이뻘되는소녀가있었다. 실상촌수를따져가며통내외까지할절척 ( 切戚 ) 도아니지만서로가깝게지내는터수라, 내가가면여간반가워하지아니했고, 으레그소녀를오빠가왔다고불러내어인사를시키곤했다. 소녀의몸매며옷매무새는제법색시꼴이박히어가기시작했다. 그때만해도시골서좀범절있다는가정에서는열살만되면벌써처녀로서의예모를갖추었고침선이나음식솜씨도나타내기시작했다. 집문앞에는보리가누렇게패어있었고, 한편들에서는일꾼들이보리를베기시작했다. 나는사랑에들어가어른들을뵙고수인사겸이런이야기저런이야기로얼마지체한뒤에, 안건너방으로안내를받았다. 점심대접을하려는것이다. 사랑방은머슴이며, 일꾼들이드나들고어수선했으나, 건너방은조용하고깨끗하다. 방도말짱히치워져있고, 자리도깔려있었다. 아주머니는오빠에게나와인사하라고소녀를불러냈다. 소녀는미리준비를차리고있었던모양으로옷도갈아입고머리도곱게매만져있었다. 나도옷고름을매만지며대청으로마주나와인사를했다. 작년보다는훨씬성숙해보였다. 지금막건너방에서옮겨간것이틀림없었다. 아주머니는일꾼들을보살피러나가면서오빠점심대접하라고딸에게일렀다. 조금있다가딸은노파에게상을들려가지고왔다. 닭국에말은밀국수다. 오이소박이와호박눈썹나물이놓여있었다. 상차림은간소하나정결하고깔밋했다. 소녀는촌이라변변치는못하지만많이들어달라고친숙하고나직한목소리로짤막한인사를남기고곱게문을닫고나갔다. 남창으로등을두고앉았던나는상을받느라고돗자리길이대로자리를옮겨야했다. 맞은편벽모서리에걸린분홍적삼이비로소눈에띄었다. 곤때가약간묻은소녀의분홍적삼이. 나는야릇한호기심으로자꾸쳐다보지아니할수없었다. 밖에서무엇인가수런수런하는기색이들렸다. 노파의은근한웃음섞인소리도들렸다. 괜찮다고염려말라는말같기도했다. 그러더니노파가문을열고들어왔다. 밀국수도촌에서는별식이니맛없어도많이먹으라느니너스레를놓더니, 슬쩍적삼을떼어가지고나가는것이었다. KTUG Happy TeXing! 19

progress 2008/5/26 19:57 page 20 #21 From Article to My Own Style 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 상을내어갈때는노파혼자들어오고, 으레따라올소녀는나타나지아니했다. 적삼들킨것이무안하고부끄러웠던것이다. 내가올때아주머니는오빠가떠난다고소녀를불렀다. 그러나소녀는안방에숨어서나타나지아니했다. 아주머니는 갑자기수줍어졌니, 얘도새롭기는. 하며미안한듯머뭇머뭇기다렸으나이내소녀는나오지아니했다. 나올때뒤를흘낏훔쳐본나는숨어서반쯤내다보는소녀의뺨이확실히붉어있음을알았다. 그는부끄러웠던것이다. 작품해설이작품은단순한사춘기적감정으로서의부끄러움을넘어서서, 가장한국적인정서로서의부끄러움을보여주고있다. 지은이의시선이담담하고도단아한모습을유지하고있다는점도고전적부끄러움의멋을표상화하는데기여하고있다. 일화적경험의순간속에서포착되는인간사의아름다움에대한발견이이수필의은은한격조로연결된다. 별다른부연이나설명없이, 또과다한감정의노출없이, 한국적부끄러움의장면을그려내고있는점이이수필의묘미라할수있다. 이러한점을고려하며감상해보자. 20 KTUG Happy TeXing!

progress 2008/5/26 19:57 page 21 #22 From Article to My Own Style The circle is at 1 inch from the top and left of the page. Dashed lines represent (\hoffset + 1 inch) and (\voffset + 1 inch) from the top and left of the page. \topmargin \headheight Header \headsep \oddsidemargin Body \textwidth \textheight \footskip Footer Margin Note \marginparpush \marginparsep \marginparwidth Actual page layout values. \paperheight = 250.99706mm \hoffset = 17.99979mm \evensidemargin = 1.59998mm \topmargin = -15.86777mm \headsep = 8.78639mm \textwidth = 119.9986mm \marginparsep = 3.86601mm \columnsep = 3.51456mm 1em = 3.51456mm \paperwidth = 173.99796mm \voffset = 22.99973mm \oddsidemargin = 1.59998mm \headheight = 4.21747mm \textheight = 194.65758mm \footskip = 10.54367mm \marginparpush = 1.75728mm \columnseprule = 0mm 1ex = 1.5132mm KTUG Happy TeXing! 21

progress 2008/5/26 19:57 page 22 #23 From Article to My Own Style The circle is at 1 inch from the top and left of the page. Dashed lines represent (\hoffset + 1 inch) and (\voffset + 1 inch) from the top and left of the page. Header Body Margin Note Footer Lengths are to the nearest pt. page height = 714pt page width = 495pt \hoffset = 51pt \evensidemargin = 5pt \headheight = 12pt \textheight = 554pt \footskip = 30pt \marginparpush = 5pt \columnseprule = 0.0pt 이문서레이아웃을구성하는모든길이값 \voffset = 65pt \topmargin = -45pt \headsep = 25pt \textwidth = 341pt \marginparsep = 11pt \columnsep = 10pt paperheight = 250.99706mm paperwidth = 173.99796mm textheight = 194.65758mm textwidth = 119.9986mm hoffset = 17.99979mm voffset = 22.99973mm oddsidemargin = 1.59998mm headsep = 8.78639mm footskip = 10.54367mm marginparwidth = 42.52614mm marginparsep = 3.86601mm marginparpush = 1.75728mm columnsep = 3.51456mm columnseprule = 0mm topmargin = -15.86777mm headheight = 4.21747mm 22 KTUG Happy TeXing!

progress 2008/5/26 19:57 page 23 #24 From Article to My Own Style reference width 한국 TEX 학회 height depth width = 150.61227pt height = 19.25713pt depth = 5.3553pt reference width 한국 TEX 학회 height depth width = 66.87068pt height = 7.73999pt depth = 2.15277pt reference width The Korean TEX Society height depth width = 249.07384pt height = 17.27776pt depth = 5.35611pt KTUG Happy TeXing! 23

progress 2008/5/26 19:57 page 24 #25 From Article to My Own Style 6 pdf 다루기 http://faq.ktug.or.kr/faq/pdfmanipulation KTUF FAQ 위키사이트가운데최고의명품페이지중의하나. 6.1 pdfpages 패키지 6.1.1 두개의 PDF 파일에서각각한페이지씩교차하여합치기 \documentclass{article} \usepackage{pdfpages} \makeatletter \def\for#1#2#3{\@ifnextchar[{\@for@{#1}{#2}{#3}}{\@for@{#1}{#2}{#3}[1]}} \long\def\@for@#1#2#3[#4]#5{\setcounter{#1}{#3}\addtocounter{#1}{1}% \edef\for@loopend{\arabic{#1}}% \setcounter{#1}{#2}% \loop \ifnum \expandafter\the\csname c@#1\endcsname < \for@loopend\relax #5\addtocounter{#1}{#4}\repeat} \newcounter{repeatcnt} \makeatother \begin{document} \for{repeatcnt}{1}{24}{% \includepdfmerge[fitpaper=true]{odd.pdf,\therepeatcnt,even.pdf,\therepeatcnt} } \end{document} 짝수쪽으로만이루어진문서, 홀수쪽으로만이루어진문서를지그재그형태로합치고싶을때위와같이코딩하여 PDFL A TEX 으로컴파일하면된다. combine.tex 파일참고 24 KTUG Happy TeXing!

progress 2008/5/26 19:57 page 25 #26 From Article to My Own Style 7 찾아보기 만들기 makeidx 패키지는 본문 중 \index 명령에 들어있는 단어를 기억해둔다. (어 디에?) 이를 사용하기 위해서는 preamble에 \makeindex 선언이 있어야한다. \usepackage{makeidx} \makeindex... \paragraph{황금비} \index{황금비}황금비 또는 \index{황금 분할}황금 분할(라 틴어: sectio aurea 혹은 sectio divina)은 주어진 길이를 가장 이상적으로 둘 로 나누는 비로, 근사값이 약 1.618인 무리수이다. 기하학적으로 황금분할은 이 미 유클리드(원론 3, 141)가 정의한 이래 예술분야, 특히 건축, 미술 등에서 즐 겨 응용되었다. \printindex 황금률 황금비 또는 황금 분할(라틴어: sectio aurea 혹은 sectio divina) 은 주어진 길이를 가장 이상적으로 둘로 나누는 비로, 근사값이 약 1.618 인 무리수이다. 기하학적으로 황금분할은 이미 유클리드(원론 3, 141)가 정의한 이래 예술분야, 특히 건축, 미술 등에서 즐겨 응용되었다. F (n) = ϕn ( ϕ) n ϕn (1 ϕ)n = 5 5 이렇게 작성한 후 두어 번 컴파일한다. 그러면 progress.idx 파일이 생 겨나있다. 이에 대해 MakeIndex 프로그래밍을 돌려준다. > komkindex progress 그러면 progress.ind가 생겨나 있다. 이제 한번 더 컴파일하면 \printindex 명령은 찾아보기 를 출력해준다. 찾아보기에 등재된 각 표제어의 머리 기호를 주고 싶으면... > komkindex -s kotex progress 그런데... 만들어진 찾아보기에서 이상한 점이? KTUG Happy TeXing! 25

progress 2008/5/26 19:57 page 26 #27 From Article to My Own Style ㅎ 황금분할...17 황금률...17 Figure 1: 강제로캡션달기. caption 패키지가필요하다. 이를바로잡으려면 -l 옵션을준다. > komkindex -l -s kotex progress ㅎ 황금률...17 황금분할...17 Figure 2: 인덱스가제대로정렬 (sort) 되었다. ( 만세!) 26 KTUG Happy TeXing!

progress 2008/5/26 19:57 page 27 #28 Index ㅁ 명령어또는환경.................. 5 allsectionsfont................. 6 chapter................... 3, 4, 6 chapterfont.................... 6 chaptermark................... 6 clearpage..................... 18 hfil........................... 14 index......................... 25 Large.......................... 5 leftmark...................... 14 makeatletter................... 5 makeatother................... 5 makeindex.................... 25 markboth.....................13 markright.....................13 newtheorem.................. 16 pagestyle{#1}................ 13 pagewiselinenumbers.......... 18 paragraph................... 3, 4 part.........................3, 4 partfont....................... 6 printindex.................... 25 #1........................... 13 renewcommand................ 5 section...................... 3 6 sectionfont..................... 6 subsection...................3, 4 subsectionfont................. 6 subsubsection.................. 4 thepage....................... 14 Thm..........................16 titleformat..................... 6 usepackage{mychap}.......... 11 ㅇ 옵션 twoside....................... 13 유틸리티 MakeIndex................... 25 ㅋ 클래스 article.................1, 3 6, 13 book..................... 1, 4, 7 letter.......................... 1 minimal........................1 report....................... 1, 4 ㅎ 황금분할......................... 25 황금률............................ 25 27