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

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

رفع خطا جدول ریاضی‌نویسی مراجع شکل شماره‌گذاری xepersian فهرست مطالب منابع فونت bidi اسلاید parsilatex تک‌لایو زی‌پرشین پانویس بیمر پاورقی بیب‌تک ویرایشگر biditexmaker tikz نماد bibtex قالب سربرگ واژه‌نامه رسم شکل هدر ماتریس اندازه فونت texstudio ارجاع‌دهی bidipresentation beamer رسم جدول اسلاید فارسی عنوان فصل عنوان شکل حاشیه محیط قضیه گراف زیرنویس شکل رنگ عدم اجرا مکان شکل اعمال نشدن تغییرات در پی‌دی‌اف tabriz_thesis متن لاتین و فارسی حروف‌چینی کد شماره صفحه فرمول فرمول‌نویسی فارسی‌تک فهرست اشکال tikzpicture خروجی فاصله‌گذاری listings align شماره فصل enumerate نیم‌فاصله itemize texlive2015 فرمول چندضابطه‌ای بسته شماره‌گذاری صفحات glossaries biditufte-book سوال امتحانی تصویر نمایه texlive2016 texmaker نمودار کادر پیوست‌ دیاگرام کپشن خطا فصل‌نویسی تنظیم جدول hyperref الگوریتم شماره پاورقی تک لایو 2015 aimc46 فونت فارسی و انگلیسی کاما اندیس iust-thesis میک‌تک سوال چهارگزینه‌ای لاتک فرمول طولانی lollipop xindy چپ‌چینی جستجوی معکوس تورفتگی subfigure پوستر به‌روزرسانی بسته حروف‌چینی چندستونی multicol میکروسافت ورد winedt قالب پایان‌نامه آکولاد عنوان بخش شماره گذاری اعداد فارسی صفر توخالی بیرون‌زدگی شمارنده فصل header فهرست جداول فلش جایابی تصویر texworks caption زیرنویس فاصله بین خطوط فاصله سطرها شکست خط فاصله خطوط فهرست نمادها kashida tabriz-thesis biditools محیط ریاضی pdf پانویس پاراگرافی شماره فرمول شماره‌گذاری فرمول bidihl کمک مالی الگوریتم‌ قرآن اوبونتو ماکرونویسی پیکان equation جدول افقی fancyhdr عکس جداکننده رسم نمودار توابع فونت ایتالیک نوشتافت رسم گراف قالب کتاب پانویس افقی پاراگراف‌بندی وسط‌چینی افقی فونت بولد رسم کادر بولد متلب tabular extrafootnotefeatures text baselineskip شماره قسمت فرمول چندخطی neveshtuft شکستن جدول tex-programming بازیابی اطلاعات آپدیت texlive algorithm2e غلط‌گیری املایی ایتالیک لوگو sumatra bidipoem matlab eps xelatex texlive2014 زیرنویس لاتین computeautoilg متن دوستونه متن فارسی و انگلیسی xebaposter نمونه اسلاید. خطا یابی خطا در اجرا tcolorbox متن دو ستونه اجرا نشدن فایل هایپرلینک rsync یال شعر cite اندازه قلم font todonotes فرمول بولد
5 نفر آنلاین
0 عضو و 5 مهمان در سایت حاضرند
بازدید امروز: 602
بازدید دیروز: 4882
بازدید کل: 2932532

اشکال در نمایش آیتم‌ها در محیط itemize با تغییر رنگ

0 رای
56 بازدید

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

نسخه ۲۰۱۷ تک‌لایو و زی‌پرشین استفاده شده است.

enter image description here

توجه
اگر در ابتدای محیط رنگ را عوض کنیم چنین مشکلی نداریم یعنی چیدمان درست و رنگ تمام آیتم‌ها به درستی عوض می شود.

فایل‌های پیوست
سوال شده 15 تیر 1396 توسط محمد رحمانی (29 امتیاز)

2 پاسخ

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

