LaTeX هو برنامج قوي لرياضيات التنضيد. يسمح بتضمين الصيغ والمعادلات الرياضية في ملف TEX ، وهو مستند مصدر تم إعداده بواسطة LaTeX. يوفر العديد من الأوامر لتحديد تنسيق المستند ، بما في ذلك النص والرموز والتعبيرات الرياضية والرسومات. يمكننا كتابة المعادلات الأساسية والصيغ الرياضية برمجيًا دون استخدام LaTeX. في هذه المقالة ، سوف نتعلم كيفية عرض معادلات LaTeX والصيغ الرياضية باستخدام C#.
سيتم تناول الموضوعات التالية في هذه المقالة:
- [C# API لعرض معادلات LaTeX والصيغ الرياضية](# CSharp-API-to-Render-Equations-and-Math-Formulas)
- [Render LaTeX Inline Math Formulas](# Render-Inline-Math-Formulas-using-CSharp)
- [تقديم المعادلات المعقدة](# Render-complex-Equations-in-CSharp)
- [عرض المعادلات الطويلة](# Display-Long-Equations-in-CSharp)
- [محاذاة عدة معادلات](# محاذاة عدة معادلات باستخدام CSharp)
- [معادلات المجموعة والوسط](# معادلات المجموعة والوسط باستخدام CSharp)
- [تصيير المصفوفات ، والأقواس ، والأقواس](# مصفوفات العرض ، -أقواس ، -و-بين قوسين-في-CSharp)
- [عرض الكسور والقيم ذات الحدين](# Render-Fractions-and-Binomials-using-CSharp)
C# API لتقديم معادلات LaTeX والصيغ الرياضية
لعرض الصيغ الرياضية لـ LaTeX ، سنستخدم Aspose.TeX for .NET API. يسمح بتنضيد ملفات TeX إلى تنسيقات ملفات مختلفة مثل PDF أو XPS أو الصور.
يرجى إما تنزيل DLL من API أو تثبيته باستخدام NuGet.
PM> Install-Package Aspose.TeX
عرض الصيغ الرياضية المضمنة من LaTeX باستخدام C#
يمكننا تقديم صيغ أو معادلات رياضية مضمنة بسيطة باتباع الخطوات الواردة أدناه:
- أولاً ، قم بإنشاء مثيل لفئة MathRendererOptions
- بعد ذلك ، حدد تمهيد مستند LaTeX.
- اختياريًا ، قم بتعيين خصائص متنوعة مثل Scale و TextColor و BackgroundColor وما إلى ذلك.
- بعد ذلك ، قم بإنشاء دفق الإخراج لصورة الصيغة.
- أخيرًا ، قم باستدعاء طريقة Render() لتصيير الصيغة. يأخذ سلسلة الصيغة والدفق و MathRendererOptions وحجم صورة الإخراج كوسائط.
يوضح نموذج التعليمات البرمجية التالي كيفية تقديم صيغة رياضية برمجياً باستخدام C#.
// يوضح مثال الكود هذا كيفية عرض الصيغ والمعادلات الرياضية
// إنشاء خيارات تجسيد تحدد دقة الصورة 150 نقطة في البوصة
MathRendererOptions options = new PngMathRendererOptions() { Resolution = 150 };
// حدد التمهيد.
options.Preamble = @"\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{color}";
// حدد عامل التحجيم 300٪.
options.Scale = 3000;
// حدد لون المقدمة.
options.TextColor = System.Drawing.Color.Black;
// حدد لون الخلفية.
options.BackgroundColor = System.Drawing.Color.White;
// حدد تدفق الإخراج لملف السجل.
options.LogStream = new MemoryStream();
// حدد ما إذا كنت تريد إظهار الإخراج الطرفي على وحدة التحكم أم لا.
options.ShowTerminal = true;
// المتغير الذي ستكتب فيه أبعاد الصورة الناتجة.
System.Drawing.SizeF size = new System.Drawing.SizeF();
// إنشاء دفق الإخراج لصورة الصيغة.
using (Stream stream = File.Open(@"D:\Files\Tex\math-formula.png", FileMode.Create))
// تشغيل التقديم.
MathRenderer.Render(@"This is a sample formula $f(x) = x^2$ example.", stream, options, out size);
// عرض نتائج أخرى.
System.Console.Out.WriteLine(options.ErrorReport);
System.Console.Out.WriteLine();
System.Console.Out.WriteLine("Size: " + size);
تقديم المعادلات المعقدة في C#
يمكننا تقديم أي معادلات أو صيغ معقدة باتباع الخطوات المذكورة سابقًا. ومع ذلك ، نحتاج فقط إلى توفير سلسلة الصيغة في الخطوة رقم 4 كما هو موضح أدناه:
MathRenderer.Render(@"\begin{equation*}
e^x = x^{\color{red}0} + x^{\color{red}1} +
\frac{x^{\color{red}2}}{2} +
\frac{x^{\color{red}3}}{6} +
\cdots = \sum_{n\geq 0} \frac{x^{\color{red}n}}{n!}
\end{equation*}", stream, options, out size);
عرض المعادلات الطويلة في C#
يمكننا عرض معادلات طويلة على عدة أسطر باتباع الخطوات المذكورة سابقًا. ومع ذلك ، نحتاج فقط إلى توفير سلسلة الصيغة في الخطوة رقم 4 كما هو موضح أدناه:
MathRenderer.Render(@"\begin{document}
\begin{multline*}
p(x) = x^1+x^2+x^3+x^4\\
- x^4 - x^3 - x^2 - x
\end{multline*}
\end{document}", stream, options, out size);
محاذاة عدة معادلات باستخدام C#
يمكننا أيضًا محاذاة وعرض العديد من المعادلات أو الصيغ في وقت واحد باتباع الخطوات المذكورة سابقًا. ومع ذلك ، نحتاج فقط إلى توفير سلسلة الصيغة في الخطوة رقم 4 كما هو موضح أدناه:
MathRenderer.Render(@"\begin{document}
\begin{align*}
a+b & a-b & (a+b)(a-b)\\
x+y & x-y & (x+y)(x-y)\\
p+q & p-q & (p+q)(p-q)
\end{align*}
\end{document}", stream, options, out size);
معادلات المجموعة والمركز باستخدام C#
يمكننا تجميع معادلات متعددة وتوسيطها أثناء التقديم باتباع الخطوات المذكورة سابقًا. ومع ذلك ، نحتاج فقط إلى توفير سلسلة الصيغة في الخطوة رقم 4 كما هو موضح أدناه:
MathRenderer.Render(@"\begin{gather*}
(a+b)=a^2+b^2+2ab \\
(a-b)=a^2+b^2-2ab \\
(a-b)=a^2+b^2-2ab
\end{gather*}", stream, options, out size);
تصيير المصفوفات والأقواس والأقواس في C# {#Render-Matrices,-Parenthesis,-and-Brackets-in-CSharp}
يمكننا أيضًا تقديم المصفوفات والأقواس والأقواس باتباع الخطوات المذكورة سابقًا. ومع ذلك ، نحتاج فقط إلى توفير سلسلة الصيغة في الخطوة رقم 4 كما هو موضح أدناه:
MathRenderer.Render(@"\begin{document}
[
\left \{
\begin{tabular}{ccc}
1 & 4 & 7 \\
2 & 5 & 8 \\
3 & 6 & 9
\end{tabular}
\right \}
]
\end{document}", stream, options, out size);
عرض الكسور وذات الحدين باستخدام C#
يمكننا أيضًا عرض الكسور والقيم ذات الحدين باتباع الخطوات المذكورة سابقًا. ومع ذلك ، نحتاج فقط إلى توفير سلسلة الصيغة في الخطوة رقم 4 كما هو موضح أدناه:
MathRenderer.Render(@"\begin{document}
[
\binom{n}{k} = \frac{n!}{k!(n-k)!}
]
\end{document}", stream, options, out size);
احصل على رخصة مجانية
يمكنك الحصول على ترخيص مؤقت مجاني لتجربة المكتبة دون قيود التقييم.
استنتاج
في هذه المقالة ، تعلمنا كيفية:
- تقديم الصيغ والمعادلات الرياضية البسيطة والمعقدة في C#
- محاذاة وتجميع المعادلات برمجيًا
- تصيير المصفوفات ، والأقواس ، والأقواس ، والكسور ، وذات الحدين
إلى جانب تقديم معادلات LaTeX والصيغ الرياضية في C# ، يمكنك معرفة المزيد حول Aspose.TeX for .NET API باستخدام التوثيق. في حالة وجود أي غموض ، لا تتردد في الاتصال بنا على منتدى الدعم المجاني.