در این نسخه دستوری به نام \computeautoilg
تعریف شده است که فاصله خط کرسی مناسب را انتخاب میکند. ilg
مخفف interline glue میباشد.
این دستور نویسههای محدوده عربی را یکی یکی داخل یک کادر قرار میدهد و هر بار عمق و ارتفاع کادر را به بیشترین مقدار بروز میکند. پس از انجام این کار، اگر \baselineskip
کمتر از جمع بیشینه عمق و بیشینه ارتفاع کادر باشد آنگاه جمع بیشینه عمق و بیشینه ارتفاع کادر را تقسیم بر \baselineskip
میکند و حاصل یک عدد حقیقی است. سپس مقدار \baselineskip
را برابر با جمع بیشینه عمق و بیشینه ارتفاع کادر میکند. برای این کار عدد حقیقی بدست آمده را به عنوان آرگومان دستور \linespread
به کار میبرد. در این صورت در فایل .log
اطلاعاتی همانند زیر نوشته میشود:
Package xepersian Info: character with height+depth greater than current baseli
neskip found in font on input line 5.
Package xepersian Info: baselineskip changed to that height+depth! on input lin
e 5.
بدیهی است که اگر بخواهید اثر دستور \computeautoilg
را خنثی کنید کافی است مقدار پیشفرض \baselineskip
را بدهید:
\linespread{1}
\selectfont
این دستور نسخه بهینه شده فایلی است که چند سال پیش در سایت پارسیلاتک قرار داده بودم.
یک نمونه
\baselineskip
پیشفرض لاتک بدون تغییر در مقدار \baselineskip
:
\documentclass[a4paper,12pt]{article}
\usepackage{ptext}
\usepackage{xepersian}
\settextfont{Yas}
\begin{document}
\ptext
\end{document}
محاسبه \baselineskip
بصورت خودکار و پویا:
\documentclass[a4paper,12pt]{article}
\usepackage{ptext}
\usepackage{xepersian}
\settextfont{Yas}
\computeautoilg
\begin{document}
\ptext
\end{document}