Q&A 마당은 텍 관련 질문/답변을 위해 만들었습니다.
- 로그인 없이 자유롭게 글을 읽고 쓸 수 있는 철학은 처음과 같이 계속됩니다.
- 질문 전에 아래를 읽어 보세요. 좋은 질문이 좋은 답을 받을 수 있는 좋은 방법입니다.
- 질문에 맞는 제목을 붙이세요. 질문의 내용과 관련없는 "고수님", "긴급질문", "도와주세요"와 같은 제목은 답이 잘 올라오지 않습니다. 이 게시판에 올라오는 모든 글은 질문입니다. 굳이 [질문], [Q]를 적으실 필요도 없습니다.
- 내용을 충실히 적어 주시고, 같은 상황을 재현할 수 있는 최소한의 예제가 같이 있어야 합니다.
- 최소 예제는 "Minimal working example"을 읽어 보세요.
- 파일을 첨부하실 때에는 가능한 압축하여 파일 크기를 줄여서 올려주시길 바랍니다.
- 개인적으로 사용하신 글꼴이 들어 있는 경우, preparefont.sty에 관한 답변을 참조하세요.
- 스팸 글을 막기 위하여 짧은 시간 내에 다시 글이 등록되는 IP를 막거나, 광고 글을 막기 위하여 금지어로 .com, .net 등을 설정하고 있습니다. 다소간의 불편함이 있으시더라도 양해 바랍니다.
- 금지어에서 stackexchange, stackoverflow, ctan, overleaf, , github, google.com, gmail.com, .org, .io, sil.org, wiki.com, tistory.com등은 해제하였습니다.
- MathJax를 이용한 수식조판을 사용하실 수 있습니다. 여기를 참조하세요.
- 사용하는 편집기는 CKeditor입니다.
- 편집기에서 [enter]를 누르면 <p> 태그가 들어가고, 문단으로 생각하고 한 줄을 비웁니다.
- 글줄만 바꾸려면 [shift-enter]를 누르면 <BR> 태그가 들어가므로 용도에 맞게 나누어 쓸 수 있습니다.
- 수식를 문서내에 삽입하시려면 에디터를 툴바에서 [소스]를 눌러 HTML로 입력할 수 있게 바꾸신 후 <pre> </pre> tag를 사용하셔서 <pre> 여러 줄의 수식 </pre>처럼 입력하시면 좋습니다.
장(Chapter) 한글 표기하는 법
2014.01.10 02:30
처음으로 질문을 드립니다.
xelatex으로 바꾸면서 hangul.sty을 사용하다가 kotex.sty으로 바꾸었습니다. 한글로 책을 쓰는데
chapter의 제목 앞에 "제 1 장 서언" 처럼 나와야 하는데, "Chapter 1 서언"이라고 나옵니다.
예전에는
\renewcommand{\chaptermark}[1]{\markboth{제\ \thechapter\ 장\ \ #1}{}}
로 해결되었었는데, kotex에서는 작동이 안되네요. 해결 방법을 부탁드립니다. 미리 감사.
댓글 4
-
두텁
2014.01.10 09:06
-
cslee
2014.01.10 23:29
감사합니다. kotexdoc.pdf 를 구하는 방법을 알려 주세요. 읽어봐야겠습니다.
\usepackage[hangul]{korex}
를 쓰니까 "제 1 장"이라고 나오는 문제는 해결되었습니다. 그런데 "목 차" 에서는 section, subsection 이 "1장-2절 OOOO" 이렇게 나오지 않고 "1.2 OOOO" 처럼 소숫점으로 하고싶은데, 원하지 않는 "1장-2절 ...." 이런 식으로 나옵니다. hangul.sty을 사용할 때는 되었었거든요?
다시 한번 아시는 분의 고견을 부탁합니다.
-
nanim
2014.01.11 09:24
(1) \documentclass[chapter, kosection]{oblivoir}
=> pdflatex, xelatex
(2) \documentclass{book}
\usepackage[hangul]{kotex}
=> pdflatex
(3) book class + xelatex....
\documentclass{book}
\usepackage[hangul]{kotex}
\makeatletter
%% konames-utf
\RequirePackage{konames-utf}
%% 단원의 한글화
%% =============
%%
%% Part I --> 제 I 편, 第 I 篇
%% Chapter 1 --> 제 1 장, 第 1 章 <book,report>
%% Section 1 --> 제 1 절, 第 1 節
%% Appendix A --> 부록 A, 附綠 A
%%
%% 위와 같은 단원의 한글화는 절(節)까지 영향을 미친다. 그러므로 우리는
%% 목차에 \subsubsection까지 단원이 번호와 함께 나오도록 한다.
%% article에서는 이미 3으로 지정되었으나, 그외에서는 2로 지정되어
%% \subsection까지만 번호가 목차에 나오도록 되어 있다.
\setcounter{secnumdepth}{\thr@@}
\@ifclassloaded{article}{% <article>
\renewcommand{\appendix}{\par
\setcounter{section}{0}%
\setcounter{subsection}{0}%
\def\@chapapp{\appendixname}% 부록의 한글화에 의해 필요.
\kscntformat{section}{\appendixname~}{}
\def\thesection{\@Alph\c@section}}%
}{\@ifundefined{@chapapp}{}{% <report|book>
\renewcommand\thesection{\@arabic\c@section}
\renewcommand\appendix{\par
\setcounter{chapter}{0}%
\setcounter{section}{0}%
\renewcommand\@chapapp{\appendixname}%
\kscntformat{chapter}{\appendixname~}{}
\renewcommand\thechapter{\@Alph\c@chapter}}%
}}
%% 위와같은 재정의로 다음과 같은 문제가 발생한다.
%% 1. \part는 \partname~\thepart로 나오게 된다. 편~I
%% 2. \chapter는 \@chapapp{} \thechapter로. 장~1
%% 3. \section은 \sectionname~\thesection으로. 절~1
%% 4. 목차작성의 들여쓰기가 우리말 환경에 적당하지 않다.
%% 5. 페이지 heading의 글자체가 \slshape으로 바뀜으로서 우리말이
%% 불안정해진다.
%%
%% 이런 약점을 보완하기 위해 단원의 일련번호의 앞과 뒤에 끼워넣을
%% 모듬을 다음과 같이 설정한다.
\def\kscntformat#1#2#3{\@namedef{pre@#1cnt}{#2}
\@namedef{post@#1cnt}{#3}}
\kscntformat{part}{\KSTHE~}{~\partname}
\kscntformat{chapter}{\KSTHE~}{~\chaptername}
\kscntformat{section}{\KSTHE~}{~\sectionname}
\@ifclassloaded{article}{% <article>
\def\@part[#1]#2{%
\ifnum \c@secnumdepth >\m@ne
\refstepcounter{part}%
\addcontentsline{toc}{part}%
{\pre@partcnt\thepart\post@partcnt\hspace{1em}#1}%
\else
\addcontentsline{toc}{part}{#1}%
\fi
{\parindent \z@ \raggedright
\interlinepenalty \@M
\normalfont
\ifnum \c@secnumdepth >\m@ne
\Large\bfseries \pre@partcnt\thepart\post@partcnt
\par\nobreak
\fi
\huge \bfseries #2%
\markboth{}{}\par}%
\nobreak
\vskip 3ex
\@afterheading}
}{}
\@ifclassloaded{report}{%
\def\@part[#1]#2{%
\ifnum \c@secnumdepth >-2\relax
\refstepcounter{part}%
\addcontentsline{toc}{part}%
{\pre@partcnt\thepart\post@partcnt\hspace{1em}#1}%
\else
\addcontentsline{toc}{part}{#1}%
\fi
\markboth{}{}%
{\centering
\interlinepenalty \@M
\normalfont
\ifnum \c@secnumdepth >-2\relax
\huge\bfseries \pre@partcnt\thepart\post@partcnt
\par
\vskip 20\p@
\fi
\Huge \bfseries #2\par}%
\@endpart}
}{}
\@ifclassloaded{book}{%
\def\@part[#1]#2{%
\ifnum \c@secnumdepth >-2\relax
\refstepcounter{part}%
\addcontentsline{toc}{part}%
{\pre@partcnt\thepart\post@partcnt\hspace{1em}#1}%
\else
\addcontentsline{toc}{part}{#1}%
\fi
\markboth{}{}%
{\centering
\interlinepenalty \@M
\normalfont
\ifnum \c@secnumdepth >-2\relax
\huge\bfseries \pre@partcnt\thepart\post@partcnt
\par
\vskip 20\p@
\fi
\Huge \bfseries #2\par}%
\@endpart}
}{}
\@ifclassloaded{book}{%
\def\@chapter[#1]#2{%
\ifnum \c@secnumdepth >\m@ne
\if@mainmatter
\refstepcounter{chapter}%
\typeout{\pre@chaptercnt\thechapter\post@chaptercnt}%
\addcontentsline{toc}{chapter}%
{\protect\numberline{%
\pre@chaptercnt\thechapter\post@chaptercnt}#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
\pre@chaptercnt\thechapter\post@chaptercnt
\par\nobreak
\vskip 20\p@
\fi
\fi
\interlinepenalty\@M
\Huge \bfseries #1\par\nobreak
\vskip 40\p@
}}
\renewcommand*\l@chapter[2]{%
\ifnum \c@tocdepth >\m@ne
\addpenalty{-\@highpenalty}%
\vskip 1.0em \@plus\p@
\setbox\z@=\hbox{\bfseries\pre@chaptercnt\post@chaptercnt~}
\setlength\@tempdima{1.5em}
\advance\@tempdima\wd\z@
\begingroup
\parindent \z@ \rightskip \@pnumwidth
\parfillskip -\@pnumwidth
\leavevmode \bfseries
\advance\leftskip \@tempdima
\hskip -\leftskip
#1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
\penalty\@highpenalty
\endgroup
\fi}
}{}%
\@ifclassloaded{report}{%
\def\@chapter[#1]#2{%
\ifnum \c@secnumdepth >\m@ne
\refstepcounter{chapter}%
\typeout{\pre@chaptercnt\thechapter\post@chaptercnt}
\addcontentsline{toc}{chapter}%
{\protect\numberline{%
\pre@chaptercnt\thechapter\post@chaptercnt}#1}%
\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
\huge\bfseries
\pre@chaptercnt\thechapter\post@chaptercnt
\par\nobreak
\vskip 20\p@
\fi
\interlinepenalty\@M
\Huge \bfseries #1\par\nobreak
\vskip 40\p@
}}
\renewcommand*\l@chapter[2]{%
\ifnum \c@tocdepth >\m@ne
\addpenalty{-\@highpenalty}%
\vskip 1.0em \@plus\p@
\setbox\z@=\hbox{\bfseries\pre@chaptercnt\post@chaptercnt~}
\setlength\@tempdima{1.5em}
\advance\@tempdima\wd\z@
\begingroup
\parindent \z@ \rightskip \@pnumwidth
\parfillskip -\@pnumwidth
\leavevmode \bfseries
\advance\leftskip \@tempdima
\hskip -\leftskip
#1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
\penalty\@highpenalty
\endgroup
\fi}
}{}
%%%%% make compatible with tex4ht ?
\def\dhucs@seccntformat#1#2{%
\ifnum#2=\@ne\pre@sectioncnt\fi
\csname the#1\endcsname
\ifnum#2=\@ne\post@sectioncnt\fi
\quad}
\def\@sect#1#2#3#4#5#6[#7]#8{%
\ifnum #2>\c@secnumdepth
\let\@svsec\@empty
\else
\refstepcounter{#1}%
\protected@edef\@svsec{\dhucs@seccntformat{#1}{#2}\relax}%
\fi
\@tempskipa #5\relax
\ifdim \@tempskipa>\z@
\begingroup
#6{%
\@hangfrom{\hskip #3\relax\@svsec}%
\interlinepenalty \@M #8\@@par}%
\endgroup
\csname #1mark\endcsname{#7}%
\addcontentsline{toc}{#1}{%
\ifnum #2>\c@secnumdepth \else
\ifnum #2=1 % in case of section
\protect\numberline{\pre@sectioncnt
\csname the#1\endcsname\post@sectioncnt}%
\else \protect\numberline{\csname the#1\endcsname}%
\fi
\fi
#7}%
\else
\def\@svsechd{%
#6{\hskip #3\relax
\@svsec #8}%
\csname #1mark\endcsname{#7}%
\addcontentsline{toc}{#1}{%
\ifnum #2>\c@secnumdepth \else
\protect\numberline{\csname the#1\endcsname}%
\fi
#7}}%
\fi
\@xsect{#5}}
%%%%%
\@ifclassloaded{article}{%
\renewcommand*\l@section[2]{%
\ifnum \c@tocdepth >\z@
\addpenalty\@secpenalty%
\addvspace{1.0em \@plus\p@}%
\begingroup
\parindent \z@ \rightskip \@pnumwidth
\parfillskip -\@pnumwidth
\leavevmode \bfseries
\settowidth{\@tempdima}{\pre@sectioncnt\post@sectioncnt}%
\addtolength{\@tempdima}{1.5em}%
\advance\leftskip\@tempdima
\hskip -\leftskip
#1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
\endgroup
\fi}
}{}
\@ifclassloaded{book}{
\renewcommand*\l@section{%
\settowidth{\@tempdima}{\pre@sectioncnt\post@sectioncnt}%
\addtolength{\@tempdima}{2.3em}%
\@dottedtocline{1}{1em}{\@tempdima}}%1.5em 2.3em
}{}
\@ifclassloaded{report}{
\renewcommand*\l@section{%
\settowidth{\@tempdima}{\pre@sectioncnt\post@sectioncnt}%
\addtolength{\@tempdima}{2.3em}%
\@dottedtocline{1}{1em}{\@tempdima}}%1.5em 2.3em
}{}
%% 다음은 \ps@headings과 \ps@myheadings를 한글에 맞게 수정한 것이다.
%% 각각의 class들이 서로 다른 방식으로 페이지 머리를 짜므로 우리는
%% 여기서 각각을 따로따로 정의해 주어야 한다.
\@ifclassloaded{article}{%
\if@twoside
\renewcommand\ps@headings{%
\let\@oddfoot\@empty\let\@evenfoot\@empty
\def\@evenhead{\thepage\hfil\normalfont\slshape\leftmark}%
\def\@oddhead{{\normalfont\slshape\rightmark}\hfil\thepage}%
\let\@mkboth\markboth
\def\sectionmark##1{%
\markboth {\MakeUppercase{%
\ifnum \c@secnumdepth >\z@
\pre@sectioncnt\thesection\post@sectioncnt\quad
\fi
##1}}{}}%
\def\subsectionmark##1{%
\markright {%
\ifnum \c@secnumdepth >\@ne
\thesubsection\quad
\fi
##1}}}
\else
\def\ps@headings{%
\let\@oddfoot\@empty
\def\@oddhead{{\normalfont\slshape\rightmark}\hfil\thepage}%
\let\@mkboth\markboth
\def\sectionmark##1{%
\markright {\MakeUppercase{%
\ifnum \c@secnumdepth >\m@ne
\pre@sectioncnt\thesection\post@sectioncnt\quad
\fi
##1}}}}
\fi
}{}
\@ifclassloaded{book}{%
\if@twoside
\def\ps@headings{%
\let\@oddfoot\@empty\let\@evenfoot\@empty
\def\@evenhead{\thepage\hfil\normalfont\slshape\leftmark}%
\def\@oddhead{{\normalfont\slshape\rightmark}\hfil\thepage}%
\let\@mkboth\markboth
\def\chaptermark##1{%
\markboth {\MakeUppercase{%
\ifnum \c@secnumdepth >\m@ne
\if@mainmatter
\pre@chaptercnt\thechapter\post@chaptercnt\quad%
\fi
\fi
##1}}{}}%
\def\sectionmark##1{%
\markright {\MakeUppercase{%
\ifnum \c@secnumdepth >\z@
\pre@sectioncnt\thesection\post@sectioncnt\quad%
\fi
##1}}}}
\else
\def\ps@headings{%
\let\@oddfoot\@empty
\def\@oddhead{{\normalfont\slshape\rightmark}\hfil\thepage}%
\let\@mkboth\markboth
\def\chaptermark##1{%
\markright {\MakeUppercase{%
\ifnum \c@secnumdepth >\m@ne
\if@mainmatter
\pre@chaptercnt\thechapter\post@chaptercnt\quad%
\fi
\fi
##1}}}}
\fi
\pagestyle{headings}
}{}
\@ifclassloaded{report}{%
\if@twoside
\def\ps@headings{%
\let\@oddfoot\@empty\let\@evenfoot\@empty
\def\@evenhead{\thepage\hfil\normalfont\slshape\leftmark}%
\def\@oddhead{{\normalfont\slshape\rightmark}\hfil\thepage}%
\let\@mkboth\markboth
\def\chaptermark##1{%
\markboth {\MakeUppercase{%
\ifnum \c@secnumdepth >\m@ne
\pre@chaptercnt\thechapter\post@chaptercnt\quad%
\fi
##1}}{}}%
\def\sectionmark##1{%
\markright {\MakeUppercase{%
\ifnum \c@secnumdepth >\z@
\pre@sectioncnt\thesection\post@sectioncnt\quad%
\fi
##1}}}}
\else
\def\ps@headings{%
\let\@oddfoot\@empty
\def\@oddhead{{\normalfont\slshape\rightmark}\hfil\thepage}%
\let\@mkboth\markboth
\def\chaptermark##1{%
\markright {\MakeUppercase{%
\ifnum \c@secnumdepth >\m@ne
\pre@chaptercnt\thechapter\post@chaptercnt\quad%
\fi
##1}}}}
\fi
}{}
\makeatother\setmainhangulfont{NanumMyeongjo}
\begin{document}
....
-
cslee
2014.01.12 01:39
kotexdoc.pdf file 구해서 읽고 있습니다. 어려운 부분이 많지만, 필요 시에는 정독을 하겠습니다. 수고들 많이 하시고 계신 것을 알겠습니다.
제가 필요한 문제는 완전히 해결했어요. 좀 더 전문가적인 문제는 그때 그때 하나씩 이해하렵니다. 감사 또 감사.
\usepackage[hangul]{kotex}
으로 해결될 것입니다. kotex.sty를 처음 쓰신다면 kotexdoc.pdf 문서(설명서)를 한 번 읽어보시면 많은 도움이 됩니다.