PowerPoint Mathematik Gleichungen

Übersicht

In PowerPoint ist es möglich, eine mathematische Gleichung oder Formel zu schreiben und in der Präsentation anzuzeigen. Dazu werden verschiedene mathematische Symbole in PowerPoint dargestellt und können zum Text oder zur Gleichung hinzugefügt werden. Dafür wird der Konstruktor für mathematische Gleichungen in PowerPoint verwendet, der hilft, komplexe Formeln wie folgende zu erstellen:

  • Mathematische Brüche
  • Mathematische Wurzeln
  • Mathematische Funktionen
  • Grenzwerte und Logarithmusfunktionen
  • N-ary Operationen
  • Matrizen
  • Große Operatoren
  • Sinus-, Kosinusfunktionen

Um eine mathematische Gleichung in PowerPoint hinzuzufügen, wird das Menü Einfügen -> Gleichung verwendet:

todo:image_alt_text

Dies erstellt einen mathematischen Text in XML, der in PowerPoint wie folgt angezeigt werden kann:

todo:image_alt_text

PowerPoint unterstützt viele mathematische Symbole zur Erstellung von Mathematik Gleichungen. Das Erstellen komplizierter Mathematik Gleichungen in PowerPoint bringt jedoch oft kein gutes und professionelles Ergebnis. Benutzer, die häufig mathematische Präsentationen erstellen müssen, greifen auf die Verwendung von Drittanbieter-Lösungen zurück, um ansprechend aussehende mathematische Formeln zu erstellen.

Mit der Aspose.Slide API können Sie programmgesteuert mit mathematischen Gleichungen in PowerPoint-Präsentationen in C# arbeiten. Erstellen Sie neue mathematische Ausdrücke oder bearbeiten Sie bereits erstellte. Der Export mathematischer Strukturen in Bilder wird ebenfalls teilweise unterstützt.

Wie man eine mathematische Gleichung erstellt

Mathematische Elemente werden verwendet, um mathematische Konstruktionen mit beliebigen Verschachtelungstiefen zu erstellen. Eine lineare Sammlung mathematischer Elemente bildet einen mathematischen Block, der durch die MathBlock Klasse dargestellt wird. Die MathBlock Klasse ist im Wesentlichen ein separates mathematisches Ausdruck, eine Formel oder eine Gleichung. MathPortion ist ein mathematischer Teil, der verwendet wird, um mathematischen Text zu halten (nicht zu verwechseln mit Portion). Die MathParagraph erlaubt die Manipulation einer Menge von mathematischen Blöcken. Die vorgenannten Klassen sind der Schlüssel zur Arbeit mit PowerPoint Mathematik Gleichungen über die Aspose.Slides API.

Schauen wir uns an, wie wir die folgende mathematische Gleichung über die Aspose.Slides API erstellen können:

todo:image_alt_text

Um einen mathematischen Ausdruck auf der Folie hinzuzufügen, fügen Sie zunächst eine Form hinzu, die den mathematischen Text enthalten wird:

 using (Presentation pres = new Presentation())
{
    var mathShape = pres.Slides[0].Shapes.AddMathShape(0, 0, 720, 150);
}

Nach der Erstellung wird die Form standardmäßig bereits einen Absatz mit einem mathematischen Abschnitt enthalten. Die MathPortion Klasse ist ein Abschnitt, der einen mathematischen Text enthält. Um auf den mathematischen Inhalt innerhalb von MathPortion zuzugreifen, verweisen Sie auf die MathParagraphVariable:

 var mathParagraph = (mathShape.TextFrame.Paragraphs[0].Portions[0] as MathPortion).MathParagraph;

Die MathParagraph Klasse ermöglicht das Lesen, Hinzufügen, Bearbeiten und Löschen von mathematischen Blöcken (MathBlock), die aus einer Kombination mathematischer Elemente bestehen. Erstellen Sie beispielsweise einen Bruch und platzieren Sie ihn in der Präsentation:

 var fraction = new MathematicalText("x").Divide("y");
mathParagraph.Add(new MathBlock(fraction));

Jedes mathematische Element wird durch eine Klasse dargestellt, die das IMathElementInterface implementiert. Dieses Interface bietet viele Methoden zum einfachen Erstellen mathematischer Ausdrücke. Sie können mit einer einzigen Codezeile einen ziemlich komplexen mathematischen Ausdruck erstellen. Zum Beispiel würde der Satz des Pythagoras so aussehen:

 var mathBlock = new MathematicalText("c")
    .SetSuperscript("2")
    .Join("=")
    .Join(new MathematicalText("a").SetSuperscript("2"))
    .Join("+")
    .Join(new MathematicalText("b").SetSuperscript("2"));

