LaTeX work note

From 흡혈양파의 인터넷工房
Jump to: navigation, search
LaTeX 작업용 메모


일반 LaTeX 작업시 팁

LaTeX 에서 depth 에 대한 기본내용

\part 1편
\chapter 1장
\section 1절
\subsection dep1
\subsubsection dep2
\paragraph dep3
\subparagraph dep4


mediawiki의 pre 태그같은 역할을 하는 command

\begin{verbatim}
소스코드 또는 인용하는 내용
\end{verbatim}


linux/texlive 에서 font 를 추가할때

해당되는 폴더에 font 를 넣은다음 texhash 와 fc-cache 를 해줘야 한다.


페이지 카운터 표시법을 바꾸고 싶을때

\pagenumbering{...}에서 ...에다가 Roman|roman|arabic|gana 등등을.. 넣으시면..

이 경우 gana 는 kotex 을 사용할때만 쓸 수 있다.


LaTeX 의 주석문

\footnote{주석내용}


LaTeX 에서의 indent 관련된내용

\indent 로 잘 안된다면 차라리 맨 앞쪽에 \hspace{20pt} 이정도를 붙여주는것이 좋다.

\hspace{20pt}본문내용blahblah..................


귀찮다면 다음과같은 방법도 있다. 상황에 따라 안될수가 있다는게 문제.

\hskip2\parindent{본문내용blahblah..................}


LaTeX 에서 소스코드를 적으려고 할때

\begin{verbatim}
소스코드
\end{verbatim}


LaTeX 에서 정렬을 하려할때

  • 한줄인 경우 중앙정렬
\centerline{본문내용}


  • 여러줄인 경우 중앙정렬
\begin{center}
본문내용
\end{center}


  • 여러줄인 경우 우측정렬
\begin{flushright}
본문내용
\end{flushright}


자주 사용하는 특수기호 모음

  • >> $\gg$
  • << $\ll$
  • < $\textless$
  • > $\textgreater$
  • * \(\ast{}\)
  • \ \textbackslash
  • | \textbrokenbar
  • [ $\lbrack$
  • ] $\rbrack$
  • ^ $\textasciicircum$
  • ❏ \ding{111}


이미지를 삽입하려할때

  • 이미지 일반 삽입
\includegraphics[width=0.8\linewidth]{이미지파일이름(확장자제외)}


  • 주석을 포함한 figure 로 삽입
\begin{figure}[htb]
    \centerline{\includegraphics[width=0.8\linewidth]{이미지파일이름(확장자제외)}}
\caption{이미지주석내용.\label{fig:레이블명}}
\end{figure}


  • 이미지를 삽입하고 이미지 주위에 text 를 돌리려 할때
\kswrapfig[Pos=r,UseBox=true]
{\includegraphics[width=0.3\linewidth]{이미지파일이름(확장자제외)}}
{%
\noindent{본문내용}
}


  • 왼쪽은 글자. 오른쪽은 이미지가 들어가고 공통적으로 이미지 주석이 들어가는 figure.
\begin{figure}[htb]
    \begin{center}
        \begin{minipage}{0.45\linewidth}
        \begin{verbatim}
글자가 들어가는내용부분
        \end{verbatim}
        \end{minipage}
        \begin{minipage}{0.45\linewidth}
        \begin{center}
        \includegraphics[width=\linewidth]{이미지이름}
        \end{center}        
        \end{minipage}    
    \end{center}
\caption{이미지주석이름.\label{fig:라벨이름}}
\end{figure}}


  • 이미지 2개가 각자 주석을 가지고 있고 2개를 합친 주석을 사용하는 subfigure 를 사용하는 예제
\begin{figure}[htb]
    \begin{subfigure}[b]{\linewidth}
        \begin{center}
        \includegraphics[width=\linewidth]{왼쪽이미지이름}
        \caption{왼쪽이미지-주석}
        \end{center}        
    \end{subfigure}
    \vspace{10pt}
    \begin{subfigure}[b]{\linewidth}
        \begin{center}
        \includegraphics[width=\linewidth]{오른쪽이미지이름}
        \caption{오른쪽이미지-주석}
        \end{center}        
    \end{subfigure}
    \caption{공통주석}
\end{figure}


  • figure 에 표시되는 형식을 조절할때

figure 카운터를 사용하면 된다. 자세한 내용은 다른부분 참고


LaTeX 문서에서 줄의 위아래 간격을 주려할때

  • 바로 윗 부분이 일반적인 문장일때는 \\ 를 사용하면 됩니다.
문장 1 입니다\\

문장 2 입니다


  • 바로 윗부분이 매크로일때는 \vspace{원하는높이} 를 사용하면 됩니다.
\begin{enumerate}
  \item The first item
  \item The second item
  \item The third etc \ldots
\end{enumerate}
\vspace{20pt}

문장 2 입니다


굵은글자와 이탤릭글자

\textit{이탤릭입니다}
\textbf{굵은글자입니다}
\textit{\textbf{굵은이탤릭입니다.}}


