سلام، لطفا وارد شوید یا عضو شوید.

نویسنده موضوع: چطور بنویسم ۱۰kg/m3 به طوری که ۱۰ فارسی و ۳ لاتین باشد؟  (دفعات بازدید: 3758 بار)

آفلاین فکورپور

  • Newbie
  • *
  • تشکر
  • -اهدا شده: 8
  • -دریافت شده: 2
  • ارسال: 10
    • ديدن مشخصات
این مشکل برای مقادیری که واحد (دیمانسیون) دارند، یا برای فرمولهای شیمیایی بارز است. راه درست آن چیست؟

آفلاین وحید دامن‌افشان

  • Administrator
  • Hero Member
  • *****
  • تشکر
  • -اهدا شده: 452
  • -دریافت شده: 718
  • ارسال: 2,107
    • ديدن مشخصات
    • http://www.damanafshan.ir
یک راه می‌تونه به صورت
\documentclass{article}
\usepackage{amsmath}
\usepackage{xepersian}
\begin{document}
$10\dfrac{kg}{m^\text{\lr{3}}}$
\end{document}
باشه. اگر هم تعداد موارد این‌چنینی، زیاد هستش، برای صرفه‌جویی در وقت، می‌تونین یه دستور براش تعریف کنین:
\documentclass{article}
\usepackage{amsmath}
\usepackage{xepersian}
\newcommand{\lnum}[1]{\text{\lr{#1}}}
\begin{document}
$10\dfrac{kg}{m^\lnum{3}}$
\end{document}

آفلاین vafa

  • مشاور
  • Hero Member
  • *
  • تشکر
  • -اهدا شده: 78
  • -دریافت شده: 2012
  • ارسال: 4,429
    • ديدن مشخصات
\documentclass{article}
\usepackage{amsmath}
\usepackage{xepersian}
\newcommand*{\switchdigitsinsidemathmode}{%
\DeclareMathSymbol{0}{\mathalpha}{operators}{`0}%
\DeclareMathSymbol{1}{\mathalpha}{operators}{`1}%
\DeclareMathSymbol{2}{\mathalpha}{operators}{`2}%
\DeclareMathSymbol{3}{\mathalpha}{operators}{`3}%
\DeclareMathSymbol{4}{\mathalpha}{operators}{`4}%
\DeclareMathSymbol{5}{\mathalpha}{operators}{`5}%
\DeclareMathSymbol{6}{\mathalpha}{operators}{`6}%
\DeclareMathSymbol{7}{\mathalpha}{operators}{`7}%
\DeclareMathSymbol{8}{\mathalpha}{operators}{`8}%
\DeclareMathSymbol{9}{\mathalpha}{operators}{`9}%
}
\begin{document}
$10\dfrac{kg}{m^{\switchdigitsinsidemathmode 3}}$
\end{document}

آفلاین فرشاد ترابی

  • مدیر تالار
  • Hero Member
  • **
  • تشکر
  • -اهدا شده: 204
  • -دریافت شده: 474
  • ارسال: 1,779
    • ديدن مشخصات
من فکر می‌کردم به صورتی که در کد زیر آوردم می‌شد مشکل را حل کرد ولی جواب نداد. چرا؟

\documentclass[a4paper,12pt]{article}

\usepackage{xepersian}
\settextfont{XB Niloofar}

\newcommand{\dd}[1]{\DefaultMathsDigits {#1} \AutoMathsDigits}

\begin{document}
$
x=10\dd{m^2}
$
\end{document}

آفلاین vafa

  • مشاور
  • Hero Member
  • *
  • تشکر
  • -اهدا شده: 78
  • -دریافت شده: 2012
  • ارسال: 4,429
    • ديدن مشخصات
من فکر می‌کردم به صورتی که در کد زیر آوردم می‌شد مشکل را حل کرد ولی جواب نداد. چرا؟

\documentclass[a4paper,12pt]{article}

\usepackage{xepersian}
\settextfont{XB Niloofar}

\newcommand{\dd}[1]{\DefaultMathsDigits {#1} \AutoMathsDigits}

\begin{document}
$
x=10\dd{m^2}
$
\end{document}
دستورات \DefaultMathsDigits و \AutoMathsDigits تنها در صورتی کار خواهند کرد که قبل از محیط ریاضی استفاده شوند. بنابراین با استفاده از این دستورات نمی‌توان اعداد را وسط محیط ریاضی تغییر داد.

در تعریف دستور \dd شما من دلیل بودن {} را دور #1 نمی‌دونم.

آفلاین فرشاد ترابی

  • مدیر تالار
  • Hero Member
  • **
  • تشکر
  • -اهدا شده: 204
  • -دریافت شده: 474
  • ارسال: 1,779
    • ديدن مشخصات
در تعریف دستور \dd شما من دلیل بودن {} را دور #1 نمی‌دونم.
دلیلش اینه که اصولاً واحدها باید به صورت غیرایتالیک باشه و در اصل در دستور بالا باید \mathrm{#1} باشه. اما از آنجا
که من هنوز نتونستم تک‌لایو ۲۰۱۳ را دریافت و نصب کنم، دستور mathrm برای من پیغام خطا میده. به همین دلیل فعلا
موقتا mathrm را حذف کردم تا بعد از نصب تک‌لایو ۲۰۱۳ دوباره دستور mathrm را در جای خود قرار بدم.

آفلاین vafa

  • مشاور
  • Hero Member
  • *
  • تشکر
  • -اهدا شده: 78
  • -دریافت شده: 2012
  • ارسال: 4,429
    • ديدن مشخصات
دلیلش اینه که اصولاً واحدها باید به صورت غیرایتالیک باشه و در اصل در دستور بالا باید \mathrm{#1} باشه. اما از آنجا
که من هنوز نتونستم تک‌لایو ۲۰۱۳ را دریافت و نصب کنم، دستور mathrm برای من پیغام خطا میده. به همین دلیل فعلا
موقتا mathrm را حذف کردم تا بعد از نصب تک‌لایو ۲۰۱۳ دوباره دستور mathrm را در جای خود قرار بدم.
متوجه شدم. برای درست شدن این مشکل حتماً الزامی به داشتن تک‌لایو 2013 ندارید. اگر تک‌لایو 2012 خود را هم بروز کنید، مشکلی نخواهید داشت.
« آخرين ويرايش: مه 14, 2013, 08:30:12 am توسط وفا خلیقی »

آفلاین vafa

  • مشاور
  • Hero Member
  • *
  • تشکر
  • -اهدا شده: 78
  • -دریافت شده: 2012
  • ارسال: 4,429
    • ديدن مشخصات
یک راه‌حل دیگر:
\documentclass{article}
\usepackage{amsmath}
\usepackage{xepersian}
\newcommand\swtichtolatin{%
\edef\tmp{0\the\symoperators}%
\mathcode`\0=\expandafter"\tmp30\relax%
\mathcode`\1=\expandafter"\tmp31\relax%
\mathcode`\2=\expandafter"\tmp32\relax%
\mathcode`\3=\expandafter"\tmp33\relax%
\mathcode`\4=\expandafter"\tmp34\relax%
\mathcode`\5=\expandafter"\tmp35\relax%
\mathcode`\6=\expandafter"\tmp36\relax%
\mathcode`\7=\expandafter"\tmp37\relax%
\mathcode`\8=\expandafter"\tmp38\relax%
\mathcode`\9=\expandafter"\tmp39\relax}
\newcommand\mathlatin[1]{{\swtichtolatin\relax#1}}
\begin{document}
$10\dfrac{kg}{m^\mathlatin{3}}$
\end{document}

آفلاین محسن شریفی تبار

  • همکاران
  • Full Member
  • ***
  • تشکر
  • -اهدا شده: 10
  • -دریافت شده: 46
  • ارسال: 104
    • ديدن مشخصات
اگر وفا موافق باشد، به نظر بد نیست چنین امکانی شبیه دستور resetlatinfont که برای متن کار می‌کند، برای محیط ریاضی هم به زیپرشین اضافه شود. به کمک یکی از همین کدها که مطمئن تر از بقیه باشد.

آفلاین حسن قربانزاد

  • Full Member
  • ***
  • تشکر
  • -اهدا شده: 36
  • -دریافت شده: 25
  • ارسال: 174
    • ديدن مشخصات
با اجازه از اساتید
با کد
  \def\1{\textrm{\lr{1}}}‎هم می توان در محیط ریاضی اعداد لاتین نوشت.
$a = \1$

 

پاورقی: شماره در متن فارسی، فارسی باشد و شماره در متن لاتین،لاتین

نویسنده khoshnamiانجمن زی‌تک

پاسخ ها: 1
مشاهده: 3733
آخرين ارسال ژانویه 22, 2014, 06:31:06 pm
توسط khoshnami
شماره پاورقی دوستونی در پایین صفحه لاتین باشد و در متن فارسی

نویسنده میترا زندانجمن عمومی

پاسخ ها: 5
مشاهده: 3084
آخرين ارسال ژوئیه 08, 2014, 10:25:15 pm
توسط ابوالفضل دیانت
می خواهم در زیپرشین مثل فارسی تک بنویسم؟منظورم فونتشه

نویسنده mkhy81انجمن زی‌تک

پاسخ ها: 5
مشاهده: 4168
آخرين ارسال دسامبر 13, 2009, 02:58:31 pm
توسط پویا
چطور همه ی خطوط یک پاراگراف به جز اولی را کمی داخل تر بنویسم؟

نویسنده ir1979انجمن انجمن تازه‌کاران

پاسخ ها: 11
مشاهده: 5404
آخرين ارسال مه 20, 2010, 11:07:42 am
توسط شهاب
caption فارسی در محیط لاتین

نویسنده peymanانجمن گرافیک، جدول و شکل

پاسخ ها: 12
مشاهده: 7284
آخرين ارسال آوریل 27, 2010, 06:31:28 pm
توسط امیرمسعود
ترتیب مراجع فارسی و لاتین

نویسنده einian85انجمن مراجع و بیب‌تک BibTeX

پاسخ ها: 4
مشاهده: 3812
آخرين ارسال مه 11, 2010, 09:48:31 am
توسط einian85
تغیر نمایش پانوشت در حالت فارسی و لاتین

نویسنده پویاانجمن انجمن تازه‌کاران

پاسخ ها: 4
مشاهده: 4957
آخرين ارسال نوامبر 21, 2010, 07:30:47 pm
توسط vafa
دستورات فارسی و لاتین

نویسنده ali_daانجمن زی‌تک

پاسخ ها: 3
مشاهده: 2420
آخرين ارسال نوامبر 26, 2011, 03:00:30 pm
توسط حسن ذاکری