1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
|
\documentclass{report}
\usepackage{xepersian}
\pagestyle{headings}
\usepackage[top=2.5cm,right=2.5cm,bottom=2.5cm,left=2.5cm]{geometry}
\title{حروفچینی فارسی در \eng{\XePersian}\\[0.2cm]نسخهٔ ۰/۱۶۱۱۱}
\author{وفا خلیقی\thanks{پست الکترونیک:~\eng{vafa.khalighi@students.mq.edu.au}}}
\begin{document}
\maths
\begin{farsi}
\maketitle
\tableofcontents
\chapter{مقدمه}
به حروفچینی فارسی با \eng{\XePersian} خوش آمدید. هدف \eng{\XePersian} ارائه یک بستهٔ کاملاً کامل و پایدار برای حروفچینی است. لطفاً به خاطر داشته باشید که \eng{\XePersian} هنوز در حالت آزمایش است و این نسخهٔ ۰/۱۶۱۱۱ از آن است. من سعی کردهام، میکنم و خواهم کرد تا تمام امکانات حروفچینی فارسی را در \eng{\XePersian} جمع کنم. اما این خود نیاز به آزمایش و امتحان دارد تا اشکالات پیدا و رفع شود.
لطفاً قبل از استفاده از \eng{\XePersian} این سند را بدقت بخوانید تا با دستورات و امکانات \eng{\XePersian} آشنا شوید.
همچنین اگر اشکالی، پیشنهادی و یا سؤالی دارید، میتوانید آن را به نویسندهٔ \eng{\XePersian} گزارش دهید تا مؤلف \eng{\XePersian} بتواند نسخهٔ بعدی کاملتری را ارائه دهد.
دوست دارم از صمیم قلب از آقای \eng{Jonathan Kew } برای پشتیبانیها و اعتمادشان به من تشکر کنم.
در اینجا نیز دوست دارم از مسئولان پروژههای تکپارسی و فارسیتک تشکر و قدردانی کنم به این خاطر که نوشتن \eng{\XePersian} ممکن نبود مگر با مطالعهٔ کدهای این دو پروژه. همچنین تعدادی از امکانات فارسیتک و تکپارسی در بسته گنجانده شده است.
در پایان نیز دوست دارم صمیمانه از دوستان خوب و نازنینم در وبلاگ فارسیلاتک، آقایان مصطفی واحدی، مهدی امیدعلی، مرتضی خدادادیان، وحید قاسمیان و بسیاری از دوستان دیگر تشکر کنم. بدون نظرات و پشتیبانیهای این دوستان، من نمیتوانستم انگیزهٔ لازم را در انجام این کار پیدا کنم.
\chapter{فلسفه و دستورات}
فلسفهٔ \eng{\XePersian} این است که یک استفاده کنندهٔ معمولی باید قادر باشد به راحتی به حروفچینی فارسی بپردازد. در حال حاضر \eng{\XePersian} با کلاسهای \eng{article, amsart, amsbook, report, book, bookest, refrep} و \eng{beamer} به زیبایی و آسانی کار میکند. در هر نسخه از \eng{\XePersian} تلاش بر این است تا حداقل سه کلاس دیگر نیز به آن اضافه شود. همچنین در هر نسخه بستههای زیادی نیز به \eng{\XePersian} اضافه خواهند شد تا کاربران آزادی کامل در حروفچینی فارسی داشته باشند.
\section{قلمهای فارسی}
تعدادی قلمهای فارسی مناسب با \eng{\XePersian} عرضه میشوند. این قلمها در پوشهٔ \eng{True Type Fonts} قرار دارند. لطفاً قبل از انجام هر کاری این قلمها را روی سیستم خود نصب کنید.
\section{اسکلت یک متن فارسی ساده }
\subsection{طبقات \eng{article} و \eng{amsart}}
\setLR
\verb|\documentclass{article}|\\
\verb|\usepackage{xepersian}|\\
\verb|\title{|\textfarsi{عنوان مطلب}\verb|}|\\
\verb|\author{|\textfarsi{نام نویسنده}\verb|}|\\
\verb|\begin{document}|\\
\verb|\begin{farsi}|\\
\verb|\maketitle|\\
\verb|\tableofcontents|\\
\verb|\section{|\textfarsi{یک قسمت}\verb|}|
$\vdots$
\verb|\subsection{|\textfarsi{یک زیر قسمت}\verb|}|
$\vdots$
\verb|\subsubsection{|\textfarsi{یک زیر زیر قسمت}\verb|}|
$\vdots$
\verb|\end{farsi}|\\
\verb|\end{document}|
\setRL
\newpage
\subsection{طبقهٔ \eng{beamer}}
\setLR
\verb|\documentclass[hyperref=xetex]{beamer}|\\
\verb|\usepackage{xepersian}|\\
\verb|\title{|\textfarsi{عنوان مطلب}\verb|}|\\
\verb|\author{|\textfarsi{نام نویسنده}\verb|}|\\
\verb|\begin{document}|\\
\verb|\begin{farsi}|\\
\verb|\frame{\maketitle}|\\
\verb|\section{|\textfarsi{یک قسمت}\verb|}|\\
\verb|\frametitle{|\textfarsi{مطلب}\verb|}|\\
\verb|\framesubtitle{|\textfarsi{زیر مطلب}\verb|}|
$\vdots$
\verb|\end{frame}|
$\vdots$
\verb|\end{farsi}|\\
\verb|\end{document}|
\setRL
\subsection{سایر طبقات}
\setLR
\verb|\documentclass{book}|\\
\verb|\usepackage{xepersian}|\\
\verb|\title{|\textfarsi{عنوان مطلب}\verb|}|\\
\verb|\author{|\textfarsi{نام نویسنده}\verb|}|\\
\verb|\begin{document}|\\
\verb|\begin{farsi}|\\
\verb|\maketitle|\\
\verb|\tableofcontents|\\
\verb|\chapter{|\textfarsi{یک فصل}\verb|}|
$\vdots$
\verb|\section{|\textfarsi{یک قسمت}\verb|}|
$\vdots$
\verb|\subsection{|\textfarsi{یک زیر قسمت}\verb|}|
$\vdots$
\verb|\subsubsection{|\textfarsi{یک زیر زیر قسمت}\verb|}|
$\vdots$
\verb|\end{farsi}|\\
\verb|\end{document}|
\setRL
\newpage
\section{نکات}
\begin{itemize}
\item \eng{\XePersian}
قلم نازلی را برای قلم فارسی به عنوان پیشفرض استفاده میکند لذا باید این قلم را روی سیستم خود نصب کرده باشید. اگر میخواهید از قلم دیگری به عنوان قلم فارسی استفاده کنید، میتوانید دستور زیر را در پیشدرآمد فایل خود قرار دهید:
\setLR
\verb|\newfontinstance\farsifont[Script=Arabic,Scale=1.2,Mapping=farsidigits]{name of your font}|
\setRL
\item \eng{\XePersian}
قلم شهرزاد را برای قلم عربی به عنوان پیشفرض استفاده میکند لذا باید این قلم را روی سیتم خود نصب کرده باشید. اگر میخواهید از قلم دیگری به عنوان قلم عربی استفاده کنید، میتوانید دستور زیرا را در پیشدرآمد فایل خود قرار دهید:
\setLR
\verb|\newfontinstance\arabicfont[Script=Arabic,Scale=1.2]{name of your font}|
\setRL
\item
اگر میخواهید پاراگرافی انگلیسی بنویسید باید آن پاراگراف را بعد از دستور \verb|\end{farsi}| بنویسید و اگر دوباره خواستید فارسی بنویسید میتوانید از محیط زیر استفاده کنید:
\setLR
\verb|\begin{farsi}|
$\vdots$
\verb|\end{farsi}|
\setRL
\item
اگر میخواهید پاراگرافی عربی بنویسید، میتوانید از محیط زیر استفاده کنید:
\setLR
\verb|\begin{arab}|
$\vdots$
\verb|\end{arab}|
\setRL
\item \eng{\XePersian}
بصورت پیشفرض بستههای \eng{amsmath, amssymb, amsthm} و دیگر بستههای مربوط را فراخوانی میکند لذا شما نباید این بستهها را دوباره در پیشدرآمد فایل خود فراخوانی کنید.
\item \eng{\XePersian}
بصورت خودکار بستهٔ \eng{graphicx} را فراخوانی میکند لذا شما نباید این بسته را در پیشدرآمد فایل خود فراخوانی کنید.
\end{itemize}
\newpage
\section{دستورات کلیدی }
\verb|\XePersian|:
برای قرار دادن نماد \eng{\XePersian}. البته اگر در محیط فارسی هستید باید از شکل
\verb|\eng{\XePersian}|
این دستور استفاده کنید.
\vspace{0.5cm}
\verb|\fars{}|:
برای قرار دادن کلمه/کلمات و یا جملهای فارسی زمانی که در محیط فارسی نیستیم. کلمه/کلمات و یا جمله فارسی درون \verb|{}| قرار میگیرد.
\vspace{0.5cm}
\verb|\eng{}|:
برای قرار دادن کلمه/کلمات و یا جملهای انگلیسی زمانی که در محیط فارسی و یا عربی هستیم. کلمه/کلمات و یا جلمه انگلیسی درون \verb|{}| قرار میگیرد.
\vspace{0.5cm}
\verb|\arabt{}|:
برای قرار دادن کلمه/کلمات و یا جملهای عربی زمانی که در محیط عربی نیستیم. کلمه/کلمات و یا جمله عربی درون \verb|{}| قرار میگیرد.
\vspace{0.5cm}
\verb|\footnote{}|:
برای قرار دادن زیرنویس فارسی. متن فارسی را درون \verb|{}| قرار میدهیم.
\vspace{0.5cm}
\verb|\Footnote{}|:
برای قرار دادن زیرنویس انگلیسی. متن انگلیسی را درون \verb|{}| قرار میدهیم.
\newpage
\chapter{امکانات حروفچینی فارسی }
\section{حروفچینی شعر}
حروفچینی شعر از فارسیتک به \eng{\XePersian} اضافه شده است. در اینجا لازم میدانم از آقای بهداد اسفهبد که مؤلف اصلی آن هستند تشکر کنم.
\vspace{0.5cm}
لطفاً به خاطر داشته باشید که برای حروفچینی شعر نیازی به قراردادن بستهای خاص ندارید؛ \eng{\XePersian} این کار را بصورت خودکار انجام میدهد.
\subsection{حروفچینی شعر سنتی}
حروفچینی شعر سنتی در محیطی به نام \eng{oldpoem} انجام میگیرد. این محیط دو حالت دارد:
\subsubsection{حالت معمولی}
\begin{oldpoem}
هله رفتیم و گرانی ز جمالت بردیم&
جهت توشهٔ ره ذکر وصالت بردیم\\
تا که ما را و ترا تذکرهٔ خوش باشد&
دل خسته بتو دادیم و خیالت بردیم\\
آن خیال رُخ خوبت که قمر بندهٔ اوست&
وان خَم ابروی مانند هلالت بردیم\\
و آن شکرخندهٔ خوبت که شکر تشنهٔ اوست&
ز شکر خانهٔ مجموع خصالت بردیم\\
چون کبوتر چو بپریم بتو بازآییم&
زانکه ما این پَر و بال از پَر و بالت بردیم\\
هر کجا پرد فرعی، بسوی اصل آید&
هر چه داریم هم از عزّ و جلالت بردیم\\
شمس تبریز شنو خدمت ما را زصبا&
گر شمالست و صبا هم ز شمالت بردیم
\end{oldpoem}
شعر بالا با کد زیر تولید شده است:
\setLR
\verb|\documentclass{article}|\\
\verb|\usepackage{xepersian}|\\
\verb|\begin{document}|\\
\verb|\begin{oldpoem}|\\
\textfarsi{هله رفتیم و گرانی ز جمالت بردیم}\verb|&|\\
\textfarsi{جهت توشهٔ ره ذکر وصالت بردیم}\verb|\\|\\
\textfarsi{تا که ما را و ترا تذکرهٔ خوش باشد}\verb|&|\\
\textfarsi{دل خسته بتو دادیم و خیالت بردیم}\verb|\\|\\
\textfarsi{آن خیال رُخ خوبت که قمر بندهٔ اوست}\verb|&|\\
\textfarsi{وان خَم ابروی مانند هلالت بردیم}\verb|\\|\\
\textfarsi{و آن شکرخندهٔ خوبت که شکر تشنهٔ اوست}\verb|&|\\
\textfarsi{ز شکر خانهٔ مجموع خصالت بردیم}\verb|\\|\\
\textfarsi{چون کبوتر چو بپریم بتو بازآییم}\verb|&|\\
\textfarsi{زانکه ما این پَر و بال از پَر و بالت بردیم}\verb|\\|\\
\textfarsi{هر کجا پرد فرعی، بسوی اصل آید}\verb|&|\\
\textfarsi{هر چه داریم هم از عزّ و جلالت بردیم}\verb|\\|\\
\textfarsi{شمس تبریز شنو خدمت ما را زصبا}\verb|&|\\
\textfarsi{گر شمالست و صبا هم ز شمالت بردیم}\\
\verb|\end{oldpoem}|\\
\verb|\end{document}|
\setRL
\subsubsection{حالت ستارهدار}
\begin{oldpoem*}
هله رفتیم و گرانی ز جمالت بردیم&
جهت توشهٔ ره ذکر وصالت بردیم\\
تا که ما را و ترا تذکرهٔ خوش باشد&
دل خسته بتو دادیم و خیالت بردیم\\
آن خیال رُخ خوبت که قمر بندهٔ اوست&
وان خَم ابروی مانند هلالت بردیم\\
و آن شکرخندهٔ خوبت که شکر تشنهٔ اوست&
ز شکر خانهٔ مجموع خصالت بردیم\\
چون کبوتر چو بپریم بتو بازآییم&
زانکه ما این پَر و بال از پَر و بالت بردیم\\
هر کجا پرد فرعی، بسوی اصل آید&
هر چه داریم هم از عزّ و جلالت بردیم\\
شمس تبریز شنو خدمت ما را زصبا&
گر شمالست و صبا هم ز شمالت بردیم
\end{oldpoem*}
شعر بالا با کد زیر تولید شده است:
\setLR
\verb|\documentclass{article}|\\
\verb|\usepackage{xepersian}|\\
\verb|\begin{document}|\\
\verb|\begin{oldpoem*}|\\
\textfarsi{هله رفتیم و گرانی ز جمالت بردیم}\verb|&|\\
\textfarsi{جهت توشهٔ ره ذکر وصالت بردیم}\verb|\\|\\
\textfarsi{تا که ما را و ترا تذکرهٔ خوش باشد}\verb|&|\\
\textfarsi{دل خسته بتو دادیم و خیالت بردیم}\verb|\\|\\
\textfarsi{آن خیال رُخ خوبت که قمر بندهٔ اوست}\verb|&|\\
\textfarsi{وان خَم ابروی مانند هلالت بردیم}\verb|\\|\\
\textfarsi{و آن شکرخندهٔ خوبت که شکر تشنهٔ اوست}\verb|&|\\
\textfarsi{ز شکر خانهٔ مجموع خصالت بردیم}\verb|\\|\\
\textfarsi{چون کبوتر چو بپریم بتو بازآییم}\verb|&|\\
\textfarsi{زانکه ما این پَر و بال از پَر و بالت بردیم}\verb|\\|\\
\textfarsi{هر کجا پرد فرعی، بسوی اصل آید}\verb|&|\\
\textfarsi{هر چه داریم هم از عزّ و جلالت بردیم}\verb|\\|\\
\textfarsi{شمس تبریز شنو خدمت ما را زصبا}\verb|&|\\
\textfarsi{گر شمالست و صبا هم ز شمالت بردیم}\\
\verb|\end{oldpoem*}|\\
\verb|\end{document}|
\setRL
\subsection{حروفچینی شعر نو}
حروفچینی شعر نو نیز در محیطی به نام \eng{newpoem} امکان پذیر است. این محیط دارای دو حالت معمولی و ستارهدار میباشد.
\section{تهیه اسلاید}
به آسانی میتوانید اسلایدهای زیبایی را با کلاس \eng{beamer} در \eng{\XePersian} درست کنید. سه مثال نیز در پوشهٔ \eng{doc} موجود میباشد. در نسخههای بعدی تلاش خواهد شد تا کلاسها و بستههای مختلف و متنوع دیگری را برای تهیه اسلاید در \eng{\XePersian} فراهم آورد.
\section{نوشتهٔ سرصفحه}
برای فعال کردن نوشتهٔ سر صفحه سه راه وجود دارد:
\begin{itemize}
\item
در پیشدرآمد فایل خود دستور \verb|\pagestyle{headings}| را قرار دهید.
\item
در پیشدرآمد فایل خود دستور \verb|\pagestyle{myheadings}| را قرار دهید و سپس \eng{\texttt{myheadings}} را تعریف کنید.
\item
از بستهٔ \eng{\texttt{fancyhdr}} استفاده کنید که کاملاً با \eng{\XePersian} سازگار است.
\end{itemize}
\section{قرار دادن عکس}
قرار دادن عکس نیز به آسانی امکان پذیر است. هر چند که میتوانید از دستورات
\eng{\XeTeX}
استفاده کنید اما دستور
\verb|\includegraphics|
پیشنهاد میشود.
\section{جدول}
به آسانی میتوانید جدول خود را در
\eng{\XePersian}
تولید کنید.
\section{حروفچینی یک متن در چند ستون}
میتوانید تا ۵ ستون داشته باشید. برای حروفچینی یک متن در چند ستون از محیط زیر استفاده میکنیم:
\setLR
\verb|\begin{multicols}{number of columns}|
$\vdots$
\verb|\end{multicols}|
\setRL
\chapter{تغییرات جدید}
\begin{enumerate}
\item
اصلاح چند باگ بزرگ.
\item
اصلاح عدم سازگاری \eng{xepersian} با نسخهٔ جدید \eng{bidi}
\item
درست چاپ شدن شماره بخشها، فصلها، قسمتها، زیرقسمتها و زیر زیر قسمتها (در نسخهٔ قبلی این شمارهها از سمت مخالف (چپ) شروع میشدند).
\item
تغییر نوع شمارهگذاری صفحه، بخش، فصل، قسمت، زیرقسمت و زیر زیر قسمت برای سازگاری کامل با سایر بستهها.
\item
اضافه کردن امکان داشتن شماره صفحه به ترتیب حروف الفبای فارسی، برای عوض کردن شماره صفحه از عددی به حروفی کافی است فرمان \verb|\pagenumbering{farsi}| را به کار ببرید و اگر دوباره دوست داشتید شمارهٔ صفحه را از حروفی به عددی تغییر دهید کافی است از فرمان \verb|\pagenumbering{arabic}| استفاده کنید.
\item
امکان داشتن جدولی که در بعضی از خانههای آن بتوان به راحتی انگلیسی نوشت. لطفاً به مثال زیر توجه کنید:
\begin{center}
\begin{tabular}{|r|r|}\hline
من و تو&تو و من\\ \hline
me and you&you and me\\ \hline
\end{tabular}
\end{center}
جدول بالا با کد زیر تولید شده است:
\setLR
\verb|\documentclass{article}|\\
\verb|\usepackage{xepersian}|\\
\verb|\begin{document}|\\
\verb|\begin{farsi}|\\
\verb|\begin{center}|\\
\verb|\begin{tabular}|\eng{\texttt{\{|r|r|\}}}\verb|\hline|\\
\textfarsi{من و تو}\verb|&|\textfarsi{تو و من}\verb|\\ \hline|\\
\verb|me and you&you and me\\ \hline|\\
\verb|\end{tabular}|\\
\verb|\end{center}|\\
\verb|\end{farsi}|\\
\verb|\end{document}|
\setRL
\item
امکان داشتن شماره پیوست بر حسب حروف الفبا.
\end{enumerate}
\end{farsi}
\end{document}
|