تالار گفتگوی پارسی‌لاتک

لاتک LATEX => سبک نوشتار => نويسنده: maryam در ژانویه 04, 2011, 05:31:38 pm

عنوان: گذاشتن شکل مربع در انتهای قضایا،مثال ها و تعاریف
رسال شده توسط: maryam در ژانویه 04, 2011, 05:31:38 pm
سلام
من می خوام در انتهای اثبات قضایا مربع در و انتهای مثال ها مثلث قرار بگیره.چیکار کنم؟
با تشکر
عنوان: پاسخ : گذاشتن شکل مربع در انتهای قضایا،مثال ها و تعاریف
رسال شده توسط: vafa در ژانویه 04, 2011, 06:46:03 pm
سلام
من می خوام در انتهای اثبات قضایا مربع در و انتهای مثال ها مثلث قرار بگیره.چیکار کنم؟
با تشکر
وقتی از سبک amsthm استفاده می‌کنید، به خودی خود محیط proof را تعریف می‌کند و در آخر یک مربع قرار می‌دهد. برای مثال هم می‌توانید اینگونه عمل کنید:
\documentclass[10pt,a4paper]{article}
\usepackage{amsthm}
\usepackage{xepersian}
\settextfont{Yas}
\newcounter{example}
\makeatletter
\newenvironment{example}[1][مثال]{\par
\stepcounter{example}%
  \pushQED{\hfill$\triangle$}%
  \normalfont \topsep6\p@\@plus6\p@\relax
  \trivlist
  \item[\hskip\labelsep
    \textbf{#1 \theexample\@addpunct{.}}]\ignorespaces
}{%
  \popQED\endtrivlist\@endpefalse
}
\makeatother
\begin{document}
\begin{proof}
این یک اثبات است
\end{proof}
\begin{example}
این یک مثال است
\end{example}
\end{document}
عنوان: پاسخ : گذاشتن شکل مربع در انتهای قضایا،مثال ها و تعاریف
رسال شده توسط: مرتضی در دسامبر 12, 2012, 04:24:53 am
برای مثال هم می‌توانید اینگونه عمل کنید:
\documentclass[10pt,a4paper]{article}
\usepackage{amsthm}
\usepackage{xepersian}
\settextfont{Yas}
\newcounter{example}
\makeatletter
\newenvironment{example}[1][مثال]{\par
\stepcounter{example}%
  \pushQED{\hfill$\triangle$}%
  \normalfont \topsep6\p@\@plus6\p@\relax
  \trivlist
  \item[\hskip\labelsep
    \textbf{#1 \theexample\@addpunct{.}}]\ignorespaces
}{%
  \popQED\endtrivlist\@endpefalse
}
\makeatother
\begin{document}
\begin{proof}
این یک اثبات است
\end{proof}
\begin{example}
این یک مثال است
\end{example}
\end{document}

در کد بالا، اگر خط آخر شامل فرمول باشد، علامت qed در خط بعد از فرمول می‌افتد. برای رفع این مشکل از بسته ntheorem استفاده می‌شود. ولی وقتی آنرا به این کد اضافه می‌کنم، پیغام خطا می‌دهد.
چگونه می‌توان با استفاده از ntheorem و کد بالا، مشکلِ افتادن qed در خط بعد را حل کرد؟
عنوان: پاسخ : گذاشتن شکل مربع در انتهای قضایا،مثال ها و تعاریف
رسال شده توسط: aris852963 در دسامبر 12, 2012, 08:23:05 am
در کد بالا، اگر خط آخر شامل فرمول باشد، علامت qed در خط بعد از فرمول می‌افتد. برای رفع این مشکل از بسته ntheorem استفاده می‌شود. ولی وقتی آنرا به این کد اضافه می‌کنم، پیغام خطا می‌دهد.
چگونه می‌توان با استفاده از ntheorem و کد بالا، مشکلِ افتادن qed در خط بعد را حل کرد؟
با سلام
اگر خط آخرتون فرمول داره تو همون فرمول و انتهای آن از دستور \qedhere استفاده کنید. برای راهنمایی بیشتر ص53 مقدمه ای نه چندان کوتاه ... را ببینید.
عنوان: پاسخ : گذاشتن شکل مربع در انتهای قضایا،مثال ها و تعاریف
رسال شده توسط: ali_da در دسامبر 12, 2012, 08:29:43 am
فایل ضمیمه هم شاید کمک کنه
عنوان: پاسخ : گذاشتن شکل مربع در انتهای قضایا،مثال ها و تعاریف
رسال شده توسط: ali_da در دسامبر 12, 2012, 12:16:15 pm
مثال را یادم رفته بود
عنوان: پاسخ : گذاشتن شکل مربع در انتهای قضایا،مثال ها و تعاریف
رسال شده توسط: مرتضی در دسامبر 12, 2012, 01:12:19 pm
مثال را یادم رفته بود

با تشکر از شما. ولی میخواهم دقیقا محیطی مانند آنچه آقای کارن‌پهلو تعریف کرده‌اند داشته باشم تا بتوانم آنرا customize کنم. به عنوان مثال در محیطی که برای خودم تعریف کرده‌ام، کلمه مثال بصورت رنگی نوشته شده و خطی با \rule زیر آن کشیده شده و در انتها نیز علامت مربع آبی‌رنگ توپر قرار می‌گیرد. این مربع در هر حال در انتها قرار میگیرد، خواه خط آخر text باشد یا فرمول. بنابراین نمی‌توان از \qedhere درون متن استفاده کرد چون این environment علامت مربع را در انتها قرار میدهد و در آنصورت، دوبار این مربع چاپ میشود.
به هر روی، میخواهم دقیقا محیطی مشابه کد موجود در پست آقای کارن‌پهلو داشته باشم با این تفاوت که اگر در خط آخر فرمول بود، علامت مربع توپر در همان خط قرار گیرد.