با استفاده از کد زیر عنوان فصلها را وسط چین و شمارندهی آنها را ترتیبی کردهام؛ اما استفاده از این روش با فصل پیوست ایجاد مشکل میکنند. راه حل چیست؟
\makeatletter
\def\@makechapterhead#1{%
\vspace*{50\p@}%
{\parindent \z@ \centering\normalfont
\ifnum \c@secnumdepth >\m@ne
\if@mainmatter
\LARGE \bfseries \@chapapp\space \@tartibi\thechapter
\par\nobreak
\vskip 20\p@
\fi
\fi
\interlinepenalty\@M
\Huge \bfseries #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
راهحلش اینه که این تغییرات رو توی دستور appendix خنثی کنید؛ یعنی تعریف اصلی دستور \@makechapterhead رو دوباره توی تعریف دستور appendix قرار بدید.
نقل قول از: MARS.kIAN در جولای 31, 2014, 03:42:51 بعد از ظهر
با استفاده از کد زیر عنوان فصلها را وسط چین و شمارندهی آنها را ترتیبی کردهام؛ اما استفاده از این روش با فصل پیوست ایجاد مشکل میکنند. راه حل چیست؟
\makeatletter
\def\@makechapterhead#1{%
\vspace*{50\p@}%
{\parindent \z@ \centering\normalfont
\ifnum \c@secnumdepth >\m@ne
\if@mainmatter
\LARGE \bfseries \@chapapp\space \@tartibi\thechapter
\par\nobreak
\vskip 20\p@
\fi
\fi
\interlinepenalty\@M
\Huge \bfseries #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
خط ۱۳ فایل test.tex مشکل داره. در این خط
\@tartibi\thechapter
را به
\@tartibi\c@chapter
تغییر بده. البته اگر از بسته titlesec استفاده کنی، احتیاجی به این همه ماکرو نیست.