اولین بار است که به اینجا می‌آیید؟ راهنمای سایت را بخوانید!
Close Sidebar
وب‌سایت پرسش و پاسخ پارسی‌لاتک جایی برای پرسش و پاسخ درباره سیستم حروف‌چینی لاتک و بسته زی‌پرشین است. در اینجا می‌توانید سوال‌های خود را بپرسید و به سوال‌های دیگران پاسخ دهید.

محبوب‌ترین برچسب‌ها

رفع خطا جدول مراجع xepersian ریاضی‌نویسی شکل فونت فهرست مطالب شماره‌گذاری منابع bidi پانویس بیب‌تک parsilatex تک‌لایو tikz اسلاید بیمر زی‌پرشین پاورقی سربرگ bibtex نماد رسم شکل قالب فرمول‌نویسی ارجاع‌دهی biditexmaker هدر ویرایشگر beamer واژه‌نامه اندازه فونت texstudio ماتریس عنوان فصل اعمال نشدن تغییرات در پی‌دی‌اف bidipresentation رسم جدول حاشیه شماره صفحه رنگ عنوان شکل اسلاید فارسی محیط قضیه گراف مکان شکل tikzpicture حروف‌چینی کد شماره فصل tabriz_thesis enumerate زیرنویس شکل کادر align نمایه itemize listings الگوریتم بسته نیم‌فاصله متن لاتین و فارسی عدم اجرا فهرست اشکال فاصله بین خطوط نصب تک‌لایو فارسی‌تک hyperref شماره فرمول فرمول glossaries قالب پایان‌نامه حروف‌چینی چندستونی فونت فارسی و انگلیسی نمودار خروجی biditools ماکرونویسی کپشن پیوست‌ فاصله‌گذاری فرمول چندضابطه‌ای سوال امتحانی subfigure header شماره پاورقی tex لاتک biditufte-book texmaker تصویر texlive2015 میک‌تک pdf شمارنده زیرنویس خطا شماره‌گذاری صفحات دیاگرام texlive2016 فهرست جداول رسم نمودار تنظیم جدول longtable texworks caption اندیس extrafootnotefeatures lollipop iust-thesis multicol فصل‌نویسی kashida سوال چهارگزینه‌ای قاب تورفتگی آکولاد فاصله عمودی پایان نامه xindy چپ‌چینی اوبونتو شعر میکروسافت ورد بولد geometry fancyhdr تک لایو 2015 به‌روزرسانی بسته اعداد فارسی aimc46 فرمول طولانی بیرون‌زدگی کاما وسط‌چینی عنوان بخش پوستر فاصله سطرها نوشتافت شکست خط tex-programming قرآن tabriz-thesis ایتالیک winedt جستجوی معکوس texlive فلش جایابی تصویر tcolorbox صفر توخالی قالب کتاب پاراگراف‌بندی فونت اعداد pgfplots بازیابی اطلاعات فهرست نمادها شمارنده فصل محیط ریاضی رسم کادر xelatex جداکننده جدول طولانی شماره‌گذاری فرمول هایپرلینک algorithm2e proof eps جدول افقی پانویس چندستونی فهرست تصاویر شماره گذاری کمک مالی فاصله خطوط حروف‌چینی شعر فونت بولد زیرشکل equation bidipoem عکس ltrfootnote پیوست computeautoilg به‌روزرسانی فرمول چندخطی neveshtuft غلط‌گیری املایی تک‌پارسی پیکان minipage قلم پانویس پاراگرافی baselineskip شماره قسمت قسمت عنوان جدول متن فارسی و انگلیسی قالب مجله xebaposter bidihl
2 نفر آنلاین
0 عضو و 2 مهمان در سایت حاضرند
بازدید امروز: 67
بازدید دیروز: 6278
بازدید کل: 15242229

چند تغییر جزیی در بسته «قرآن»

+3 رای
339 بازدید

پیرو پیشنهادات جناب آقای مسعود یزدانی ذیل پرسش http://qa.parsilatex.com/7957 تغییرات ذیل در بسته قرآن اعمال گردید:

۱- در صورت استفاده از دستور \surahname دیگر عبارت سورة و یا Surah را نخواهیم داشت.

۲- در صورتی که با استفاده از دستور \quranayah تنها آیه اول سوره درخواست شود دیگر عبارت بسمله را نخواهیم داشت.

در سوره مبارکه
\surahname[112] 
خداوند می‌فرمایند: 
«\quranayah*[112][1]».

enter image description here

همانطوری در تصویر مشاهده می‌فرمایید عبارت بسمله نوشته نشده است.
۳- نکتهٔ دیگری که وجود آن ضروری به نظر می‌رسید بخصوص در حالاتی مشابه حالات فوق عدم وجود شماره آیه است.
بدین منظور گزینه دیگری به بسته افزوده شده است که سبب می‌شود هیچ‌ شماره آیه‌ای درج نگردد؛ گزینه nonumber. در صورتی که نخواهید بسته را با این گزینه بارگذاری کنید می‌توانید از دستور \ChangeAyahNumber استفاده کنید تا شماره آیات درج نگردد و اگر در حالتی باشید که شماره آیات درج نمی‌شود آن را به حالت سابق برگرداند.
نحوه اسفاده هم می‌تواند مشابه زیر باشد:

{\ChangeAyahNumber
\quransurah*
}

\quransurah*

enter image description here

حال با کمک این دستور همان عبارت قبلی را دوباره بازنویسی می‌کنیم:

در آیهٔ اول سوره مبارکه
\surahname[112] 
خداوند می‌فرمایند:%
{\ChangeAyahNumber%
«\quranayah*[112][4]».}

enter image description here

تنها مشکلی که فعلا ایجاد شده و هنوز نتوانستم رفعش کنم این است که زمان کامپایل در حالت ستاره‌دار به صورت نمایی افزایش یافته است.

برای مثال دستور \quranjuz[1-30] در چند ثانیه کل قرآن را حروفچینی می‌کند لکن فرم ستاره دار آن یعنی دستور \quranjuz*[1-30] شاید در حدود یک دقیقه زمان ببرد!!! هنوز راه حلی به ذهنم نمی‌رسد از اساتید ممنون می‌شوم اگر اظهار نظر بفرمایند --البته این تاخیر زمانی مثلا برای حالتی که شما تنها ۱۰ جزء را حروفچینی کنید پیش نخواهد آمد لکن زمانی که حجم زیاد می‌شود این مشکل بروز می‌یابد--.

نسخه فعلی بسته ۰.۹۴ است لکن به سبب بروز این مشکل هنوز به CTAN داده نشده است.

ویرایش

الان تمام نسخه‌های قبلی را که نوشته بودم هم تست کردم و همین مشکل را داشت! در حالیکه اینگونه در خاطرم هست که تا قبل از همین آخرین تغییر تمام قرآن را با دستوارتی مشابه آنچه ذکر شد بدون هیچ تاخیری و تنها در چند ثانیه حروفچینی می‌کرد.

نسخه فعلی که ضمیمه گردیده است نسخه ۰.۹۴۱ است که تغییراتی در راستای کمینه کردن کد در آن انجام شده است.

اگر مطمئن شوم که مشکل از طراحی من نیست کد را هر چه سریعتر به CTAN خواهم داد.

۱۳۹۴/۱۱/۲۱ آخرین نسخه ۱/۰۵ می‌باشد. ر.ک. http://qa.parsilatex.com/16915

فایل‌های پیوست
سوال شده تیر 20, 1394 توسط سید جواد (4,345 امتیاز)
ویرایش شده بهمن 21, 1394 توسط سید جواد
این مشکل رو من حتی در نسخه‌های ابتدایی این بسته هم داشتم. به نظرم مشکل از بسته شما نیست و موتور تک برای حروفچینی یک متن بزرگ همانند قرآن در یک پاراگراف نیاز به محاسبات زیادی خواهد داشت.

برای مشخص شدن این موضوع، کد زیر را ببینید که هر سوره در یک پاراگراف قرار داده شده است:

\documentclass{report}
 \usepackage{pgffor}
\usepackage{quran}
\usepackage{xepersian}
\settextfont{Yas}

\begin{document}

\foreach \x in {1,2,...,114}
{\quransurah*[\x]\par}

\end{document}
با توجه به توضیحات شما و تست مابقی نسخه‌های قبلی بسته‌ فعلا عنوان پرسش را تغییر دادم لکن اگر دیگر دوستان هم زحمت بکشند و تست کنند ممنون خواهم شد --هر چند که آقای دکتر وفای عزیز می‌توانند حرف آخر را در این زمینه بفرمایند--.

در خصوص کدی که مرحمت فرمودید خود نیز با کمک بسته forloop مشابه این عمل را برای حتی قطعاتی به بزرگی جزء و منزل هم انجام داده بودم و مشکل نبود لکن برای کل قرآن الان با این مشکل مواجه شدم حتی چیزی تا حدود ۱۰ جزء هم مشکل خاصی ندارد.

بهرحال بازهم از این دقت نظر و لطفتان سپاسگذارم.

1 پاسخ

0 رای

با سلام
من هم تست کردم. به نظر میاد که مشکل از قراردادن کل قرآن در یک پاراگراف باشد. وقتی شما با دستور \quranjuz[1] یک جز قرآن را حروفچینی می‌کنید، بعد از هر آیه یک پاراگراف ایجاد می‌کند اما حالت \quranjuz*[1] تمام جز را در یک پاراگراف قرار می‌دهد که به نظر میاید پردازش آن زمان‌بر می‌شود. دستور

\quranjuz*[1-30]

برای من بیشت از یک دقیقه زمان برد ولی با دستور

\foreach \x in {1,2,...,30}
{\quranjuz*[\x]\par}

براحتی در حدود ۸ ثانیه کل قرآن حروفچینی شد.

اینها تجربه‌ی من از پردازش و حدس‌های شخصی هستند. در مورد واقعیت آنچه که اتفاق می‌افتد باید منتظر نظر دوستان و خصوصاً دکتر کارن‌پهلو باشیم.

پاسخ داده شده تیر 21, 1394 توسط فرشاد ترابی (2,843 امتیاز)
آقای دکتر ممنون از وقتی که گذاشتید؛ آری ظاهرا مشکل باید همین باشد. من هم منتظر نظرات دکتر کارن‌پهلو هستم --البته امیدوارم که راه حلی وجود داشته باشد--.
...