แสดงสมการและสูตรทางคณิตศาสตร์โดยใช้ C#

LaTeX เป็นซอฟต์แวร์ที่มีประสิทธิภาพสำหรับคณิตศาสตร์เรียงพิมพ์ อนุญาตให้ฝังสูตรและสมการทางคณิตศาสตร์ในไฟล์ TEX ซึ่งเป็นเอกสารต้นฉบับที่จัดทำโดย LaTeX มีคำสั่งมากมายเพื่อระบุรูปแบบของเอกสาร รวมถึงข้อความ สัญลักษณ์ นิพจน์ทางคณิตศาสตร์ และกราฟิก เราสามารถเขียนสมการพื้นฐานและสูตรทางคณิตศาสตร์โดยทางโปรแกรมโดยไม่ต้องใช้ LaTeX ในบทความนี้ เราจะได้เรียนรู้วิธีแสดงสมการ LaTeX และสูตรทางคณิตศาสตร์โดยใช้ C#

หัวข้อต่อไปนี้จะครอบคลุมในบทความนี้:

  1. C# API เพื่อแสดงผลสมการ LaTeX และสูตรคณิตศาสตร์
  2. Render LaTeX Inline Math Formulas
  3. แสดงสมการเชิงซ้อน
  4. [แสดงสมการยาว](#แสดงสมการยาวใน CSharp)
  5. จัดสมการหลายสมการ
  6. [สมการกลุ่มและศูนย์](#กลุ่มและศูนย์สมการโดยใช้ CSharp)
  7. Render Matrices, Parenthesis และวงเล็บเหลี่ยม
  8. แสดงเศษส่วนและทวินาม

C# API เพื่อแสดงสมการ LaTeX และสูตรทางคณิตศาสตร์

สำหรับการแสดงสูตรทางคณิตศาสตร์ของ LaTeX เราจะใช้ API Aspose.TeX for .NET ช่วยให้เรียงไฟล์ TeX เป็นรูปแบบไฟล์ต่างๆ เช่น PDF, XPS หรือรูปภาพ

โปรด ดาวน์โหลด DLL ของ API หรือติดตั้งโดยใช้ NuGet

PM> Install-Package Aspose.TeX

Render LaTeX Inline Math Formulas โดยใช้ C#

เราสามารถแสดงสูตรหรือสมการทางคณิตศาสตร์แบบอินไลน์อย่างง่ายโดยทำตามขั้นตอนด้านล่าง:

  1. ขั้นแรก สร้างอินสแตนซ์ของคลาส MathRendererOptions
  2. ถัดไป ระบุคำนำหน้าเอกสาร LaTeX
  3. เลือกตั้งค่าคุณสมบัติต่างๆ เช่น Scale, TextColor, BackgroundColor เป็นต้น
  4. หลังจากนั้น ให้สร้างเอาต์พุตสตรีมสำหรับอิมเมจสูตร
  5. สุดท้าย เรียกเมธอด Render() เพื่อเรนเดอร์สูตร ใช้สตริงสูตร สตรีม MathRendererOptions และขนาดภาพที่ส่งออกเป็นอาร์กิวเมนต์

ตัวอย่างโค้ดต่อไปนี้สาธิตวิธีการแสดงสูตรทางคณิตศาสตร์โดยทางโปรแกรมโดยใช้ C#

// ตัวอย่างรหัสนี้สาธิตวิธีการแสดงสูตรและสมการทางคณิตศาสตร์
// สร้างตัวเลือกการเรนเดอร์โดยระบุความละเอียดของภาพ 150 dpi
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 #

แสดงสูตรคณิตศาสตร์แบบอินไลน์โดยใช้ C #

แสดงสมการที่ซับซ้อนใน 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#

แสดงสมการที่ซับซ้อนใน C#

แสดงสมการยาวใน 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#

จัดเรียงสมการต่างๆ โดยใช้ภาษา 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#

จัดเรียงสมการต่างๆ โดยใช้ภาษา C#

สมการกลุ่มและศูนย์โดยใช้ 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);
กลุ่มและศูนย์สมการโดยใช้ CSharp

สมการกลุ่มและศูนย์โดยใช้ C#

เรนเดอร์เมทริกซ์ วงเล็บ และวงเล็บใน 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#

เรนเดอร์เมทริกซ์ วงเล็บ และวงเล็บใน C#

แสดงเศษส่วนและทวินามโดยใช้ C#

เราสามารถแสดงเศษส่วนและทวินามได้เช่นกันโดยทำตามขั้นตอนที่กล่าวถึงก่อนหน้านี้ อย่างไรก็ตาม เราต้องระบุสตริงสูตรในขั้นตอนที่ #4 ดังที่แสดงด้านล่าง:

MathRenderer.Render(@"\begin{document}
	            [
	                \binom{n}{k} = \frac{n!}{k!(n-k)!}
	            ]
	            \end{document}", stream, options, out size);
แสดงเศษส่วนและทวินามโดยใช้ C#

แสดงเศษส่วนและทวินามโดยใช้ C#

รับใบอนุญาตฟรี

คุณสามารถ รับใบอนุญาตชั่วคราวได้ฟรี เพื่อทดลองใช้ห้องสมุดโดยไม่มีข้อจำกัดในการประเมิน

บทสรุป

ในบทความนี้ เราได้เรียนรู้วิธีการ:

  • แสดงสูตรและสมการทางคณิตศาสตร์ที่ง่ายและซับซ้อนใน C#
  • จัดตำแหน่งและจัดกลุ่มสมการโดยทางโปรแกรม
  • แสดงเมทริกซ์ วงเล็บ วงเล็บ เศษส่วน และทวินาม

นอกจากการแสดงสมการ LaTeX และสูตรทางคณิตศาสตร์ใน C# แล้ว คุณยังสามารถเรียนรู้เพิ่มเติมเกี่ยวกับ Aspose.TeX for .NET API โดยใช้ เอกสารประกอบ ในกรณีที่มีความคลุมเครือ โปรดติดต่อเราได้ที่ ฟอรัมสนับสนุนฟรี

ดูสิ่งนี้ด้วย