تالار گفتگوی پارسیلاتک
لاتک LATEX => طراحی صفحه => نويسنده: enem62 در ژوئن 14, 2012, 07:29:00 pm
-
سلام
من از نمونه پایاننامه آماده شده با استفاده از کلاس Tabriz_thesis، نگارش 0.4 آقای وحید دامنافشان استفاده میکنم.
چطوری میشه همه عنوان ها رو وسط چین کرد؟ (عنوان فصل ها ، فهرست ، پیوست ، مراجع و...)
-
سریعترین راه رسیدن به جواب، جستجوی تالار است:
http://www.parsilatex.com/forum/SMF/index.php?topic=1071.msg5958#msg5958
-
من برای وسط چین کردن عنوان فصل از دستور زیر استفاده کردم :
\newcommand{\cchapter}[1]{\chapter[#1]{\centering #1}}
و به جای نوشتن \chapter از دستور \cchapter استفاده کردم. اما مشکل اینجا بود که من میخواستم فقط chapter وسط چین بشه و نه فهرست مطالب. از طرفی این دستور باعث وسط چین شدن section ها نمیشه ولی شمارۀ اونهارو میدزده و فقط عنوانش رو ذکر میکنه.
برای همین از دستور زیر استفاده کردم :
\makeatletter
\def\@makechapterhead#1{%
\vspace*{50\p@}%
{\parindent \z@ \centering\normalfont
\ifnum \c@secnumdepth >\m@ne
\if@mainmatter
\Huge\bfseries {\chapterfont \@chapapp}\space \thechapter
% \Huge\bfseries {\chapterfont \@chapapp\space \thechapter}
\par\nobreak
\vskip 20\p@
\fi
\fi
\interlinepenalty\@M
\Huge \bfseries{\chapterfont #1}\par\nobreak
\vskip 40\p@
}}
\def\@makeschapterhead#1{%
\vspace*{50\p@}%
{\parindent \z@ \centering
\normalfont
\interlinepenalty\@M
\Huge \bfseries #1\par\nobreak
\vskip 40\p@
}}
\makeatother
که این دستور برای book تعریف شده و برای report جواب نداد. فایل .log رو پیوست کردم. لطفاً راهنمایی کنید.
-
ماکروی شما از ماکروی chapter در کلاس book استخراج شده که در دو خط با report فرق دارد.
باید به این شکل تغییر یابد:
\makeatletter
\def\@makechapterhead#1{%
\vspace*{50\p@}%
{\parindent \z@ \centering\normalfont
\ifnum \c@secnumdepth >\m@ne
\Huge\bfseries {\chapterfont \@chapapp}\space \thechapter
% \Huge\bfseries {\chapterfont \@chapapp\space \thechapter}
\par\nobreak
\vskip 20\p@
\fi
\interlinepenalty\@M
\Huge \bfseries{\chapterfont #1}\par\nobreak
\vskip 40\p@
}}
\def\@makeschapterhead#1{%
\vspace*{50\p@}%
{\parindent \z@ \centering
\normalfont
\interlinepenalty\@M
\Huge \bfseries #1\par\nobreak
\vskip 40\p@
}}
\makeatother
به این شرط که دستور \chapterfont قبلاً توسط شما و یا سبکی که استفاده میکنید تعریف شده باشد.