Die Operationen des Interfaces IMathElement sind in jedem Elementtyp implementiert, einschließlich des MathBlock.

Der vollständige Beispielcode:

 using (Presentation pres = new Presentation())
{
    IAutoShape mathShape = pres.Slides[0].Shapes.AddMathShape(0, 0, 720, 150);
    var mathParagraph = (mathShape.TextFrame.Paragraphs[0].Portions[0] as MathPortion).MathParagraph;

    var fraction = new MathematicalText("x").Divide("y");
    mathParagraph.Add(new MathBlock(fraction));

    var mathBlock = new MathematicalText("c")
        .SetSuperscript("2")
        .Join("=")
        .Join(new MathematicalText("a").SetSuperscript("2"))
        .Join("+")
        .Join(new MathematicalText("b").SetSuperscript("2"));
    mathParagraph.Add(mathBlock);
    pres.Save("math.pptx", SaveFormat.Pptx);
}

Arten von mathematischen Elementen

Mathematische Ausdrücke werden aus Sequenzen mathematischer Elemente gebildet. Die Sequenz mathematischer Elemente wird durch einen mathematischen Block dargestellt, und die Argumente der mathematischen Elemente bilden eine baumartige Verschachtelung.

Es gibt viele Typen von mathematischen Elementen, die verwendet werden können, um einen mathematischen Block zu konstruieren. Jedes dieser Elemente kann in ein anderes Element aufgenommen (aggregiert) werden. Das heißt, Elemente sind tatsächlich Container für andere und bilden eine baumartige Struktur. Der einfachste Elementtyp enthält keine anderen Elemente des mathematischen Texts.

Jeder Typ von Mathematikelement implementiert das IMathElementInterface, das die Verwendung einer gemeinsamen Menge von mathematischen Operationen auf verschiedenen Typen von Mathematikelementen ermöglicht.

MathematicalText Klasse

Die MathematicalText Klasse stellt einen mathematischen Text dar – das zugrunde liegende Element aller mathematischen Konstruktionen. Mathematischer Text kann Operanden und Operatoren, Variablen und jeden anderen linearen Text darstellen.

Beispiel: 𝑎=𝑏+𝑐

MathFraction Klasse

Die MathFraction Klasse spezifiziert das Bruchobjekt, bestehend aus einem Zähler und einem Nenner, die durch eine Bruchlinie getrennt sind. Die Bruchlinie kann horizontal oder diagonal sein, abhängig von den Bruch Eigenschaften. Das Bruchobjekt wird auch verwendet, um die Stapelfunktion darzustellen, die ein Element über ein anderes setzt, ohne Bruchlinie.

Beispiel:

todo:image_alt_text

MathRadical Klasse

Die MathRadical Klasse spezifiziert die radikale Funktion (mathematische Wurzel), bestehend aus einer Basis und einer optionalen Potenz.

Beispiel:

todo:image_alt_text

MathFunction Klasse

Die MathFunction Klasse spezifiziert eine Funktion eines Arguments. Sie enthält Eigenschaften: Name - Funktionsname und Basis - Funktionsargument.

Beispiel:

todo:image_alt_text

MathNaryOperator Klasse

Die MathNaryOperator Klasse spezifiziert ein N-ary mathematisches Objekt, wie Summation und Integral. Es besteht aus einem Operator, einer Basis (oder Operanden) und optionalen oberen und unteren Grenzen. Beispiele für N-ary Operatoren sind Summation, Vereinigung, Schnittmenge, Integral.

Diese Klasse umfasst keine einfachen Operatoren wie Addition, Subtraktion usw. Diese werden durch ein einzelnes Textelement dargestellt - MathematicalText.

Beispiel:

todo:image_alt_text

MathLimit Klasse

Die MathLimit Klasse erstellt die obere oder untere Grenze. Sie spezifiziert das Grenzwertobjekt, bestehend aus Text auf der Basislinie und reduziertem Text direkt darüber oder darunter. Dieses Element enthält nicht das Wort „lim“, erlaubt aber die Platzierung von Text oben oder unten im Ausdruck. So wird der Ausdruck

todo:image_alt_text

durch eine Kombination von MathFunction und MathLimit Elementen auf folgende Weise erstellt:

 var funcName = new MathLimit(new MathematicalText("lim"), new MathematicalText("𝑥→∞"));
var mathFunc = new MathFunction(funcName, new MathematicalText("𝑥"));

MathSubscriptElement, MathSuperscriptElement, MathRightSubSuperscriptElement, MathLeftSubSuperscriptElement Klassen

