انجمن ویکی قلم‌های فارسی
ورود / عضویت

حروفچینی فارسی در زیپرشین (XePersian) و بای‌دای (bidi)

بحث پیرامون مسائل مربوط به قلم‌سازی، حروف‌چینی و بومی‌سازی

انتشار نسخهٔ جدید، 0.5c، بستهٔ xepersian-hm

پستتوسط mingranina » 03 مه 2020, 07:49

با سلام

نسخهٔ جدید، 0.5c، بستهٔ xepersian-hm منتشر شده است. این بسته در تاریخ ‎2020-05-01‎ در سایت ‎CTAN‎ آپلود شده و در تاریخ ‎2020-05-01‎ تحت عنوان ‎Revision 54962‎ در مخزن ‎TeXLive‎ قرار گرفته است.


فایل‌های حذف شده: ‎ ‎
فایل‌های اضافه شده: ‎ ‎

تغییرات:

- اصلاحات جزئی در کد برنامه

- تفکیک راهنمای کاربر و راهنمای کد برنامه

- افزودن مثال مربوط به گزینهٔ Kashida=hrule برای مقایسه دقیق‌تر گزینه‌های Kashida=glyph و Kashida=hrule

با تشکر

پ.ن.1- زمان‌های اعلام شده در متن پیام به وقت محلی سایت مربوطه است.
mingranina
 
پست‌ها : 77
تاریخ عضویت: 17 سپتامبر 2016, 07:53

انتشار نسخهٔ جدید، 0.5d، بستهٔ xepersian-hm

پستتوسط mingranina » 08 مه 2020, 21:42

با سلام

نسخهٔ جدید، 0.5d، بستهٔ xepersian-hm منتشر شده است. این بسته در تاریخ ‎2020-05-07‎ در سایت ‎CTAN‎ آپلود شده و در تاریخ ‎2020-05-07‎ تحت عنوان ‎Revision 55061‎ در مخزن ‎TeXLive‎ قرار گرفته است.


فایل‌های حذف شده: ‎ ‎
فایل‌های اضافه شده: ‎kashida-xep-XB-example.pdf, kashida-xep-XB-example.tex, doc-samples-glyph.pdf, doc-samples-hrule.pdf, doc-samples-xep.pdf‎

تغییرات:

- توضیحاتی در مورد اشکالات کشیده در xepersian و چگونگی رفع آن در xepersian-hm و همچنین ویژگی‌های اضافه شده در xepersian-hm به راهنمای کاربر اضافه شده است.

- نمونه‌های مربوط به ویژگی کشیده که با استفاده xepersian تهیه شده و همان نمونه‌ها که با استفاده از xepersian-hm و گزینهٔ hrule و glyph تهیه شده نیز به راهنمای کاربر اضافه شده است.

- تعدادی bug جزئی برطرف شده است.

با تشکر

پ.ن.1- زمان‌های اعلام شده در متن پیام به وقت محلی سایت مربوطه است.
mingranina
 
پست‌ها : 77
تاریخ عضویت: 17 سپتامبر 2016, 07:53

انتشار نسخهٔ جدید، 0.5e، بستهٔ xepersian-hm

پستتوسط mingranina » 13 مه 2020, 15:31

با سلام

نسخهٔ جدید، 0.5e، بستهٔ xepersian-hm منتشر شده است. این بسته در تاریخ ‎NA‎ در سایت ‎CTAN‎ آپلود شده و در تاریخ ‎2020-05-12‎ تحت عنوان ‎Revision 55123‎ در مخزن ‎TeXLive‎ قرار گرفته است.

فایل‌های حذف شده: ‎ ‎
فایل‌های اضافه شده: ‎ ‎
- doc-ligature-xep.pdf
-doc-ligature-xephm.pdf

تغییرات:

- xepersian در حالت کشیده بعضی از پیوندها (ligatures) به‌ویژه با برچسب (tag) dlig یا همان (Discretionary Ligatures) را از بین می‌برد. این مشکل در این نسخه از xepersian-hm رفع شده است.

