إضافة تسمية توضيحية إلى المعادلة في LaTeX
-
02-07-2019 - |
سؤال
حسنًا، يبدو الأمر بسيطًا بما فيه الكفاية، لكن لا يمكنني العثور على طريقة لإضافة تعليق إلى المعادلة.هناك حاجة إلى التسمية التوضيحية لشرح المتغيرات المستخدمة في المعادلة، لذلك سيكون من الرائع وجود نوع من البنية الشبيهة بالجدول للحفاظ على محاذاة كل شيء وجماله.
المحلول
ال \caption
يقتصر الأمر على العوامات:ستحتاج إلى وضع المعادلة في بيئة الشكل أو الجدول (أو نوع جديد من البيئة العائمة).على سبيل المثال:
\begin{figure}
\[ E = m c^2 \]
\caption{A famous equation}
\end{figure}
الهدف من العوامات هو أنك تسمح لـ LaTeX بتحديد موضعها.إذا كنت تريد أن تظهر المعادلة في موضع ثابت، فلا تستخدم الرقم العائم.ال \captionof
أمر حزمة التسمية التوضيحية يمكن استخدامها لوضع تسمية توضيحية خارج بيئة عائمة.يتم استخدامه مثل هذا:
\[ E = m c^2 \]
\captionof{figure}{A famous equation}
سيؤدي هذا أيضًا إلى إنتاج إدخال لـ \listoffigures
, ، إذا كان المستند الخاص بك يحتوي على واحدة.
لمحاذاة أجزاء من المعادلة، قم بإلقاء نظرة على eqnarray
بيئة, أو بعض بيئات com.amsmath طَرد:محاذاة، جمع، متعدد الأسطر، ...
نصائح أخرى
قد ترغب في إلقاء نظرة على http://tug.ctan.org/tex-archive/macros/latex/contrib/float/ والذي يسمح لك بتحديد العوامات الجديدة باستخدام \newfloat
أقول هذا لأن التسميات التوضيحية يتم تطبيقها عادةً على العوامات.
المعادلات المباشرة (تلك المكتوبة بـ $ ... $
, $$ ... $$
, begin{equation}...
) هي كائنات مضمّنة لا تدعمها \caption
.
يمكن القيام بذلك باستخدام ما يلي مقتطف فقط قبل \begin{document}
\usepackage{float}
\usepackage{aliascnt}
\newaliascnt{eqfloat}{equation}
\newfloat{eqfloat}{h}{eqflts}
\floatname{eqfloat}{Equation}
\newcommand*{\ORGeqfloat}{}
\let\ORGeqfloat\eqfloat
\def\eqfloat{%
\let\ORIGINALcaption\caption
\def\caption{%
\addtocounter{equation}{-1}%
\ORIGINALcaption
}%
\ORGeqfloat
}
وعند إضافة معادلة استخدم شيئًا مثل
\begin{eqfloat}
\begin{equation}
f( x ) = ax + b
\label{eq:linear}
\end{equation}
\caption{Caption goes here}
\end{eqfloat}
كما في هذا مشاركة المنتدى بواسطة غونزالو ميدينا, ، وقد يكون هناك طريق ثالث:
\documentclass{article}
\usepackage{caption}
\DeclareCaptionType{equ}[][]
%\captionsetup[equ]{labelformat=empty}
\begin{document}
Some text
\begin{equ}[!ht]
\begin{equation}
a=b+c
\end{equation}
\caption{Caption of the equation}
\end{equ}
Some other text
\end{document}
مزيد من التفاصيل حول الأوامر المستخدمة من package caption
: هنا.