نخست اینکه در
\chapter{\rl{سیستم کلی پاراشوت و چرایی آن}}
بخش \rl{...}
زاید هست و احتیاجی به اون نیست.
در مورد پرسشتون این اتفاق کاملاً طبیعی است حتی اگر از بسته xepersian
استفاده نکنید و یک متن مشابه انگلیسی داشته باشید همین اتفاق میافتد. حاشیه صفحه نخست تغییری نمیکند اما صفحه دوم همان حاشه صفحه نخست را داراست در واقع با اینکه از گزینه twoside
استفاده کردهاید اما متن به نحوی حروفچینی شده که گویی گزینه oneside
فعال بوده است.
لاتک حاشیه صفحات رو براساس اینکه شمارنده \c@page
فرد هست یا زوج هست تنظیم میکنه وقتی از دستور \pagenumbering
استفاده میکنید، این شمارنده از یک شروع میشود. تعریف دستور \pagenumbering
رو در سطر ۴۰۳۹ تا ۴۰۴۱ فایل latex.ltx
ببینید:
\def\pagenumbering#1{%
\global\c@page \@ne \gdef\thepage{\csname @#1\endcsname
\c@page}}
در ابتدای تعریف دستور
\global\c@page \@ne
قرار داره که بصورت عام (جهانی) مقدار شمارنده \c@page
رو برابر با یک میکنه و بنابراین لاتک تصور میکنه که در صفحه فرد هست و بنابراین حاشیه رو متناسب با صفحه فرد تنظیم میکنه.
راهحل استفاده از دستور \cleardoublepage
قبل از \chapter
هست که یک صفحه خالی اجاد خواهد کرد.
\documentclass[twoside]{report}
\usepackage[showframe]{geometry}
\usepackage{xepersian}
\settextfont{Yas}
\begin{document}
\begin{titlepage}
صفحه عنوان
\end{titlepage}
\cleardoublepage
\pagenumbering{harfi}
\chapter{سیستم کلی پاراشوت و چرایی آن}
\pagenumbering{arabic}
\section{مقدمه}
\end{document}
نحوه حل مشکل بدون استفاده از دستور \cleardoublepage
و ایجاد صفحه خالی اضافه
یک شمارنده واقعی صفحه تعریف میکنیم و در انتهای هر صفحه یک شماره به شماره این شمارنده میافزائیم. تغییر در حاشیهها با توجه به این شمارنده واقعی صفحه صورت میگیرد.
\documentclass[twoside]{report}
\usepackage[showframe]{geometry}
\usepackage{ptext}
\usepackage{xepersian}
\settextfont{Yas}
\makeatletter
% Introduce a new page counter which is the physical page counter
\newcounter{realpage}
% The initial value of the realpage counter should be 1
\setcounter{realpage}{\@ne}
% In the output routine once a page is shipped out, increment
% the value of the page by 1
\bidi@appto{\@outputpage}{\stepcounter{realpage}}
% In the output routine, change margins, headers, and footers
% based on the value of the realpage counter
\bidi@patchcmd{\@outputpage}{\count\z@}{\value{realpage}}
{}{}
% The following code will fix the showframe option of the geometry
% package
\bidi@patchcmd{\Gm@pageframes}{\count\z@}{\value{realpage}}
{}{}
\bidi@patchcmd{\Gm@pageframes}{\count\z@}{\value{realpage}}
{}{}
\makeatother
\begin{document}
\begin{titlepage}
\ptext
\end{titlepage}
\pagenumbering{harfi}
\chapter{سیستم کلی پاراشوت و چرایی آن}
\pagenumbering{arabic}
\section{مقدمه}
\ptext
\end{document}