LaTeX Matematik Formüllerini ve Denklemlerini Java'da İşleyin

Formülleri ve matematiksel denklemleri TeX dosyasına gömebiliriz. LaTeX, TeX dosyasını bir dizi komut içeren bir kaynak belge olarak kullanır. Bu komutlar, metin, semboller, matematiksel ifadeler ve grafikler dahil olmak üzere belgenin biçimini belirtir. LaTeX kullanmadan her türlü denklemi ve matematiksel formülü programlı olarak yazabilir ve oluşturabiliriz. Bu makalede, Java’da LaTeX matematik formüllerinin ve denklemlerinin nasıl oluşturulacağını öğreneceksiniz.

Bu yazıda aşağıdaki konular ele alınacaktır:

LaTeX Matematik Formüllerini ve Denklemlerini Oluşturmak için Java API

LaTeX matematik formüllerini işlemek için Aspose.TeX for Java API’sini kullanacağız. Math formülünü PNG olarak kaydetmek için işleme seçeneklerini belirtmek üzere PngMathRendererOptions sınıfını sağlar. Benzer şekilde, Math formülünü bir SVG olarak kaydetmek için işleme seçeneklerini belirtmek üzere SvgMathRendererOptions sınıfını da sağlar. Ayrıca matematik formüllerinin işlenmesi için MathRenderer sınıfından türetilen PngMathRenderer ve SvgMathRenderer sınıflarını sağlar. Bu sınıfın render() yöntemi, sağlanan matematik formülünü işler. Ayrıca API, TeX dosyalarının PDF, XPS veya görüntüler gibi farklı dosya biçimlerine dizilmesine de izin verir.

Lütfen API’nin JAR’ını indirin veya Maven tabanlı bir Java uygulamasında aşağıdaki pom.xml yapılandırmasını ekleyin.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-tex</artifactId>
    <version>22.4</version>
    <type>jar</type>
</dependency>

Java kullanarak LaTeX Matematik Formüllerini PNG olarak işleyin

Aşağıda verilen adımları izleyerek basit satır içi matematik formüllerini veya denklemlerini oluşturabiliriz:

  1. İlk olarak, PngMathRendererOptions sınıfının bir örneğini oluşturun.
  2. Ardından, 150 DPI gibi görüntü çözünürlükleri belirtin.
  3. Ardından, LaTeX belgesinin önsözünü belirtin.
  4. İsteğe bağlı olarak Scale, TextColor, BackgroundColor gibi çeşitli özellikleri ayarlayın.
  5. Bundan sonra, formül görüntüsü için çıktı akışını oluşturun.
  6. Son olarak, formülü oluşturmak için render() yöntemini çağırın. Bağımsız değişken olarak formül dizesi, akış, oluşturma seçenekleri ve çıktı görüntü boyutunu alır.

Aşağıdaki kod örneği, Java kullanılarak programlı olarak bir matematik formülünün PNG olarak nasıl oluşturulacağını gösterir.

// Bu kod örneği, matematik formüllerinin ve denklemlerinin PNG olarak nasıl işleneceğini gösterir.
// PNG oluşturma seçenekleri oluşturma
PngMathRendererOptions options = new PngMathRendererOptions();

// Görüntü çözünürlüğünü belirtin 150 dpi
options.setResolution(150);

// Önsözü belirtin.
options.setPreamble("\\usepackage{amsmath}\n"
    + "\\usepackage{amsfonts}\n"
    + "\\usepackage{amssymb}\n"
    + "\\usepackage{color}");

// Ölçeklendirme faktörünü %300 olarak belirtin.
options.setScale(3000);

// Ön plan rengini belirtin.
options.setTextColor(Color.BLACK);

// Arka plan rengini belirtin.
options.setBackgroundColor(Color.WHITE);

// Günlük dosyası için çıktı akışını belirtin.
options.setLogStream(new ByteArrayOutputStream());

// Terminal çıktısının konsolda gösterilip gösterilmeyeceğini belirtin.
options.showTerminal(true);

// Ortaya çıkan görüntünün boyutlarının yazılacağı değişken.
com.aspose.tex.Size2D size = new com.aspose.tex.Size2D.Float();

// Formül görüntüsü için çıktı akışını oluşturun.
final OutputStream stream = new FileOutputStream("D:\\Files\\Tex\\simple-formula.png");

// PNG olarak işle
PngMathRenderer mathRenderer = new PngMathRenderer();
mathRenderer.render("This is a sample formula $f(x) = x^2$ example.", stream, options, size);

// Diğer sonuçları göster.
System.out.println(options.getErrorReport());
System.out.println();
System.out.println("Size: " + size.getWidth() + "x" + size.getHeight());
Java kullanarak LaTeX Matematik Formüllerini PNG olarak işleyin.

Java kullanarak LaTeX Matematik Formüllerini PNG olarak işleyin

Karmaşık Denklemleri Java Kullanarak İşleyin

