LaTeX work note

From 흡혈양파의 인터넷工房
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
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}


참고주소