تالار گفتگوی پارسی‌لاتک

زی‌پرشین XePersian => زی‌تک => نويسنده: vafa در آوریل 10, 2013, 09:49:51 am

عنوان: حذف تغییرات در محیط picture در تسخه آینده بسته bidi
رسال شده توسط: vafa در آوریل 10, 2013, 09:49:51 am
تغییراتی که بسته bidi در محیط picture می‌داد، حذف شده‌اند:

https://github.com/persian-tex/bidi/commit/ff1909f9ea58dc8c5d6b83eb2ab5972c5211dde1

دلیل اصلی این بوده که این تغییرات به جای آنکه مفید باشند، بیشتر مضر بودند و از آنجایی که سایر بسته‌ها از محیط picture استفاده می‌کنند، مشکلات زیادی را بوجود می‌اوردند. برای نمونه تغییر در بسته crop در حال حاضر به یک چهارم کاهش پیدا کرده است:

https://github.com/persian-tex/bidi/commit/bc2243092f8071232eba1aa7219985dd19a4d49b

کمی در مورد محیط picture:
مبداً جایی است که متن شروع می‌شود. مقدار پیش‌فرض \unitlength برابر با 1pt است و اگر مختصات مثبت افقی بدهید، به همان اندازه \kern می‌کند. به عنوان مثال در latex.ltx تعریف زیر وجود دارد:
\long\gdef\put(#1,#2)#3{%
  \@killglue\raise#2\unitlength
  \hb@xt@\z@{\kern#1\unitlength #3\hss}%
  \ignorespaces}
پس اگر بگوئید
\put(2,0){text}
دقیقاً معادل
\kern2pt text
خواهد بود.

در نتیجه در نسخه آینده بسته bidi

۱) رفتار محیط picture در محیط چپ‌ به راست تفاوتی نخواهد کرد.

۲) در محیط راست به چپ مبداً  افقی، سمت راست صفحه (جایی که متن شروع می‌شود) است. مختصات مثبت افقی موجب رفتن به سمت چپ می‌شود و مختصات منفی افقی موجب رفتن به سمت راست (یادمان باشد که در واقع مختصات افقی \kern است).

پس در واقع برای سازگاری و پایداری بیشتر دیگر بسته bidi تغییری در محیط picture نمی‌دهد و تمام موارد طبق تعریفات منطقی انجام شده و مشکلی با سایر بسته‌ها بوجود نخواهد آمد.

این بدان معناست که اگر در فایلهای خود از محیط picture یا دستور \put و مشابه آن استفاده کرده‌اید، با نسخه جدید بسته bidi شکل و شمایل نوشته‌های شما مانند قبل نخواهد بود و باید سورس لاتک خود را با توجه به تغییرات جدید، ویرایش کنید.

تغییر فوق همیشگی بوده و دیگر تغییری در رفتار محیط picture انجام نخواهد شد.