دستور \color برای رنگی کردن متن از \special استفاده می‌کند که یک سری دستورالعمل را برای درایور می‌فرستد که مسئولیت رنگی کردن متن را دارد. این دستور در محیط راست به چپ مشکل دارد (مشکل از الگوریتم TeX--XeT در خود موتور زی‌تک است). برای اینکه دستور \color نیز در محیط راست به چپ به درستی کار کند، بسته bidi تغییراتی در بسته‌های color و xcolor می‌دهد. در نتیجه برای اینکه رنگ همیشه به درستی کار کند باید تک در حالت افقی و نه عمودی باشد. به عنوان نمونه اگر یک پاراگراف با دستور \color شروع شود (محیط عمودی) به مشکل برمی‌خورید.

\documentclass{article}
\usepackage{color}
\usepackage{xepersian}
\settextfont{Yas}
\begin{document}
{\color{red}
این رنگ قرمز%
}
است.
\end{document}

برای درست شدن رنگ باید از محیط عمودی خارج شوید و چاره راه یک \leavevmode است.

\documentclass{article}
\usepackage{color}
\usepackage{xepersian}
\settextfont{Yas}
\begin{document}
{\leavevmode\color{red}
این رنگ قرمز%
}
است.
\end{document}

در نمونه شما هم رنگ به خوبی عمل نمی‌کند زیرا که رنگ در محیط عمودی به کار رفته است. حتی تک به شما هشدار می‌دهد:

\endL or \endR problem (0 missing, 1 extra) in paragraph at lines 12--14
[][]\TU/Yas(0)/m/n/10 برای تغییر رنگ فقط یک آیتم [][] 

متاسفانه در اینجا نمی‌توان از \leavevmode استفاده کرد زیرا که با خطا روبرو می‌شوید. در چنین مواردی پیشنهاد می‌کنم که از بسته xecolor استفاده کنید که رنگ جزیی از خواص قلم است نه درایور.

\documentclass{article}
\usepackage{xecolor}
\usepackage{xepersian}
\settextfont{Yas}
\begin{document} 
\begin{itemize}
\xecolor{red}
 \item اولین مورد
 \item دومین مورد
 \item مورد دیگر
{\xecolor{blue}
\item برای تغییر رنگ فقط یک آیتم
}
\item مورد آخر
\end{itemize}
\end{document}
پاسخ داده شده 15 تیر 1396 توسط وفا (16,910 امتیاز)
انتخاب شده 16 تیر 1396 توسط محمد رحمانی
مشکل حل شد.
به نظر میرسد در استفاده از زی لاتک بهتر است از xecolor استفاده شود.
متشکرم
0 رای

چون من با آپشن localise چندان مأنوس نیستم پاسخم را با دستورهای لاتین می‌نویسم. اول اینکه بهتر است کل محیط itemize یا enumerate را داخل محیط رنگی بگذاریم یعنی:

{\color{magenta}\begin{itemize}
 \item 
\end{itemize}}

با این کار علاوه بر متن، رنگ گلوله‌های کنار متن (bullet) نیز تغییر می‌کند. برای تغییر رنگ تنها یکی از آیتم‌ها از دستور \textcolor{<color>}{<text>} استفاده کنید:

\item \textcolor{blue}{برای تغییر رنگ فقط یک آیتم}

اما این فقط رنگ متن را عوض می‌کند و چنانچه بخواهید رنگ گلوله کنار متن هم عوض شود باید آیتم را به صورت زیر وارد کنید:

\item[\textcolor{blue}{\textbullet}]

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

\documentclass{article}
\usepackage{xcolor}
\usepackage{xepersian}
\settextfont{XB Niloofar}
\begin{document}  
{\color{magenta}\begin{itemize}
 \item اولین مورد
 \item دومین مورد
 \item مورد دیگر
 \item[\textcolor{blue}{\textbullet}]\textcolor{blue}{برای تغییر رنگ فقط یک آیتم}
 \item مورد آخر
\end{itemize}}
\end{document}

نتیجه:
colored itemize

پاسخ داده شده 15 تیر 1396 توسط ایمان بیات (1,738 امتیاز)
متشکرم
...