تالار گفتگوی پارسیلاتک
لاتک LATEX => ریاضیات و علوم => نويسنده: هادی صفیاقدم در مه 18, 2012, 08:32:06 pm
-
وقتی از دستور \everymath{\displaystyle} استفاده میکنم،
اعداد داخل فرمولهایی که داخل متن فارسی هستن و
به عبارتی Inline text هستن، به صورت لاتین درمیاد.
برای حلش راهی هست؟
-
استفاده از \displaystyle اصولی نیست چون اگر به کارگاههایی که من در مورد زیپرشین در ایران داشتم آمدید و توضیح مرا در ارتباط با دستور بدوی \limits دقت کرده بودید، من در آنجا گفتم که استفاده از \displaystyle باعث تفاوت فاصله بین بندها میشود که بسیار خروجی را زشت میکند.
به هر حال، علت مشکل شما این است که در استفاده از \everymath باید محتاط باشید چون بستههای دیگر (مانند amsmath و xepersian-mathsdigitspec) از این دستور استفاده میکنند و اگر شما از این دستور به این شکل:
\everymath{\displaystyle}
استفاده کنید، تمام کارهایی که این بستهها انجام میدهند از بین خواهد رفت و در نتیجه خروجی شما مشکل خواهد داشت. نحوه صحیح انجام این کار به این صورت است:
\everymath\expandafter{\the\everymath\displaystyle}
با این کار شما علاوه بر اینکه تعریفات خودتون رو انجام میدهید، تغییرات بستههای دیگر را هم حفظ میکنید.
-
... نحوه صحیح انجام این کار به این صورت است:
\everymath\expandafter{\the\everymath\displaystyle}
با این کار شما علاوه بر اینکه تعریفات خودتون رو انجام میدهید، تغییرات بستههای دیگر را هم حفظ میکنید.
یا اینکه میتونی از بسته everyhook برای این کار استفاده کنی:
http://ctan.org/pkg/everyhook