اولین بار است که به اینجا می‌آیید؟ راهنمای سایت را بخوانید!
0 رای
862 بازدید

سلام.
با توجه به عملکرد بسته bidihl، فایلهای pdf ساخته شده حجیم بوده و هنگام نمایش، رندرینگ آن کند می‌باشد. به طور مثال مثال زیر را در نظر بگیرید:

\documentclass{report}
\usepackage{bidihl}
%\usepackage{soul}
\usepackage{xepersian}
\settextfont{Yas}
\begin{document}
\begin{latin}
\bidihl{
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut purus elit, vestibulum ut, placerat ac, adipiscing vitae, felis. Curabitur dictum gravida mauris. Nam arcu libero, nonummy eget, consectetuer id, vulputate a, magna. Donec vehicula augue eu neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Mauris ut leo. Cras viverra metus rhoncus sem. Nulla et lectus vestibulum urna fringilla ultrices. Phasellus eu tellus sit amet tortor gravida placerat. Integer sapien est, iaculis in, pretium quis, viverra ac, nunc. Praesent eget sem vel leo ultrices bibendum. Aenean faucibus. Morbi dolor nulla, malesuada eu, pulvinar at, mollis ac, nulla. Cur- abitur auctor semper nulla. Donec varius orci eget risus. Duis nibh mi, congue eu, accumsan eleifend, sagittis quis, diam. Duis eget orci sit amet orci dignissim rutrum.}
\end{latin}
\end{document}

که حجم فایل تولید شده نزدیک به ۳۲ کیلوبایت خواهد بود. اگر همین فایل را با استفاده از بسته soul هایلایت نماییم، حجم فایل تولید شده ۱۳ کیلوبایت بوده و رندرینگ آن خیلی سریع خواهد بود.

\documentclass{report}
%\usepackage{bidihl}
\usepackage{color}
\usepackage{soul}
\usepackage{xepersian}
\settextfont{Yas}
\begin{document}
\begin{latin}
\hl{
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut purus elit, vestibulum ut, placerat ac, adipiscing vitae, felis. Curabitur dictum gravida mauris. Nam arcu libero, nonummy eget, consectetuer id, vulputate a, magna. Donec vehicula augue eu neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Mauris ut leo. Cras viverra metus rhoncus sem. Nulla et lectus vestibulum urna fringilla ultrices. Phasellus eu tellus sit amet tortor gravida placerat. Integer sapien est, iaculis in, pretium quis, viverra ac, nunc. Praesent eget sem vel leo ultrices bibendum. Aenean faucibus. Morbi dolor nulla, malesuada eu, pulvinar at, mollis ac, nulla. Cur- abitur auctor semper nulla. Donec varius orci eget risus. Duis nibh mi, congue eu, accumsan eleifend, sagittis quis, diam. Duis eget orci sit amet orci dignissim rutrum.}
\end{latin}
\end{document}

آیا این عملکرد قابل بهبود است؟

البته من اشتباه کردم. اگر تعریف دومی را جایگزین تعریف اولی کنید، در حالت چپ به راست حجم فایل را از ۳۲ کلیوبایت به ۱۲ کیلوبایت کاهش می‌دهد (حتی کمتر از حجمی که بسته soul تولید می‌کند).
ویرایش شده توسط
توسط (25.1k امتیاز)

1 پاسخ

+2 رای
 
بهترین پاسخ

بسته bidihl و soul روشهای متفاوتی برای انجام این کار دارند. گذشته از این در زی‌تک باگ‌هایی وجود دارند (اگر در پرسش اولیه خود به یاد داشته باشید من آنجا گفتم که باید برای دو باگ در زی‌تک راه‌حلی پیدا کنم). بنابراین روشی که بسته bidihl انجام می‌دهد بهترین روش ممکن نیست اما در حال حاضر تنها راه برای انجام این کار است.

به عنوان مثال، بسته bidihl تعریف دستور \bidihl را اینگونه انجام می‌دهد:

\def\bidihl@skip#1{%
        \leaders\hb@xt@\bidihl@pixel{\hss{\color{bidihlcolor}\vrule\@height\bidihlboxheight\@depth\bidihl@depth}\hss}\hskip#1\relax}

در حالی که تعریف در حالت عادی خود باید بصورت زیر باشد:

\def\bidihl@skip#1{%
        {\color{bidihlcolor}\leaders\hrule\@height\bidihlboxheight\@depth\bidihl@depth\hskip#1\relax}}

اما بدین صورت رنگ leak می‌کند و جاهایی که نمی‌خواهیم رنگی باشد رنگی می‌شود. اگر تعریف دوم را جایگزین تعریف اول کنید، می‌بینید که حجم فایل به ۱۵ کیلوبایت کاهش پیدا می‌کند.

متأسفانه تا زمانی که باگ‌های دوجهته در زی‌تک باقی است، نمی‌توان این عملکرد را حداقل در مورد راست به چپ بهبود داد.

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

7.1k پرسش

6.6k پاسخ

23.5k نظر

7.5k کاربر

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

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