اولین بار است که به اینجا می‌آیید؟ راهنمای سایت را بخوانید!
+2 رای
2.4k بازدید

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

فایل(های) پیوست:

4 پاسخ

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

مشکل نخست ارتباطی با این بسته خاص یا بسته babel نداره. مشکل نحوه برخورد موتور لواتک هست. اگر هر جایی از نوشتار دستور \the\pagedir را قرار بدهید متوجه می‌شوید که بسته babel یا این بسته داره از دستور بدوی \pagedir TRT استفاده می‌کنه که جهت صفحه را راست به چپ می‌کنه. همینطور این بسته داره از دستور بدوی \bodydir TRT استفاده می‌کنه. این دو دستور بدوی مشکلاتی دارند و نباید استفاده بشه. در حقیقت این مشکل شباهت خیلی زیادی به این مشکل داره با اینکه از دو موتور حروف‌چین متفاوت استفاده داره میشه.

دو راه‌حل وجود داره. بسته babel و بسته خاص باید بصورت کامل بازنویسی بشه و از دستورات بدوی \pagedir و \bodydir استفاده نشه. راه‌حل دوم دقیقا راه‌حلی است که در پرسش و پاسخی که لینک کردم داده‌ام.

مشکل دوم باگ بسته babel هست و مشکل موتور نیست.

همانطوری که در این پرسش و پاسخ تاکید کردم، بسته babel باگ زیاد داره و برای کارهای روزانه مناسب نیست.

این یک فایل کمینه هست که مشکل نخست رو بدون استفاده از بسته babel نشون می‌ده. کافیه دستورات بدوی \pagedir و \bodydir رو comment کنید یا پاکشون کنید تا ببینید مشکلی وجود نخواهد داشت.

\documentclass{article}
\usepackage{amsmath}
\pagedir TRT
\bodydir TRT
\pardir TRT
\textdir TRT
\begin{document}
    \begin{align*}
    x^4-y^4 & =\\
    &=(x^2+y^2)(x^2-y^2) \\
    &=(x^2+y^2)(x+y)(x-y)
    \end{align*}
    \[
    |x|=
    \begin{cases}
    x &  x>0 \\
    -x & x<0
    \end{cases}
    \]
 \end{document}

همونطوری که مشخصه مشکل دوم اینجا وجود ندارد.

درود بر وفای عزیز
ممنون از پاسخ دقیق شما

تنها دلیل استفاده از این بسته خاص برای من سایدبار آن بوده است وگرنه همانطور که گفتید مشکلات فراوان است
توسط (216 امتیاز)
درود بر شما. از پیام شما و مهربانی شما سپاسگزارم. امیدوارم بتوانم بسته persiantex را تا پایان جولای برای انتشار نخستین نسخه رسمی آن آماده کنم. در این بسته تنها از دستورات بدوی \pardir و \textdir برای حروف‌چینی راست به چپ استفاده شده و بنابراین مشکلات اشاره شده را ندارد.
توسط (25.0k امتیاز)
–1 رای

سلام

یک راهش این است که با محیط‌های دیگری نوشته شوند. مثلاً به این صورت:

\begin{frame}
\frametitle{بخش 1}
\framesubtitle{زیربخش 1}
\begin{thm}
بزرگترین عدد اول وجود ندارد زیرا
\begin{enumerate}
    \item دلیل 1
    \item دلیل 2
