Renderuj równania i formuły matematyczne przy użyciu języka C#

LaTeX to potężne oprogramowanie do składu matematycznego. Umożliwia osadzanie formuł i równań matematycznych w pliku TEX, który jest dokumentem źródłowym przygotowanym przez LaTeX. Udostępnia wiele poleceń do określania formatu dokumentu, w tym tekstu, symboli, wyrażeń matematycznych i grafiki. Potrafimy programowo pisać podstawowe równania i wzory matematyczne bez używania LaTeX. W tym artykule dowiemy się, jak renderować równania LaTeX i formuły matematyczne przy użyciu języka C#.

W tym artykule zostaną omówione następujące tematy:

  1. C# API do renderowania równań LaTeX i formuł matematycznych
  2. [Renderuj wbudowane formuły matematyczne LaTeX](#Render-Inline-Math-Formulas- using-CSharp)
  3. Renderuj złożone równania
  4. Wyświetl długie równania
  5. [Wyrównaj kilka równań](#Wyrównaj-kilka-równań-za pomocą-CSharp)
  6. [Równania grupujące i wyśrodkowujące](#Równania-grupujące-i-centrujące-przy użyciu-CSharp)
  7. [Macierze renderowania, nawiasy i nawiasy](#Macierze renderowania,-nawiasy,-i-nawiasy-w-CSharp)
  8. [Renderuj ułamki i dwumiany](#Renderuj-ułamki-i-dwumiany-przy użyciu-CSharp)

C# API do renderowania równań LaTeX i formuł matematycznych

Do renderowania formuł matematycznych LaTeX będziemy używać API Aspose.TeX for .NET. Umożliwia składanie plików TeX do różnych formatów plików, takich jak PDF, XPS lub obrazy.

Proszę pobrać bibliotekę DLL interfejsu API lub zainstalować ją za pomocą NuGet.

PM> Install-Package Aspose.TeX

Renderuj formuły matematyczne LaTeX Inline przy użyciu C#

Możemy renderować proste wbudowane formuły matematyczne lub równania, wykonując czynności podane poniżej:

  1. Najpierw utwórz instancję klasy MathRendererOptions.
  2. Następnie określ preambułę dokumentu LaTeX.
  3. Opcjonalnie ustaw różne właściwości, takie jak Scale, TextColor, BackgroundColor itp.
  4. Następnie utwórz strumień wyjściowy dla obrazu formuły.
  5. Na koniec wywołaj metodę Render(), aby wyrenderować formułę. Jako argumenty przyjmuje ciąg formuły, strumień, MathRendererOptions i rozmiar obrazu wyjściowego.

Poniższy przykładowy kod demonstruje, jak programowo renderować formułę matematyczną przy użyciu języka C#.

// Ten przykład kodu demonstruje sposób renderowania formuł i równań matematycznych
// Utwórz opcje renderowania określające rozdzielczość obrazu 150 dpi
MathRendererOptions options = new PngMathRendererOptions() { Resolution = 150 };

// Określ preambułę.
options.Preamble = @"\usepackage{amsmath}
                    \usepackage{amsfonts}
                    \usepackage{amssymb}
                    \usepackage{color}";

// Określ współczynnik skalowania 300%.
options.Scale = 3000;

// Określ kolor pierwszego planu.
options.TextColor = System.Drawing.Color.Black;

// Określ kolor tła.
options.BackgroundColor = System.Drawing.Color.White;

// Określ strumień wyjściowy dla pliku dziennika.
options.LogStream = new MemoryStream();

// Określ, czy wyświetlać wyjście terminala na konsoli, czy nie.
options.ShowTerminal = true;

// Zmienna, w której zostaną zapisane wymiary obrazu wynikowego.
System.Drawing.SizeF size = new System.Drawing.SizeF();

// Utwórz strumień wyjściowy dla obrazu formuły.
using (Stream stream = File.Open(@"D:\Files\Tex\math-formula.png", FileMode.Create))
    // Uruchom renderowanie.
    MathRenderer.Render(@"This is a sample formula $f(x) = x^2$ example.", stream, options, out size);

// Pokaż inne wyniki.
System.Console.Out.WriteLine(options.ErrorReport);
System.Console.Out.WriteLine();
System.Console.Out.WriteLine("Size: " + size);
Renderuj wbudowane formuły matematyczne przy użyciu języka C#

Renderuj wbudowane formuły matematyczne przy użyciu języka C#

Renderuj złożone równania w C#

Możemy renderować dowolne złożone równania lub formuły, wykonując kroki wymienione wcześniej. Jednak musimy tylko podać ciąg formuły w kroku nr 4, jak pokazano poniżej:

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);
Renderuj złożone równania w C#

Renderuj złożone równania w C#

Wyświetl długie równania w C#

Możemy wyświetlać długie równania w wielu wierszach, wykonując czynności wspomniane wcześniej. Jednak musimy tylko podać ciąg formuły w kroku nr 4, jak pokazano poniżej:

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);
Wyświetl długie równania

Wyświetl długie równania w C#

Wyrównaj kilka równań za pomocą C#

Możemy również wyrównywać i renderować kilka równań lub formuł jednocześnie, wykonując czynności wspomniane wcześniej. Jednak musimy tylko podać ciąg formuły w kroku nr 4, jak pokazano poniżej:

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);
Wyrównaj kilka równań za pomocą C#

Wyrównaj kilka równań za pomocą C#

Równania grupowe i środkowe przy użyciu języka C#

Możemy grupować i wyśrodkować wiele równań podczas renderowania, wykonując czynności wspomniane wcześniej. Jednak musimy tylko podać ciąg formuły w kroku nr 4, jak pokazano poniżej:

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);
Group-and-Center-Equations- using-CSharp

Równania grupowe i środkowe przy użyciu języka C#

Renderuj macierze, nawiasy i nawiasy w C# {#Render-Matrices,-Parenthesis,-and-Brackets-in-CSharp}

Możemy również renderować macierze, nawiasy i nawiasy kwadratowe, wykonując czynności wymienione wcześniej. Jednak musimy tylko podać ciąg formuły w kroku nr 4, jak pokazano poniżej:

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);
Renderuj macierze, nawiasy i nawiasy w C#

Renderuj macierze, nawiasy i nawiasy w C#

Renderuj ułamki i dwumiany przy użyciu C#

Możemy również renderować ułamki zwykłe i dwumiany, wykonując kroki wspomniane wcześniej. Jednak musimy tylko podać ciąg formuły w kroku nr 4, jak pokazano poniżej:

MathRenderer.Render(@"\begin{document}
	            [
	                \binom{n}{k} = \frac{n!}{k!(n-k)!}
	            ]
	            \end{document}", stream, options, out size);
Renderuj ułamki i dwumiany przy użyciu C#

Renderuj ułamki i dwumiany przy użyciu C#

Uzyskaj bezpłatną licencję

Możesz uzyskać bezpłatną tymczasową licencję, aby wypróbować bibliotekę bez ograniczeń ewaluacyjnych.

Wniosek

W tym artykule dowiedzieliśmy się, jak:

  • renderować proste i złożone formuły i równania matematyczne w języku C#
  • wyrównywać i grupować równania programowo
  • renderowanie macierzy, nawiasów, nawiasów, ułamków zwykłych i dwumianów

Poza renderowaniem równań LaTeX i formuł matematycznych w C#, możesz dowiedzieć się więcej o Aspose.TeX for .NET API korzystając z dokumentacji. W przypadku jakichkolwiek niejasności prosimy o kontakt na naszym bezpłatnym forum pomocy technicznej.

Zobacz też