글자에 밑줄긋기

$\underline{\text{밑줄}}$


wiki2LaTeX를 쓰는경우 주의점

*(별표)에 대한 특수문자

wiki 에서 LaTeX으로 extension을 써서 내용을 변환하는 경우 별표 문자가 \(\ast{}\) 으로 바뀌게 된다. LaTeX 에서는 수식(math)로 사용하는게 아니라면 *의 사용이 가능하다. 그런고로 \ast 로 대치되는 문자는 * 문자로 대치를 하는것이 좋다.


bold 에 대한 부분

mediawiki 에서 '(작은따옴표) 를 3개를 사용하면 bold를 사용할 수 있다. 이렇게 된 부분은 변환과정에서 아래와같이 변환된다

\textbf{볼드문자}

그런데 가끔은 아래와같이 변환된다.

볼드문자}\textbf{

물론 TeX의 compile 과정에서 에러가 난다. 그렇기때문에 문제가 있는 부분이 보인다면 log를 확인하고 해당되는 부분을 수정해 주어야 한다.


변환후 우선삭제해야할 부분

�nd{verbatim}
\begin{description}
�nd{description}

공백을 포함해야 하는것을 잊지말자. 그리고...

\begin{verbatim}

wiki 에서 소스코드를 표시하는 "syntaxhighlight" 부분의 안쪽에 위의 문자열이 포함된다. tab 이 쓰이는경우 대부분 그런데 꼭 주의해야한다.

그리고.. 소스코드 표시, 특히 \begin{verbatim}본문내용\end{verbatim} 이렇게 있는 경우... 소스코드 부분은 wiki 와 다시한번 반드시 확인해야 한다.


표 관련 예제

  • 일반적인 표준표
\begin{center}
  \begin{tabular}{p{80pt} p{250pt}}
    \multicolumn{2}{l}{표 6.3: 문자열 경계를 매치하기 위한 프리미티브}\tabularnewline
    \hlinewd{1.4pt}
    \textbf{구문} & \textbf{구문이 표현하는 대상}\\
    \hline
    $\textasciicircum$ & 행의 시작에 빈 문자열을 매치\\
    \$ & 행의 끝에 빈 문자열을 매치\\
    \textbackslash b & 단어 경계에서 빈 문자열을 매치\\
    \textbackslash B & 단어 경계가 아닌 곳에서 빈 문자열을 매치\\
    \textbackslash < & 단어 시작에 빈 문자열을 매치\\
    \textbackslash > & 단어 끝에 빈 문자열을 매치\\
    \hline
    \hlinewd{1.2pt}
  \end{tabular}
\end{center}


  • 쪼금 복잡한표
\begin{center}
  \begin{tabular}{p{200pt} p{140pt}}
    \hlinewd{1.4pt}
    \textbf{w topAttachment: XmATTACHFORM} & w의 상단면을 그 폼의 상단면에 부착한다.\\
    \vspace{0pt}\begin{minipage}{200pt}\textbf{w bottomAttachment: XmATTACHPOSITION;\\ \indent\hspace{20pt}bottomPosition: 10 "percent"}\end{minipage} & \vspace{0pt}\begin{minipage}{\linewidth}w의 하단면을 그 폼의 상단면에서 1/10만큼 아래로 부착한다.\end{minipage}\\
    \vspace{0pt}\begin{minipage}{200pt}\textbf{w topAttachment: XmATTACHWIDGET;\\ \indent\hspace{20pt}topWidget: anotherWidget}\end{minipage} & \vspace{0pt}\begin{minipage}{\linewidth}w의 상단면을 anotherWidget이라는 다른 위젯(하단면)으로 부착한다.\end{minipage}\\
    \textbf{w editmode: XmMULTILINEEDIT} & w가 CwText의 인스턴스라고 가정하고, 텍스트의 한 행이 아니라 다수의 행을 처리하도록 하라.\\
    \textbf{w value: self myMethod} & w가 CwText의 인스턴스라고 가정하고, 그것이 포함한 텍스트를 myMethod가 리턴하는 문자열로 설정하라.\\
    \textbf{w items: self yourMethod} & w가 CwList의 인스턴스라고 가정하고, 리스트의 항목들을 yourMethod가 리턴하는 문자열의 컬렉션으로 설정하라.\\
    \vspace{0pt}\begin{minipage}{200pt}\textbf{w addEventHandler: ButtonPressMask\\ \indent\hspace{20pt}receiver: self\\ \indent\hspace{20pt}selector: \#pushMe:clientData:callData:\\ \indent\hspace{20pt}clientData: nil;}\end{minipage} & \vspace{0pt}\begin{minipage}{\linewidth}w가 CwPushButton의 인스턴스라고 가정하고, 그 응답을 pushMe:clientData:callData:라는 이름의 메서드가 정의한 버튼 누름으로 설정하라.\\ \end{minipage}\\
    \hlinewd{1.2pt}
  \end{tabular}
\end{center}


참고주소