Daha önce belirtilen adımları izleyerek herhangi bir karmaşık denklemi veya formülü oluşturabiliriz. Ancak 5. adımda formül dizisini aşağıda gösterildiği gibi ayarlamamız yeterli:

mathRenderer.render("\\begin{equation*}"
		+ "(1+x)^n = 1 + nx + \\frac{n(n-1)}{2!}x^{\\color{red}2}"
		+ "+ \\frac{n(n-1)(n-2)}{3!}x^{\\color{red}3}"
                + "+ \\frac{n(n-1)(n-2)(n-3)}{4!}x^{\\color{red}4}" 
                + "+ \\cdots"
                + "\\end{equation*}", stream, options, size);
Karmaşık Denklemleri Java Kullanarak İşleyin

Karmaşık Denklemleri Java Kullanarak İşleyin

Java Kullanarak Uzun Denklemleri Görüntüleyin

Daha önce belirtilen adımları izleyerek uzun denklemleri birden çok satırda görüntüleyebiliriz. Ancak 5. adımda formül dizisini aşağıda gösterildiği gibi ayarlamamız yeterli:

mathRenderer.render("\\begin{multline*}"
		+ "p(x) = 3x^6 + 14x^5y + 590x^4y^2 + 19x^3y^3\\\\"
		+ "- 12x^2y^4 - 12xy^5 + 2y^6 - a^3b^3"
		+ "\\end{multline*}", stream, options, size); 
Java kullanarak Uzun Denklemleri görüntüleyin.

Java kullanarak Uzun Denklemleri görüntüleyin.

Java Kullanarak Birkaç Denklemi Hizalayın

Daha önce belirtilen adımları izleyerek birkaç denklemi veya formülü aynı anda hizalayabilir ve oluşturabiliriz. Ancak 5. adımda formül dizisini aşağıda gösterildiği gibi ayarlamamız yeterli:

mathRenderer.render("\\begin{align}"
		+ "f(u) & =\\sum_{j=1}^{n} x_jf(u_j)\\\\"
		+ "& =\\sum_{j=1}^{n} x_j \\sum_{i=1}^{m} a_{ij}v_i\\\\"
		+ "& =\\sum_{j=1}^{n} \\sum_{i=1}^{m} a_{ij}x_jv_i"
		+ "\\end{align}", stream, options, size);
Java kullanarak Çeşitli Denklemleri Hizalayın.

Java kullanarak Çeşitli Denklemleri Hizalayın.

Java Kullanarak Grup ve Merkez Denklemleri

Daha önce belirtilen adımları izleyerek, işleme sırasında birden çok denklemi gruplandırabilir ve ortalayabiliriz. Ancak 5. adımda formül dizisini aşağıda gösterildiği gibi ayarlamamız yeterli:

mathRenderer.render("\\begin{gather*}"
		+ "2x - 5y =  8 \\\\"
		+ "3x^2 + 9y =  3a + c\\\\"
		+ "(a-b) = a^2 + b^2 -2ab"
		+ "\\end{gather*}", stream, options, size);
Java kullanarak Grup ve Merkez Denklemleri.

Java kullanarak Grup ve Merkez Denklemleri.

Java kullanarak Parantez ve Köşeli Ayraçları Oluşturun

Daha önce bahsedilen adımları izleyerek parantez ve köşeli parantezleri de oluşturabiliriz. Ancak 5. adımda formül dizisini aşağıda gösterildiği gibi ayarlamamız yeterli:

mathRenderer.render("\\begin{document}"
	     + "\["
	     + " \\left[  \\frac{ N } { \\left( \\frac{L}{p} \\right)  - (m+n) }  \\right]"
	     + "\]"
	     + "\\end{document}", stream, options, size);
Java kullanarak Parantez ve Parantez oluşturun.

Java kullanarak Parantez ve Parantez oluşturun.

Java kullanarak LaTeX’te matrisler

Benzer şekilde, daha önce bahsedilen adımları izleyerek matrisleri oluşturabiliriz. Ancak 5. adımda formül dizisini aşağıda gösterildiği gibi ayarlamamız yeterli:

mathRenderer.render("\\begin{document}"
	            + "\["
	            + "\\left \\{"
	            + "\\begin{tabular}{ccc}"
	            + "  1 & 4 & 7 \\\\"
	            + "  2 & 5 & 8 \\\\"
	            + "  3 & 6 & 9 "
	            + "\\end{tabular}"
	            + "\\right \\}"
	            + "\]"
	            + "\\end{document}", stream, options, size);
LaTeX'te Java kullanan matrisler.

LaTeX’te Java kullanan matrisler.

Java Kullanarak Kesirleri ve Binomları Oluşturun

Daha önce belirtilen adımları izleyerek kesirleri ve binomları da oluşturabiliriz. Ancak 5. adımda formül dizisini aşağıda gösterildiği gibi ayarlamamız yeterli:

mathRenderer.render("\\begin{document}"
	            + "\["
	            + "\\binom{n}{k} = \\frac{n!}{k!(n-k)!}"
	            + "\]"
	            + "\\end{document}", stream, options, size);
Java kullanarak Kesirler ve Binomları Oluşturun.

Java kullanarak Kesirler ve Binomları Oluşturun.

Java kullanarak LaTeX’te Matematiksel Operatörler

Matematiksel operatör sembolleri, log, cos, sin vb. gibi çeşitli matematiksel fonksiyonları temsil eder. Daha önce bahsedilen adımları izleyerek LaTeX’te trigonometrik fonksiyonları ve logaritmalar oluşturabiliriz. Ancak 5. adımda formül dizisini aşağıda gösterildiği gibi ayarlamamız yeterli:

mathRenderer.render("\\begin{document}"
	            + "\["
	            + "\\sin(a + b) = \\sin a \\cos b + \\cos b \\sin a"
	            + "\]"
	            + "\\end{document}", stream, options, size);
LaTeX'te Java kullanan Matematiksel Operatörler.

LaTeX’te Java kullanan Matematiksel Operatörler.

Java kullanarak SVG’de LaTeX Matematik Formüllerini Oluşturun

İşlenen matematik formüllerini veya denklemlerini aşağıda verilen adımları izleyerek SVG görüntü formatında da kaydedebiliriz:

  1. İlk olarak, SvgMathRendererOptions sınıfının bir örneğini oluşturun.
  2. Ardından, LaTeX belgesi girişini belirtin.
  3. İsteğe bağlı olarak Scale, TextColor, BackgroundColor gibi çeşitli özellikleri ayarlayın.
  4. Bundan sonra, formül görüntüsü için çıktı akışını oluşturun.
  5. Son olarak, formülü oluşturmak için render() yöntemini çağırın. Bağımsız değişken olarak formül dizesi, akış, oluşturma seçenekleri ve çıktı görüntü boyutunu alır.

Aşağıdaki kod örneği, Java kullanılarak bir SVG görüntüsünde bir matematik formülünün nasıl oluşturulacağını gösterir.

// Bu kod örneği, matematik formüllerinin ve denklemlerinin SVG olarak nasıl işleneceğini gösterir.
// SVG oluşturma seçenekleri oluşturun
SvgMathRendererOptions options = new SvgMathRendererOptions();

// Önsözü belirtin.
options.setPreamble("\\usepackage{amsmath}\n"
    + "\\usepackage{amsfonts}\n"
    + "\\usepackage{amssymb}\n"
    + "\\usepackage{color}");

// Ölçeklendirme faktörünü %300 olarak belirtin.
options.setScale(3000);

// Ön plan rengini belirtin.
options.setTextColor(Color.BLACK);

// Arka plan rengini belirtin.
options.setBackgroundColor(Color.WHITE);

// Günlük dosyası için çıktı akışını belirtin.
options.setLogStream(new ByteArrayOutputStream());

// Terminal çıktısının konsolda gösterilip gösterilmeyeceğini belirtin.
options.showTerminal(true);

// Ortaya çıkan görüntünün boyutlarının yazılacağı değişken.
com.aspose.tex.Size2D size = new com.aspose.tex.Size2D.Float();

// Formül görüntüsü için çıktı akışını oluşturun.
final OutputStream stream = new FileOutputStream("D:\\Files\\Tex\\simple-math-rendering.svg");

// SVG olarak oluştur
SvgMathRenderer mathRenderer = new SvgMathRenderer();
mathRenderer.render("\\begin{equation} \\label{eqn}"
    + "	E = {mc^2}"
    + "	\\end{equation}"
    + " The equation states mass equivalence relationship.", stream, options, size);

// Diğer sonuçları göster.
System.out.println(options.getErrorReport());
System.out.println();
System.out.println("Size: " + size.getWidth() + "x" + size.getHeight());
LaTeX Matematik Formüllerini Java kullanarak SVG'de işleyin.

LaTeX Matematik Formüllerini Java kullanarak SVG’de işleyin.

Ücretsiz Lisans Alın

Kitaplığı değerlendirme sınırlamaları olmadan denemek için ücretsiz bir geçici lisans alabilirsiniz.

Çözüm

Bu makalede, şunların nasıl yapılacağını öğrendik:

  • Java’da basit ve karmaşık matematiksel formüller ve denklemler oluşturun;
  • denklemleri programlı olarak hizalayın ve gruplandırın;
  • Matrisleri, Parantezleri, Parantezleri, Kesirleri ve Binomları işlemek;
  • işlenmiş formül görüntülerini Java kullanarak PNG veya SVG’ye kaydedin.

Ayrıca belgeleri kullanarak Aspose.TeX for Java API hakkında daha fazla bilgi edinebilirsiniz. Herhangi bir belirsizlik durumunda, lütfen forumda bizimle iletişime geçmekten çekinmeyin.

Ayrıca bakınız