\end{enumerate}
\[
\begin{split}
x^4-y^4 & =\\
&=(x^2+y^2)(x^2-y^2) \\
&=(x^2+y^2)(x+y)(x-y)
\end{split}
\]
\[
|x|=\left\{\mspace{-8mu}
\begin{array}{ll}
x &  x>0 \\
-x & x<0
\end{array}
\right.
\]
\end{thm}
\end{frame}

enter image description here


البته ممکن است اساتید مشکل اصلی را پیدا و حل نمایند.

با درود
ممنون از پاسخ شما
در حالت چند ضابطه اگر فرمول مفصل‌تر شود. باز جواب نمی‌دهد. به‌عنوان مثال به x  و -x توان دو بدهید و نتیجه را ملاحظه کنید. من یک فایل جدید بار‌گذاری کردم.
ویرایش شده توسط
توسط (1.2k امتیاز)
بله متأسفانه دوباره به‌هم می‌ریزد. منتظر اساتید باشیم شاید یک راه کلی برای این مشکل پیدا کردند.
البته پیشنهاد می‌کنم اگه براتون امکان داره از قالبی که با زی‌پرشین طراحی شده باشه، استفاده کنین که چنین مشکلاتی ندارد.
توسط (3.3k امتیاز)
–1 رای

با سلام
کلاس beamer-rl ایراداتی دارد که باید به نویسنده اش اطلاع داد.

به جای محیط

align*

می توانید از

aligned

یا

split

در محیط ریاضی

\[   \]

همانطور که آقای میرزا خانی گفتند استفاده کنید.

برای محیطهای مانند

array

و

cases

باید زبان عوض شود به صورت زیر

{\selectlanguage{nil}
    \[
    |x|=
    \begin{cases}
    x &  x>0 \\
    -x & x<0
    \end{cases}
    \]
}

و

{ \selectlanguage{nil}
          \[
        |x|=\left\{
        \begin{array}{ll}
        1-x\frac{1}{\kappa} &  x>0 \\
        -x^2 & x<0
        \end{array}
        \right.
        \]
}

enter image description here

برای محیط align برای خارج نشدن شماره های از محیط های قضیه، اثبات، مثال و دیگر بلوکهای بیمر نیز باید زبان عوض شود (شماره ها انگلیسی می شود!)

\begin{exampleblock}{	مثال: محیط  align }
			\begin{align}
			a&=b\\
			&=c
			\end{align}
			{\selectlanguage{nil}
			\begin{align}
			 a&=b\\
			   &=c
			\end{align}
		}
	\end{exampleblock}

enter image description here

–1 رای

با سلام
با به روز رسانی تکلایو مشکلات محیطهای array ، cases، align و tabular در بسته babel و بسته beamer-rl حل شده است:

% !TeX program=lualatex
\documentclass[babel={layout=lists},10pt,t]{beamer-rl}
\usepackage{amsmath}
\babelprovide[import,main,mapdigits]{persian}
\babelfont[persian]{sf}{Yas}

% Themes with a Table of Contents Sidebar
\usetheme{PaloAlto}

% Themes without Navigation Bars
%\usetheme{Madrid}

% Themes with a Mini Frame Navigation
%\usetheme{Frankfurt}

% Themes with Section and Subsection Tables
%\usetheme{Warsaw}

%\usecolortheme{spruce}
\author{نویسنده}
\institute{لوالاتک}
\title{کلاس بیمر راست به چپ}
\date{}

\providetranslation{Theorem}{قضیه}
\providetranslation{Definition}{تعریف}
\providetranslation{Example}{مثال}
\providetranslation{Remark}{توجه}
\providetranslation{Lemma}{لم}

\begin{document}
\begin{frame}
\titlepage
\end{frame}

\begin{frame}
\frametitle{\contentsname}
\tableofcontents
\end{frame}

\section{بخش 1}
\subsection{زیر بخش}
\begin{frame}
    \frametitle{بخش 1}
    \framesubtitle{زیربخش 1}
\begin{theorem}
    بزرگترین عدد اول وجود ندارد زیرا
    \begin{enumerate}
        \item دلیل 1
        \item دلیل 2
    \end{enumerate}
    \begin{align*}
    x^4-y^4 & =\\
    &=(x^2+y^2)(x^2-y^2) \\
    &=(x^2+y^2)(x+y)(x-y)
    \end{align*}
  \[
|x|=\left\{\mspace{-8mu}
\begin{array}{ll}
1-x\frac{1}{\kappa} &  x>0 \\
-x^2 & x<0
\end{array}
\right.
\]
\end{theorem}
\end{frame}

\section{تست محیط های array, cases, tabular}
\begin{frame}{تست array, cases, tabular}

\begin{example}[محیط cases]
		\[ f=
\begin{cases}
A_{1}^2 &  x>0\ \text{اگر}\\
B_{1}^2 & x<0\ \text{اگر}
\end{cases}\]
$ f=
\begin{cases}
A_{1}^2 &  x>0\ \text{اگر}\\
B_{1}^2 & x<0\ \text{اگر}
\end{cases} $

\begin{align}
	a&=b+c\\
	d&=e+f+g
\end{align}
\end{example}

\end{frame}

\begin{frame}{تست array, cases, tabular}
	
\begin{alertblock}{بلوک هشدار!}
	
	\begin{equation}
		f=\left\{
		\begin{array}{ll}
			A_{1}^2 &  x>0\ \text{اگر}\\
			B_{1}^2 & x<0\ \text{اگر}
		\end{array}
		\right.
	\end{equation}	
	\[	f=\left\{
	\begin{array}{ll}
		A_{1}^2 &  x>0\ \text{اگر}\\
		B_{1}^2 & x<0\ \text{اگر}
	\end{array}
	\right.\]				
	\begin{table}
		\caption{یک جدول نمونه در وسط خط}
		\begin{tabular}{|l|l|}
			\hline
			\text{ستون سمت چپ} & \text{ستون سمت راست} \\  		          
			\hline
			$ a+b+c $ &  $ a+b+c $ \\
			\hline
			$ a $ & $ d $\\
			\hline
		\end{tabular}
	\end{table}
\end{alertblock}
\end{frame}

\end{document}

enter image description here
enter image description here
enter image description here
enter image description here
enter image description here

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

سطر ۵۳ تا ۵۷ فایل amsmath-xetex-bidi.def را ببینید:

https://tug.org/svn/texlive/trunk/Master/texmf-dist/tex/xelatex/bidi/amsmath-xetex-bidi.def?revision=62073&view=markup

همینطور راه‌حلی که چند سال پیش در سایت tex.stackexchange درج کردم را ببینید:

https://tex.stackexchange.com/questions/134061

همچنین پرسش مولف beamer-rl و پاسخی که لینک به پاسخ من می‌دهد را ببینید:

https://tex.stackexchange.com/questions/621820

در آخر تغییر بسته babel را ببینید:

https://tug.org/svn/texlive/trunk/Master/texmf-dist/tex/generic/babel/luababel.def?r1=62166&r2=62165&pathrev=62166

کامنت زیر را خواهید دید:

 % Hackish, for proper alignment. Don’t ask me why it works!:
توسط (25.0k امتیاز)
همچنین فاصله قبل و بعد فرمول‌های نمایشی یا display math نادرست است.
توسط (25.0k امتیاز)
درود بر وفای عزیز
منتظر بسته `bidi` شما هستیم که فرمودید مشکلات با `beamer` راحل خواهید نمود

سپاس فراوان بابت دقت نظر و پاسخ سریعتان
توسط (216 امتیاز)
پرسیدن سوال
وب‌سایت پرسش و پاسخ پارسی‌لاتک جایی برای پرسش و پاسخ درباره سیستم حروف‌چینی لاتک و بسته زی‌پرشین است. در اینجا می‌توانید سوال‌های خود را بپرسید و به سوال‌های دیگران پاسخ دهید.

7.1k پرسش

6.6k پاسخ

23.5k نظر

7.2k کاربر

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

رفع خطا جدول 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
...