Die folgenden Klassen spezifizieren einen Tiefenindex oder einen oberen Index. Sie können den Subscript und Superscript gleichzeitig auf der linken oder rechten Seite eines Arguments festlegen, jedoch wird ein einzelner Subscript oder Superscript nur auf der rechten Seite unterstützt. Das MathSubscriptElement kann auch verwendet werden, um den mathematischen Grad einer Zahl festzulegen.

Beispiel:

todo:image_alt_text

MathMatrix Klasse

Die MathMatrix Klasse spezifiziert das Matrixobjekt, das aus Kinderelementen besteht, die in einer oder mehreren Zeilen und Spalten angeordnet sind. Es ist wichtig zu beachten, dass Matrizen keine eingebauten Trennzeichen haben. Um die Matrix in Klammern zu setzen, sollten Sie das Trennzeichenobjekt - IMathDelimiter verwenden. Nullargumente können verwendet werden, um Lücken in Matrizen zu erstellen.

Beispiel:

todo:image_alt_text

MathArray Klasse

Die MathArray Klasse spezifiziert ein vertikales Array von Gleichungen oder anderen mathematischen Objekten.

Beispiel:

todo:image_alt_text

Formatierung mathematischer Elemente

  • Die MathBorderBox Klasse: zeichnet eine rechteckige oder andere Umrandung um das IMathElement.

    Beispiel: todo:image_alt_text

  • Die MathBox Klasse: spezifiziert das logische Boxen (Verpackung) des mathematischen Elements. Zum Beispiel kann ein gekästetes Objekt als Operator-Emulator mit oder ohne Ausrichtungspunkt dienen, als Zeilenumbruch dienen oder gruppiert werden, sodass keine Zeilenumbrüche innerhalb erlaubt sind. Zum Beispiel sollte der “==” Operator gekästet werden, um Zeilenumbrüche zu verhindern.

  • Die MathDelimiter Klasse: spezifiziert das Trennzeichenobjekt, das aus öffnenden und schließenden Zeichen (wie Klammern, geschweifte Klammern, eckige Klammern und senkrechte Striche) und einem oder mehreren mathematischen Elementen innerhalb, die durch ein angegebenes Zeichen getrennt sind, besteht. Beispiele: (𝑥2); [𝑥2|𝑦2].

    Beispiel: todo:image_alt_text

  • Die MathAccent Klasse: spezifiziert die Akzentfunktion, die aus einer Basis und einem kombinierenden diakritischen Zeichen besteht.

    Beispiel: 𝑎́.

  • Die MathBar Klasse: spezifiziert die Balkenfunktion, die aus einem Basisargument und einem Über- oder Unterstrich besteht.

    Beispiel: todo:image_alt_text

  • Die MathGroupingCharacter Klasse: spezifiziert ein Gruppierungszeichen über oder unter einem Ausdruck, normalerweise um die Beziehungen zwischen Elementen hervorzuheben.

    Beispiel: todo:image_alt_text

Mathematische Operationen

Jedes mathematische Element und jeder mathematische Ausdruck (über MathBlock) implementiert das IMathElementInterface. Es ermöglicht Ihnen, Operationen auf der bestehenden Struktur zu verwenden und komplexere mathematische Ausdrücke zu bilden. Alle Operationen haben zwei Parametersätze: entweder IMathElement oder string als Argumente. Instanzen der MathematicalText Klasse werden implizit aus angegebenen Zeichenfolgen erstellt, wenn Zeichenfolgenargumente verwendet werden. Mathematikoperationen, die in Aspose.Slides verfügbar sind, sind unten aufgeführt.

Join Methode

Verbindet ein mathematisches Element und bildet einen mathematischen Block. Zum Beispiel:

 IMathElement element1 = new MathematicalText("x");
IMathElement element2 = new MathematicalText("y");
IMathBlock block = element1.Join(element2);

Divide Methode

Erstellt einen Bruch des angegebenen Typs mit diesem Zähler und dem angegebenen Nenner. Zum Beispiel:

 IMathElement numerator = new MathematicalText("x");
IMathFraction fraction = numerator.Divide("y", MathFractionTypes.Linear);

Enclose Methode

Schließt das Element in spezifizierte Zeichen wie Klammern oder ein anderes Zeichen als Rahmen ein.

 /// <summary>
/// Schließt ein mathematisches Element in Klammern ein
/// </summary>
IMathDelimiter Enclose();
/// <summary>
/// Schließt dieses Element in spezifizierte Zeichen wie Klammern oder andere Zeichen als Rahmen ein
/// </summary>
IMathDelimiter Enclose(char beginningCharacter, char endingCharacter);

Beispiel:

 IMathDelimiter delimiter = new MathematicalText("x").Enclose('[', ']');