نمونه‌ای از پیوندها (ligatures) در xepersian:
ligatures-xep.png

و همان نمونه در xepersian-hm:
ligatures-xephm.png

با تشکر

پ.ن.1- زمان‌های اعلام شده در متن پیام به وقت محلی سایت مربوطه است.
mingranina
 
پست‌ها : 77
تاریخ عضویت: 17 سپتامبر 2016, 07:53

حذف بستهٔ xepersian از توزیع TeXLive

پستتوسط mingranina » 16 مه 2020, 08:15

با سلام

مؤلف xepersian بعد از آنکه در تاریخ 2020/05/13 نگهداری از بسته‌های bidi و xepersian را از تیم LaTeX3 پس گرفتند تقریباً بلافاصله نسخهٔ 36 بستهٔ bidi و پس از آن نسخهٔ 22.9 بستهٔ xepersian را منتشر کردند. در این نسخهٔ جدید xepersian مجدداً فونت‌های سری HM فیلتر گردیده و علاوهٔ بر آن استفاده از گزینهٔ fontsloadable منوط به کسب اجازه کتبی از مؤلف xepersian شده بود.

این محدودیت در mailing list سایت tug.org مورد اعتراض قرار گرفت:

Khaled Hamdun:
[نمایش]
Hello all,
Weird but true! In the latest version of xepersian (v22.9) if
one uses the package option fontsloadable=true, he will get the following
warning message:

"Package xepersian Warning: The option `fontsloadable' should only be used in
exceptional cases. You are not allowed to use the option `fontsloadable'
unless you have a written permission from the primary author of the
xepersian package."

Does anybody have such an experience with another package in TeXLive.
Can the author of a package with an "LPPL version 1.3c or higher" make such
a request to use an option?

mwe:

کد: انتخاب همهٔ
\documentclass{article}
\usepackage[fontsloadable=true]{xepersian}
\settextfont{Amiri}
\begin{document}
۱ ۲ ۳ ۴ ۵
\end{document}

best
khaled

که پاسخی هم از طرف جناب Karl Berry در مورد نقض قوانین مربوط به نرم‌افزار آزاد توسط مؤلف xepersian ارسال شد:
Karl Berry:
[نمایش]
> unless you have a written permission from the primary author of the
> xepersian package."

This renders the package nonfree, and thus I have removed xepersian from
TL. I was not aware of this when I made the latest update. Thanks for
the report. --karl

و بالاخره نقض قوانین توزیع TeXLive، که TeXLive فقط شامل نرم‌افزارهای آزاد مربوط به TeX می‌شود، موجب گردید تا بستهٔ xepersian به‌طور کامل از توزیع TeXLive حذف شود.

با تشکر
mingranina
 
پست‌ها : 77
تاریخ عضویت: 17 سپتامبر 2016, 07:53

پاسخ: حروفچینی فارسی در زیپرشین (XePersian) و بای‌دای (bidi)

پستتوسط AliGhz » 17 مه 2020, 15:52

این سایت را امروز پیدا کردم و به نظر می‌رسد به مجموعهٔ متنوعی از نیازها در خصوص لاتک پاسخ می‌گوید:

http://parsilatex.com/site

محصولات آموزشی از جمله کتاب خودآموز لاتک هم دارد:

http://parsilatex.com/site/product/latex-quick-guide/
 Think Different.
نماد کاربر
AliGhz
Site Admin
 
پست‌ها : 2009
تاریخ عضویت: 14 نوامبر 2009, 16:55
محل سکونت: تورنتو/تهران

انتشار مجدد بستهٔ xepersian بدون فیلترینگ فونت‌های سری HM

پستتوسط mingranina » 17 مه 2020, 18:14

با سلام

پس از حذف کامل بستهٔ xepersion از سایت TeXLive که به علت نقض قوانین «نرم‌افزار آزاد» انجام شد و در این پیام به اطلاع رسید، نسخهٔ جدید، 23.0، بستهٔ xepersian توسط مؤلف مربوطه منتشر و در تاریخ ‎2020-05-16‎ در سایت ‎CTAN‎ آپلود شده و در تاریخ ‎2020-05-16‎ تحت عنوان ‎Revision 55165‎ در مخزن ‎TeXLive‎ قرار گرفته است.

در این نسخه نه تنها بخش مربوط به کسب مجوز کتبی برای استفاده از گزینهٔ fontsloadable=true حذف گردیده بلکه خود گزینه نیز حذف شده است. همچنین فیلترینگ فونت‌های سری HM رفع گردیده و کدهای مربوطه نیز به‌طور کامل از بستهٔ xepersion حذف شده است. البته حذف کامل کدها به علت ناکارآمدی آنها در مقابل کدها و روش‌هایی بود که برای عقیم کردن گزینهٔ fontsloadable و فیلترینگ در همین تاپیک و در سایت SE معرفی شده بود.

اما آنچه در این نسخه قابل توجه است بخش مربوط به kashida است. همانگونه که در پیام مربوط به انتشار بستهٔ xepersian-hm، و نسخه‌های اخیر آن 0.5a، 0.5b، 0.5c، 0.5d، 0.5e و به ویژه در این پیام به اطلاع رسید، با اصلاح قسمت ثابت چسب (fixed part of the glue) مشکل ترکیب‌هایی مثل «ب‍ + ی»، «پ‍ + ی» و «ی‍ + ی» و با افزودن کاراکتر ‎(left to right mark) "200E"‎ مشکل «ه‍ + ی» در فونت‌های سری XB و HM رفع شد. همچنین در همان پیام نظر مؤلف xepersian در مورد راه حل استفاده شده ذکر گردید که:

[نمایش]
«این روش درست کردن کشیده کیفیت پایینی داره و اصولی نیست (این فقط یک وصله‌کاری هست). بنابراین من استفاده از این بسته رو پیشنهاد نمی‌کنم.»

اما چند روز پس از انتشار آخرین نسخهٔ، 0.5e، بستهٔ xepersian-hm، مؤلف xepersian برای اصلاح مشکل kashida در نسخهٔ، 22.9، بستهٔ xepersian در فایل kashida-xepersian.def (22.9) از راه حل زیر استفاده کردند:

کد: انتخاب همهٔ
\def\xepersian@kashida{\if@Kashida@on\xepersian@zwj\nobreak%
    \leaders\hrule height \XeTeXglyphbounds\tw@ \the\XeTeXcharglyph\xepersian@kashidachar  depth \XeTeXglyphbounds\f@ur \the\XeTeXcharglyph\xepersian@kashidachar \hskip0pt plus
    \dimexpr \fontcharwd\font\xepersian@kashidachar -
    \XeTeXglyphbounds\@ne
    \the\XeTeXcharglyph\xepersian@kashidachar -
    \XeTeXglyphbounds\thr@@
    \the\XeTeXcharglyph\xepersian@kashidachar \relax
\xepersian@zwj\fi}

تنها تفاوت کد فوق با کد ارائه شده در xepersian-hm این است که در کد فوق به‌جای قسمت ثابت چسب از قسمت کشیده‌پذیر چسب ‎(stretchable part of the glue)‎ استفاده شده است و اندازه آن پهنای واقعی (actual width) گلیف kashida می‌باشد که هیچ مبنای علمی و منطقی ندارد و به‌هر حال کد فوق آنچه را که انتظار مي‌رود انجام نمی‌دهد و به همین دلیل هم در نسخهٔ بعدی حذف گردیده است.

اما کد جایگزین در آخرین نسخهٔ، 23.0، بستهٔ xepersian، که در تاریخ ‎2020-05-16‎ منتشر شده، در فایل kashida-xepersian.def بسیار جالب‌تر و به‌صورت زیر است:

کد: انتخاب همهٔ
\chardef\xepersian@lrm="200E % left to right mark

...

\def\xepersian@kashida{%
  \if@Kashida@on
    \xepersian@zwj
    \xepersian@lrm
    \nobreak
    \leaders\hrule height \XeTeXglyphbounds\tw@
    \the\XeTeXcharglyph\xepersian@kashidachar
    depth \XeTeXglyphbounds\f@ur
    \the\XeTeXcharglyph\xepersian@kashidachar
    \hskip0pt plus 0.5em
    \xepersian@zwj
  \fi
}

ملاحظه می‌شود که کد فوق همان کدی است که توسط Jonathan Kew در Issue with Arabic Typography-012239 ارائه شده است و در پیام‌های قبلی در مورد آن توضیح داده شد. اما ‎\xepersian@lrm‎ نیز همان کاراکتر ‎(left to right mark) "200E"‎ است که در بستهٔ xepersian-hm معرفی شده است. این یعنی کپی تام و تمام ایده‌های دیگران بدون آنکه هیچ ایدهٔ جدیدی از طرف مؤلف xepersian مطرح شود که قبلاً هم در این پیام بر آن تأکید شده بود. برای حسن ختام این بحث خوب است یک‌بار دیگر نظر ایشان را که در بالا ذکر شده بود تکرار کنیم:

[نمایش]
«این روش درست کردن کشیده کیفیت پایینی داره و اصولی نیست (این فقط یک وصله‌کاری هست). بنابراین من استفاده از این بسته رو پیشنهاد نمی‌کنم.»

در سایت مربوطه از این گفتار‌ و کردارهای ناسازگار ایشان به وفور وجود دارد. البته این موارد در بحث‌های این تاپیک نمی‌گنجد اما اگر فرصتی پیش آید در آینده نمونه‌های دیگری هم به عرض خواهد رسید.

با تشکر
mingranina
 
پست‌ها : 77
تاریخ عضویت: 17 سپتامبر 2016, 07:53

انتشار نسخهٔ جدید، 0.5f، بستهٔ xepersian-hm

پستتوسط mingranina » 21 مه 2020, 13:19

با سلام

نسخهٔ جدید، 0.5f، بستهٔ xepersian-hm منتشر شده است. این بسته در تاریخ ‎2020-05-20‎ در سایت ‎CTAN‎ آپلود شده و در تاریخ ‎2020-05-20‎ تحت عنوان ‎Revision 55222‎ در مخزن ‎TeXLive‎ قرار گرفته است.

فایل‌های حذف شده: ‎ ‎
فایل‌های اضافه شده: ‎ ‎

تغییرات:

- حجم فایل‌های کمکی (به کمی بیش از نصف) کاهش یافته است.

- در صورتی که کاربر از گزینهٔ ‎Kashida=glyph‎ استفاده کند یک پیام هشدار به وی یادآوری می‌کند که گزینهٔ مذکور آزمایشی است و نباید آن را پایدار در نظر گرفت.

با تشکر

پ.ن.1- زمان‌های اعلام شده در متن پیام به وقت محلی سایت مربوطه است.
mingranina
 
پست‌ها : 77
تاریخ عضویت: 17 سپتامبر 2016, 07:53

انتشار نسخهٔ جدید، 1.0b، بستهٔ xepersian-hm

پستتوسط mingranina » 06 ژوئن 2020, 19:30

با سلام

نسخهٔ جدید، 1.0b، بستهٔ xepersian-hm منتشر شده است. این بسته در تاریخ ‎2020-06-04‎ در سایت ‎CTAN‎ آپلود شده و در تاریخ ‎2020-06-04‎ تحت عنوان ‎Revision 55417‎ در مخزن ‎TeXLive‎ قرار گرفته است.

در این نسخه برای گزینهٔ Kashida پنج مقدار وجود دارد:
1. Kashida=glyph

در این حالت از نویسهٔ kashida برای پر کردن شکاف‌ها استفاده می‌شود. در حروفچینی با این گزینه از فایل کمکی ‎\jobname.aux‎ برای ذخیره بعضی از دستورات، مکان فعلی در صفحه و مراجع استفاده می‌شود و برای متن طولانی ممکن است اندازهٔ فایل بسیار بزرگ باشد. این گزینه در حال حاضر آزمایشی است. فایل kashida-glyph-example.pdf حاوی 10 نمونهٔ حروفچینی با این گزینه است.
2. Kashida=leaders+glyph

در این حالت از نویسهٔ kashida و ‎\leaders‎ برای پر کردن شکاف‌ها استفاده می‌شود و برای فونت‌های پیچیده‌ای مثل فونت نوار (Navaar) و سایه (Sayeh) در فونت‌های سری HM (منتج از فونت‌های X Series 2) نیز قابل استفاده است. در حال حاضر فقط ‏فونت‌های سری HM‏ از این گزینه پشتیبانی می‌کنند. فایل kashida-leaders-glyph-example.pdf حاوی 10 نمونهٔ حروفچینی با این گزینه است.
3. Kashida=leaders+hrule

در این حالت همانند بستهٔ XePersian از ‎\hrule‎ (خط افقی) و ‎\leaders‎ برای پر کردن شکاف‌ها استفاده می‌شود. البته مشکلات مربوطه در بستهٔ XePersian ر فع شده است. فایل kashida-leaders-hrule-example.pdf حاوی 10 نمونهٔ حروفچینی با این گزینه است.
4. Kashida=On

این حالت شبیه گزینهٔ Kashida=leaders+glyph است.
5. Kashida=Off

در این حالت ویژگی kashida به‌طور کامل غیر فعال می‌شود و فقط بستهٔ XePersian بارگیری (load) می‌شود. فایل kashida-xep-XB-example.pdf حاوی 10 نمونهٔ حروفچینی با این گزینه است.

گزینهٔ Kashida=Off از این جهت مهم است که هر گونه کُد آزاردهنده و یا محدودیت‌های نامربوطی که هر از چندگاهی توسط مؤلف بستهٔ XePersian اضافه می‌شود را می‌توان بدون تغییر فایل‌های بستهٔ XePersian و bidi به سادگی خنثی و حذف کرد. از جملهٔ این کُدهای آزاردهنده و یا محدودیت‌های
نامربوط می‌توان به موارد زیر اشاره کرد:

- حذف فونت پیش‌فرض در بستهٔ XePersian و الزام کاربر به استفاده صریح از دستور ‎\settextfont‎ که علیرغم مخالفت‌ها بر کاربران تحمیل شد
و هنوز هم می‌شود. برای توضیحات بیشتر لطفاً پیام‌های تنظیم قلم پیش فرض برای زی‌پرشین و درخواست تعیین یک فونت پیش‌فرض برای متن پارسی در زی‌پرشین را در سایت مربوطه ببینید.

- چاپ لوگوی XePersian و bidi به‌صورت پیش‌فرض در صفحهٔ اول هر نوشتار اعم از مقاله، گزارش و کتاب که مؤلف XePersian پس از آنکه در پیامی با عنوان Suppress `bidi`'s logo when using `polyglossia` در سایت SE مورد اعتراض قرار گرفت مجبور به حذف آن شدند. برای توضیحات بیشتر لطفاً پیامی با عنوان ‏چه تغییری در نسخه 20.8 بسته xepersian و نسخه 32.3 بسته bidi صورت گرفته است؟‏ را در سایت مربوطه نیز ببینید.

- فیلترینگ فونت‌های سری HM که باز هم مؤلف XePersian مجبور به حذف آن شدند و در همین تاپیک به تفصیل در مورد آن بحث شده است.

با تشکر
mingranina
 
پست‌ها : 77
تاریخ عضویت: 17 سپتامبر 2016, 07:53

پاسخ: حروفچینی فارسی در زیپرشین (XePersian) و بای‌دای (bidi)

پستتوسط sei » 15 ژوئیه 2020, 16:23

سلام،

من خیلی متوجه نشدم که چه مشخصاتی باید در فونت باشد که مدل leaders+glyph قابل اجرا باشد. من از فونت‌های سایت fontiran.ir استفاده می‌کنم (مثل فونت فرهنگ) اما برنامه xepersian-hm عملا فقط با اسم فونت‌های خاصی کار می‌کند. سعی در تغییر آن بخش کد که اسم فونت‌ها را گذاشته کردم اما جواب نگرفتم. اصولا فونت چه مشخصاتی باید داشته باشد که این پکیج روی آن کار کند؟ چرا پکیج به اسم فونت حساس است؟

پی‌نویس: من نویسنده آن پرسشی در سایت stackexchange هستم که شما از پاسخ David Carlisle به من در کدتان استفاده کردید: https://tex.stackexchange.com/questions ... 721#356721
از این که نام ارائه دهندهٔ‌ راه حل را در کد آورده‌اید (دیوید) خوشحال شدم. من راه حل دیوید را دنبال کردم اما متاسفانه به همان مشکلاتی خوردم که شما در مثالهای مد گلیف داشته‌اید.
sei
 
پست‌ها : 11
تاریخ عضویت: 13 ژانویه 2017, 12:13

پاسخ: حروفچینی فارسی در زیپرشین (XePersian) و بای‌دای (bidi)

پستتوسط mingranina » 16 ژوئیه 2020, 06:55

باسلام

با توجه به راهنمای بسته، گزینهٔ ‎leaders+glyph‎ در حال حاضر فقط توسط فونت‌های سری HM پشتیبانی می‌شود.

با تشکر
mingranina
 
پست‌ها : 77
تاریخ عضویت: 17 سپتامبر 2016, 07:53

انتشار نسخهٔ جدید، 1.1a، بستهٔ xepersian-hm

پستتوسط mingranina » 05 سپتامبر 2020, 19:13

با سلام

نسخهٔ جدید، 1.1a، بستهٔ xepersian-hm منتشر شده است. این بسته در تاریخ ‎2020-09-04‎ در سایت ‎CTAN‎ آپلود شده و در تاریخ ‎2020-09-04‎ تحت عنوان ‎Revision 56264‎ در مخزن ‎TeXLive‎ قرار گرفته است.

فایل‌های حذف شده:
‎doc-ligature-xephm.pdf, kashida-glyph-example.pdf, kashida-glyph-example.tex, kashida-leaders-glyph-example.pdf, kashida-leaders-glyph-example.tex, kashida-leaders-hrule-example.pdf, kashida-leaders-hrule-example.tex, kashida-xep-XB-example.pdf, kashida-xep-XB-example.tex‎

فایل‌های اضافه شده:

‎xepersian-hm-common-kashida.tex, doc-ligature-xepersian-hm.pdf, xepersian-hm-glyph.pdf, xepersian-hm-glyph.tex, xepersian-hm-leaders-glyph.pdf, xepersian-hm-leaders-glyph.tex, xepersian-hm-leaders-hrule.pdf, xepersian-hm-leaders-hrule.tex, xepersian-XB.pdf, xepersian-XB.tex ‎

تغییرات:

- در این نسخه می‌توان رنگ کشیده را تغییر داد.

این ویژگی پیشتر در بستهٔ TeXNegar پیاده‌سازی شده بود. برای توضیحات بیشتر در مورد بستهٔ TeXNegar لطفاً The texnegar package - User Documentation, The texnegar package - Source code Documentation را ببینید.


برای مشاهدهٔ نمونه‌هایی که با گزینه‌های مختلف بستهٔ xepersian-hm و بستهٔ XePersian تولید گردیده و مقایسه آن‌ها و همچنین راهنمای کاربر و راهنمای کد منبع، لطفاً فایل‌های زیر را ببینید:


با تشکر

پ.ن.1- زمان‌های اعلام شده در متن پیام به وقت محلی سایت مربوطه است.
mingranina
 
پست‌ها : 77
تاریخ عضویت: 17 سپتامبر 2016, 07:53

قبلی


بازگشت به خط، زبان و قلم‌سازی


کاربران حاضر در این انجمن: بدون کاربران آنلاین و 3 مهمان