IMathDelimiter delimiter2 = new MathematicalText("elem1").Join("elem2").Enclose();

Function Methode

Nimmt eine Funktion eines Arguments und verwendet das aktuelle Objekt als Funktionsname.

 /// <summary>
/// Nimmt eine Funktion eines Arguments und verwendet diese Instanz als Funktionsname
/// </summary>
/// <param name="functionArgument">Ein Argument der Funktion</param>
IMathFunction Function(IMathElement functionArgument);
IMathFunction Function(string functionArgument);

Beispiel:

 IMathFunction func = new MathematicalText("sin").Function("x");

AsArgumentOfFunction Methode

Nimmt die angegebene Funktion und verwendet die aktuelle Instanz als Argument. Sie können:

Beispiel:

 var funcName = new MathLimit(new MathematicalText("lim"), new MathematicalText("𝑛→∞"));
var func1 = new MathematicalText("2x").AsArgumentOfFunction(funcName);
var func2 = new MathematicalText("x").AsArgumentOfFunction("sin");
var func3 = new MathematicalText("x").AsArgumentOfFunction(MathFunctionsOfOneArgument.Sin);
var func4 = new MathematicalText("x").AsArgumentOfFunction(MathFunctionsOfTwoArguments.Log, "3");

SetSubscript, SetSuperscript, SetSubSuperscriptOnTheRight, SetSubSuperscriptOnTheLeft Methoden

Setzt Subscript und Superscript. Sie können Subscript und Superscript gleichzeitig auf der linken oder rechten Seite des Arguments festlegen, aber ein einzelner Subscript oder Superscript wird nur auf der rechten Seite unterstützt. Das Superscript kann auch verwendet werden, um den mathematischen Grad einer Zahl festzulegen.

Beispiel:

 var script = new MathematicalText("y").SetSubSuperscriptOnTheLeft("2x", "3z");

Radical Methode

Spezifiziert die mathematische Wurzel des gegebenen Grades aus dem angegebenen Argument.

Beispiel:

 var radical = new MathematicalText("x").Radical("3");

SetUpperLimit und SetLowerLimit Methoden

Nimmt die obere oder untere Grenze. Hier zeigen die obere und untere Position einfach die Lage des Arguments relativ zur Basis an.

Betrachten wir einen Ausdruck:

todo:image_alt_text

Solche Ausdrücke können durch eine Kombination von Klassen MathFunction und MathLimit sowie Operationen des IMathElement wie folgt erstellt werden:

 var mathExpression = MathText.Create("lim").SetLowerLimit("x→∞").Function("x");

Nary und Integral Methoden

Die Nary und Integral Methoden erstellen und geben den N-ary Operator zurück, dargestellt durch den INaryOperator Typ. In der Nary Methode gibt die MathNaryOperatorTypes Aufzählung den Typ des Operators an: Summation, Vereinigung usw., ohne Integrale einzuschließen. In der Integral Methode gibt es die spezialisierte Operation Integral mit der Aufzählung der Integraltypen MathIntegralTypes.

Beispiel:

 IMathBlock baseArg = new MathematicalText("x").Join(new MathematicalText("dx").ToBox());
IMathNaryOperator integral = baseArg.Integral(MathIntegralTypes.Simple, "0", "1");

ToMathArray Methode

ToMathArray platziert Elemente in einem vertikalen Array. Wenn diese Operation für eine MathBlock Instanz aufgerufen wird, werden alle Kinderelemente im zurückgegebenen Array platziert.

Beispiel:

 var arrayFunction = new MathematicalText("x").Join("y").ToMathArray();

Formatierungsoperationen: Accent, Overbar, Underbar, Group, ToBorderBox, ToBox

  • Die Accent Methode setzt ein Akzentzeichen (ein Zeichen oben auf dem Element).
  • Die Overbar und Underbar Methoden setzen einen Balken oben oder unten.
  • Die Group Methode platziert in einer Gruppe unter Verwendung eines Gruppierungszeichens wie einer unteren geschweiften Klammer oder ähnlichem.
  • Die ToBorderBox Methode platziert in eine Border-Box.
  • Die ToBox Methode platziert in eine nicht sichtbare Box (logische Gruppierung).

Beispiele:

 var accent = new MathematicalText("x").Accent('\u0303');
var bar = new MathematicalText("x").Overbar();
var groupChr = new MathematicalText("x").Join("y").Join("z").Group('\u23E1', MathTopBotPositions.Bottom, MathTopBotPositions.Top);
var borderBox = new MathematicalText("x+y+z").ToBorderBox();
var boxedOperator = new MathematicalText(":=").ToBox();