Aspose::Slides::MathText::IMathElement Class Referenceabstract

Base interface of any mathematical element: fraction, mathmatical text, function, expression with multiple elements etc More...

#include <IMathElement.h>

Inherits System::Object.

Inherited by Aspose::Slides::MathText::IMathAccent [virtual], Aspose::Slides::MathText::IMathArray [virtual], Aspose::Slides::MathText::IMathBar [virtual], Aspose::Slides::MathText::IMathBlock [virtual], Aspose::Slides::MathText::IMathBorderBox [virtual], Aspose::Slides::MathText::IMathBox [virtual], Aspose::Slides::MathText::IMathDelimiter [virtual], Aspose::Slides::MathText::IMathFraction [virtual], Aspose::Slides::MathText::IMathFunction [virtual], Aspose::Slides::MathText::IMathGroupingCharacter [virtual], Aspose::Slides::MathText::IMathLeftSubSuperscriptElement [virtual], Aspose::Slides::MathText::IMathLimit [virtual], Aspose::Slides::MathText::IMathMatrix [virtual], Aspose::Slides::MathText::IMathNaryOperator [virtual], Aspose::Slides::MathText::IMathRadical [virtual], Aspose::Slides::MathText::IMathRightSubSuperscriptElement [virtual], Aspose::Slides::MathText::IMathSubscriptElement [virtual], Aspose::Slides::MathText::IMathSuperscriptElement [virtual], Aspose::Slides::MathText::IMathematicalText [virtual], and Aspose::Slides::MathText::MathElementBase [virtual].

Public Member Functions

virtual System::ArrayPtr< System::SharedPtr< IMathElement > > GetChildren ()=0
 Get children elements More...
 
virtual System::SharedPtr< IMathBlockJoin (System::SharedPtr< IMathElement > mathElement)=0
 Joins a mathematical element and forms a mathematical block More...
 
virtual System::SharedPtr< IMathBlockJoin (System::String mathText)=0
 Joins a mathematical text and forms a mathematical block More...
 
virtual System::SharedPtr< IMathFractionDivide (System::SharedPtr< IMathElement > denominator)=0
 Creates a fraction with this numerator and specified denominator More...
 
virtual System::SharedPtr< IMathFractionDivide (System::String denominator)=0
 Creates a fraction with this numerator and specified denominator More...
 
virtual System::SharedPtr< IMathFractionDivide (System::SharedPtr< IMathElement > denominator, MathFractionTypes fractionType)=0
 Creates a fraction of the specified type with this numerator and specified denominator More...
 
virtual System::SharedPtr< IMathFractionDivide (System::String denominator, MathFractionTypes fractionType)=0
 Creates a fraction of the specified type with this numerator and specified denominator More...
 
virtual System::SharedPtr< IMathDelimiterEnclose ()=0
 Encloses a math element in parenthesis More...
 
virtual System::SharedPtr< IMathDelimiterEnclose (char16_t beginningCharacter, char16_t endingCharacter)=0
 Encloses this element in specified characters such as parenthesis or another characters as framing More...
 
virtual System::SharedPtr< IMathFunctionFunction (System::SharedPtr< IMathElement > functionArgument)=0
 Takes a function of an argument using this instance as the function name More...
 
virtual System::SharedPtr< IMathFunctionFunction (System::String functionArgument)=0
 Takes a function of an argument using this instance as the function name More...
 
virtual System::SharedPtr< IMathFunctionAsArgumentOfFunction (System::SharedPtr< IMathElement > functionName)=0
 Takes specified function using this instance as the argument More...
 
virtual System::SharedPtr< IMathFunctionAsArgumentOfFunction (System::String functionName)=0
 Takes specified function using this instance as the argument More...
 
virtual System::SharedPtr< IMathFunctionAsArgumentOfFunction (MathFunctionsOfOneArgument functionType)=0
 Takes specified function using this instance as the argument More...
 
virtual System::SharedPtr< IMathFunctionAsArgumentOfFunction (MathFunctionsOfTwoArguments functionType, System::SharedPtr< IMathElement > additionalArgument)=0
 Takes specified function using this instance as the argument and specified additional argument More...
 
virtual System::SharedPtr< IMathFunctionAsArgumentOfFunction (MathFunctionsOfTwoArguments functionType, System::String additionalArgument)=0
 Takes specified function using this instance as the argument and specified additional argument More...
 
virtual System::SharedPtr< IMathSubscriptElementSetSubscript (System::SharedPtr< IMathElement > subscript)=0
 Creates subscript More...
 
virtual System::SharedPtr< IMathSubscriptElementSetSubscript (System::String subscript)=0
 Creates subscript More...
 
virtual System::SharedPtr< IMathSuperscriptElementSetSuperscript (System::SharedPtr< IMathElement > superscript)=0
 Creates superscript More...
 
virtual System::SharedPtr< IMathSuperscriptElementSetSuperscript (System::String superscript)=0
 Creates superscript More...
 
virtual System::SharedPtr< IMathRightSubSuperscriptElementSetSubSuperscriptOnTheRight (System::SharedPtr< IMathElement > subscript, System::SharedPtr< IMathElement > superscript)=0
 Creates subscript and superscript on the right More...
 
virtual System::SharedPtr< IMathRightSubSuperscriptElementSetSubSuperscriptOnTheRight (System::String subscript, System::String superscript)=0
 Creates subscript and superscript on the right More...
 
virtual System::SharedPtr< IMathLeftSubSuperscriptElementSetSubSuperscriptOnTheLeft (System::SharedPtr< IMathElement > subscript, System::SharedPtr< IMathElement > superscript)=0
 Creates subscript and superscript on the left More...
 
virtual System::SharedPtr< IMathLeftSubSuperscriptElementSetSubSuperscriptOnTheLeft (System::String subscript, System::String superscript)=0
 Creates subscript and superscript on the left More...
 
virtual System::SharedPtr< IMathRadicalRadical (System::SharedPtr< IMathElement > degree)=0
 Specifies the mathematical root of the given degree from the specified argument. More...
 
virtual System::SharedPtr< IMathRadicalRadical (System::String degree)=0
 Specifies the mathematical root of the given degree from the specified argument. More...
 
virtual System::SharedPtr< IMathLimitSetUpperLimit (System::SharedPtr< IMathElement > limit)=0
 Takes upper limit More...
 
virtual System::SharedPtr< IMathLimitSetUpperLimit (System::String limit)=0
 Takes upper limit More...
 
virtual System::SharedPtr< IMathLimitSetLowerLimit (System::SharedPtr< IMathElement > limit)=0
 Takes lower limit More...
 
virtual System::SharedPtr< IMathLimitSetLowerLimit (System::String limit)=0
 Takes lower limit More...
 
virtual System::SharedPtr< IMathNaryOperatorNary (MathNaryOperatorTypes type, System::SharedPtr< IMathElement > lowerLimit, System::SharedPtr< IMathElement > upperLimit)=0
 Creates a N-ary operator More...
 
virtual System::SharedPtr< IMathNaryOperatorNary (MathNaryOperatorTypes type, System::String lowerLimit, System::String upperLimit)=0
 Creates a N-ary operator More...
 
virtual System::SharedPtr< IMathArrayToMathArray ()=0
 Puts in a vertical array More...
 
virtual System::SharedPtr< IMathNaryOperatorIntegral (MathIntegralTypes integralType, System::SharedPtr< IMathElement > lowerLimit, System::SharedPtr< IMathElement > upperLimit, MathLimitLocations limitLocations)=0
 Takes the integral More...
 
virtual System::SharedPtr< IMathNaryOperatorIntegral (MathIntegralTypes integralType, System::SharedPtr< IMathElement > lowerLimit, System::SharedPtr< IMathElement > upperLimit)=0
 Takes the integral More...
 
virtual System::SharedPtr< IMathNaryOperatorIntegral (MathIntegralTypes integralType)=0
 Takes the integral without limits More...
 
virtual System::SharedPtr< IMathNaryOperatorIntegral (MathIntegralTypes integralType, System::String lowerLimit, System::String upperLimit, MathLimitLocations limitLocations)=0
 Takes the integral More...
 
virtual System::SharedPtr< IMathNaryOperatorIntegral (MathIntegralTypes integralType, System::String lowerLimit, System::String upperLimit)=0
 Takes the integral More...
 
virtual System::SharedPtr< IMathAccentAccent (char16_t accentCharacter)=0
 Sets an accent mark (a character on the top of this element) More...
 
virtual System::SharedPtr< IMathBarOverbar ()=0
 Sets a bar on the top of this element More...
 
virtual System::SharedPtr< IMathBarUnderbar ()=0
 Sets a bar on the bottom of this element More...
 
virtual System::SharedPtr< IMathGroupingCharacterGroup ()=0
 Places this element in a group using a bottom curly bracket More...
 
virtual System::SharedPtr< IMathGroupingCharacterGroup (char16_t character, MathTopBotPositions position, MathTopBotPositions verticalJustification)=0
 Places this element in a group using a grouping character such as bottom curly bracket or another More...
 
virtual System::SharedPtr< IMathBorderBoxToBorderBox ()=0
 Places this element in a border-box More...
 
virtual System::SharedPtr< IMathBorderBoxToBorderBox (bool hideTop, bool hideBottom, bool hideLeft, bool hideRight, bool strikethroughHorizontal, bool strikethroughVertical, bool strikethroughBottomLeftToTopRight, bool strikethroughTopLeftToBottomRight)=0
 Places this element in a border-box More...
 
virtual System::SharedPtr< IMathBoxToBox ()=0
 Places this element in a non-visual box (logical grouping) which is used to group components of an equation or other instance of mathematical text. A boxed object can (for example) serve as an operator emulator with or without an alignment point, serve as a line break point, or be grouped such as not to allow line breaks within. More...
 
- Public Member Functions inherited from System::Object
 Object ()
 Creates object. Initializes all internal data structures. More...
 
virtual ~Object ()
 Destroys object. Frees all internal data structures. More...
 
 Object (Object const &x)
 Copy constructor. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
Objectoperator= (Object const &x)
 Assignment operator. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
ObjectSharedRefAdded ()
 Increments shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int SharedRefRemovedSafe ()
 Decrements and returns shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int RemovedSharedRefs (int count)
 Decreases shared reference count by specified value. More...
 
Detail::SmartPtrCounter * WeakRefAdded ()
 Increments weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
void WeakRefRemoved ()
 Decrements weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
Detail::SmartPtrCounter * GetCounter ()
 Gets reference counter data structure associated with the object. More...
 
int SharedCount () const
 Gets current value of shared reference counter. More...
 
void Lock ()
 Implements C# lock() statement locking. Call directly or use LockContext sentry object. More...
 
void Unlock ()
 Implements C# lock() statement unlocking. Call directly or use LockContext sentry object. More...
 
virtual bool Equals (ptr obj)
 Compares objects using C# Object.Equals semantics. More...
 
virtual int32_t GetHashCode () const
 Analog of C# Object.GetHashCode() method. Enables hashing of custom objects. More...
 
virtual String ToString () const
 Analog of C# Object.ToString() method. Enables converting custom objects to string. More...
 
virtual ptr MemberwiseClone () const
 Analog of C# Object.MemberwiseClone() method. Enables cloning custom types. More...
 
virtual const TypeInfoGetType () const
 Gets actual type of object. Analog of C# System.Object.GetType() call. More...
 
virtual bool Is (const TypeInfo &targetType) const
 Check if object represents an instance of type described by targetType. Analog of C# 'is' operator. More...
 
virtual void SetTemplateWeakPtr (uint32_t argument)
 Set n'th template argument a weak pointer (rather than shared). Allows switching pointers in containers to weak mode. More...
 
virtual bool FastCast (const Details::FastRttiBase &helper, void **out_ptr) const
 For internal purposes only. More...
 
template<>
bool ReferenceEquals (String const &str, std::nullptr_t)
 Specialization of Object::ReferenceEquals for case of string and nullptr. More...
 
template<>
bool ReferenceEquals (String const &str1, String const &str2)
 Specialization of Object::ReferenceEquals for case of strings. More...
 

Additional Inherited Members

- Public Types inherited from System::Object
typedef SmartPtr< Objectptr
 Alias for smart pointer type. More...
 
- Static Public Member Functions inherited from System::Object
static bool ReferenceEquals (ptr const &objA, ptr const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, T const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, std::nullptr_t)
 Reference-compares value type object with nullptr. More...
 
template<typename T1 , typename T2 >
static std::enable_if< IsSmartPtr< T1 >::value &&IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares reference type objects in C# style. More...
 
template<typename T1 , typename T2 >
static std::enable_if<!IsSmartPtr< T1 >::value &&!IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares value type objects in C# style. More...
 
static const TypeInfoType ()
 Implements C# typeof(System.Object) construct. More...
 
template<>
bool Equals (float const &objA, float const &objB)
 Emulates C#-style floating point comparison where two NaNs are considered equal even though according to IEC 60559:1989 NaN is not equal to any value, including NaN. More...
 
template<>
bool Equals (double const &objA, double const &objB)
 Emulates C#-style floating point comparison where two NaNs are considered equal even though according to IEC 60559:1989 NaN is not equal to any value, including NaN. More...
 

Detailed Description

Base interface of any mathematical element: fraction, mathmatical text, function, expression with multiple elements etc

Example:

auto element1 = System::MakeObject<MathematicalText>(u"x");
auto element2 = System::MakeObject<MathematicalText>(u"y");

Member Function Documentation

◆ Accent()

virtual System::SharedPtr< IMathAccent > Aspose::Slides::MathText::IMathElement::Accent ( char16_t  accentCharacter)
pure virtual

Sets an accent mark (a character on the top of this element)

Parameters
accentCharacterAccent character. The value should be within the range of (U+0300–U+036F) or (U+20D0–U+20EF)
Returns
New instance of type IMathAccent

Example:

auto accent = System::MakeObject<MathematicalText>(u"x")->Accent(u'~');

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ AsArgumentOfFunction() [1/5]

virtual System::SharedPtr< IMathFunction > Aspose::Slides::MathText::IMathElement::AsArgumentOfFunction ( MathFunctionsOfOneArgument  functionType)
pure virtual

Takes specified function using this instance as the argument

Parameters
functionTypeOne of the common function type of one argument
Returns
New math element of type IMathFunction

Example:

auto functionArg = System::MakeObject<MathematicalText>(u"x");
auto func = functionArg->AsArgumentOfFunction(Aspose::Slides::MathText::MathFunctionsOfOneArgument::ArcSin);

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ AsArgumentOfFunction() [2/5]

virtual System::SharedPtr< IMathFunction > Aspose::Slides::MathText::IMathElement::AsArgumentOfFunction ( MathFunctionsOfTwoArguments  functionType,
System::SharedPtr< IMathElement additionalArgument 
)
pure virtual

Takes specified function using this instance as the argument and specified additional argument

Parameters
functionTypeOne of the common function type of two arguments: Log, Lim, Min, Max
additionalArgumentAdditional argument depending on the type of function
Returns
New math element of type IMathFunction

Example:

auto functionArg = System::MakeObject<MathematicalText>(u"x");
auto logarithmBase = System::MakeObject<MathematicalText>(u"5");
auto func = functionArg->AsArgumentOfFunction(Aspose::Slides::MathText::MathFunctionsOfTwoArguments::Log, logarithmBase);
// Returns the logarithm of 'x' to the base '5'

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ AsArgumentOfFunction() [3/5]

virtual System::SharedPtr< IMathFunction > Aspose::Slides::MathText::IMathElement::AsArgumentOfFunction ( MathFunctionsOfTwoArguments  functionType,
System::String  additionalArgument 
)
pure virtual

Takes specified function using this instance as the argument and specified additional argument

Parameters
functionTypeOne of the common function type of two arguments: Log, Lim, Min, Max
additionalArgumentAdditional argument depending on the type of function
Returns
New math element of type IMathFunction

Example:

auto functionArg = System::MakeObject<MathematicalText>(u"x");
auto func = functionArg->AsArgumentOfFunction(Aspose::Slides::MathText::MathFunctionsOfTwoArguments::Log, u"5");
// Returns the logarithm of 'x' to the base '5'

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ AsArgumentOfFunction() [4/5]

virtual System::SharedPtr< IMathFunction > Aspose::Slides::MathText::IMathElement::AsArgumentOfFunction ( System::SharedPtr< IMathElement functionName)
pure virtual

Takes specified function using this instance as the argument

Parameters
functionNameFunction name
Returns
New math element of type IMathFunction

Example:

auto functionName = System::MakeObject<MathematicalText>(u"sin");
auto functionArg = System::MakeObject<MathematicalText>(u"x");
auto func = functionArg->AsArgumentOfFunction(functionName);

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ AsArgumentOfFunction() [5/5]

virtual System::SharedPtr< IMathFunction > Aspose::Slides::MathText::IMathElement::AsArgumentOfFunction ( System::String  functionName)
pure virtual

Takes specified function using this instance as the argument

Parameters
functionNameFunction name
Returns
New math element of type IMathFunction

Example:

auto functionArg = System::MakeObject<MathematicalText>(u"x");
auto func = functionArg->AsArgumentOfFunction(u"cos");

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ Divide() [1/4]

virtual System::SharedPtr< IMathFraction > Aspose::Slides::MathText::IMathElement::Divide ( System::SharedPtr< IMathElement denominator)
pure virtual

Creates a fraction with this numerator and specified denominator

Parameters
denominatorDenominator
Returns
new fraction

Example:

auto numerator = System::MakeObject<MathematicalText>(u"x");
auto denumerator = System::MakeObject<MathematicalText>(u"y");
auto fraction = numerator->Divide(denumerator);

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ Divide() [2/4]

virtual System::SharedPtr< IMathFraction > Aspose::Slides::MathText::IMathElement::Divide ( System::SharedPtr< IMathElement denominator,
MathFractionTypes  fractionType 
)
pure virtual

Creates a fraction of the specified type with this numerator and specified denominator

Parameters
denominatorDenominator
fractionTypeFraction type: Bar, NoBar, Skewed, Linear
Returns
new fraction

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ Divide() [3/4]

virtual System::SharedPtr< IMathFraction > Aspose::Slides::MathText::IMathElement::Divide ( System::String  denominator)
pure virtual

Creates a fraction with this numerator and specified denominator

Parameters
denominatorDenominator
Returns
new fraction

Example:

System::SharedPtr<IMathElement> numerator = System::MakeObject<MathematicalText>(u"x");
auto fraction = numerator->Divide(u"y");
Pointer class to wrap types being allocated on heap. Use it to manage memory for classes inheriting O...
Definition: smart_ptr.h:173

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ Divide() [4/4]

virtual System::SharedPtr< IMathFraction > Aspose::Slides::MathText::IMathElement::Divide ( System::String  denominator,
MathFractionTypes  fractionType 
)
pure virtual

Creates a fraction of the specified type with this numerator and specified denominator

Parameters
denominatorDenominator
fractionTypeFraction type: Bar, NoBar, Skewed, Linear
Returns
new fraction

Example:

auto numerator = System::MakeObject<MathematicalText>(u"x");
auto fraction = numerator->Divide(u"y", Aspose::Slides::MathText::MathFractionTypes::Linear);

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ Enclose() [1/2]

virtual System::SharedPtr< IMathDelimiter > Aspose::Slides::MathText::IMathElement::Enclose ( )
pure virtual

Encloses a math element in parenthesis

Returns
The math element of type IMathDelimiter which includes the parenthesis

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ Enclose() [2/2]

virtual System::SharedPtr< IMathDelimiter > Aspose::Slides::MathText::IMathElement::Enclose ( char16_t  beginningCharacter,
char16_t  endingCharacter 
)
pure virtual

Encloses this element in specified characters such as parenthesis or another characters as framing

Parameters
beginningCharacterBeginning character (usually left bracket)
endingCharacterEnding character (usually right bracket)
Returns
The math element of type IMathDelimiter which includes specified characters as framing

Example:

auto element = System::MakeObject<MathematicalText>(u"x");
auto delimiter = element->Enclose(u'[', u']');

Implemented in Aspose::Slides::MathText::MathBlock, Aspose::Slides::MathText::MathDelimiter, and Aspose::Slides::MathText::MathElementBase.

◆ Function() [1/2]

virtual System::SharedPtr< IMathFunction > Aspose::Slides::MathText::IMathElement::Function ( System::SharedPtr< IMathElement functionArgument)
pure virtual

Takes a function of an argument using this instance as the function name

Parameters
functionArgumentAn argument of the function
Returns
New math element of type IMathFunction

Example:

auto functionName = System::MakeObject<MathematicalText>(u"sin");
auto functionArg = System::MakeObject<MathematicalText>(u"x");
auto func = functionName->Function(functionArg);

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ Function() [2/2]

virtual System::SharedPtr< IMathFunction > Aspose::Slides::MathText::IMathElement::Function ( System::String  functionArgument)
pure virtual

Takes a function of an argument using this instance as the function name

Parameters
functionArgumentAn argument of the function
Returns
New math element of type IMathFunction

Example:

auto functionName = System::MakeObject<MathematicalText>(u"sin");
auto func = functionName->Function(u"x");

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ GetChildren()

◆ Group() [1/2]

virtual System::SharedPtr< IMathGroupingCharacter > Aspose::Slides::MathText::IMathElement::Group ( )
pure virtual

Places this element in a group using a bottom curly bracket

Returns
New instance of type IMathGroupingCharacter

Example:

auto groupingElement = System::MakeObject<MathematicalText>(u"x;y;z")->Group();

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ Group() [2/2]

virtual System::SharedPtr< IMathGroupingCharacter > Aspose::Slides::MathText::IMathElement::Group ( char16_t  character,
MathTopBotPositions  position,
MathTopBotPositions  verticalJustification 
)
pure virtual

Places this element in a group using a grouping character such as bottom curly bracket or another

Parameters
characterGrouping Character such as BOTTOM CURLY BRACKET (U+23DF) or any other
positionPosition of grouping character
verticalJustificationVertical justification of group character. Specifies the alignment of the object with respect to the baseline. For example, when the group character is above the object, VerticalJustification of Top signifies that the top of the object falls on the baseline; when VerticalJustification is set to Bottom, the bottom of the object is on the baseline
Returns
New instance of type IMathGroupingCharacter

Example:

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ Integral() [1/5]

virtual System::SharedPtr< IMathNaryOperator > Aspose::Slides::MathText::IMathElement::Integral ( MathIntegralTypes  integralType)
pure virtual

Takes the integral without limits

Parameters
integralTypeIntegral type
Returns
New instance of type IMathNaryOperator

Example:

auto baseElement = System::MakeObject<MathematicalText>(u"\U0001d465");
auto integral = baseElement->Integral(Aspose::Slides::MathText::MathIntegralTypes::Contour);

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ Integral() [2/5]

virtual System::SharedPtr< IMathNaryOperator > Aspose::Slides::MathText::IMathElement::Integral ( MathIntegralTypes  integralType,
System::SharedPtr< IMathElement lowerLimit,
System::SharedPtr< IMathElement upperLimit 
)
pure virtual

Takes the integral

Parameters
integralTypeIntegral type
lowerLimitLower limit of integral
upperLimitUpper limit of integral
Returns
New instance of type IMathNaryOperator

Example:

auto baseElement = System::MakeObject<MathematicalText>(u"\U0001d465");
auto lowerLimit = System::MakeObject<MathematicalText>(u"1");
auto upperLimit = System::MakeObject<MathematicalText>(u"2");
@ UnderOver
Limits draw at top and bottom of the operator symbol

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ Integral() [3/5]

virtual System::SharedPtr< IMathNaryOperator > Aspose::Slides::MathText::IMathElement::Integral ( MathIntegralTypes  integralType,
System::SharedPtr< IMathElement lowerLimit,
System::SharedPtr< IMathElement upperLimit,
MathLimitLocations  limitLocations 
)
pure virtual

Takes the integral

Parameters
integralTypeIntegral type
lowerLimitLower limit of integral
upperLimitUpper limit of integral
limitLocationslocation of limits
Returns
New instance of type IMathNaryOperator

Example:

auto baseElement = System::MakeObject<MathematicalText>(u"\U0001d465");
auto lowerLimit = System::MakeObject<MathematicalText>(u"1");
auto upperLimit = System::MakeObject<MathematicalText>(u"2");

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ Integral() [4/5]

virtual System::SharedPtr< IMathNaryOperator > Aspose::Slides::MathText::IMathElement::Integral ( MathIntegralTypes  integralType,
System::String  lowerLimit,
System::String  upperLimit 
)
pure virtual

Takes the integral

Parameters
integralTypeIntegral type
lowerLimitLower limit of integral
upperLimitUpper limit of integral
Returns
New instance of type IMathNaryOperator

Example:

auto baseElement = System::MakeObject<MathematicalText>(u"\U0001d465");
auto integral = baseElement->Integral(Aspose::Slides::MathText::MathIntegralTypes::Simple, u"1", u"5");

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ Integral() [5/5]

virtual System::SharedPtr< IMathNaryOperator > Aspose::Slides::MathText::IMathElement::Integral ( MathIntegralTypes  integralType,
System::String  lowerLimit,
System::String  upperLimit,
MathLimitLocations  limitLocations 
)
pure virtual

Takes the integral

Parameters
integralTypeIntegral type
lowerLimitLower limit of integral
upperLimitUpper limit of integral
limitLocationslocation of limits
Returns
New instance of type IMathNaryOperator

Example:

auto baseElement = System::MakeObject<MathematicalText>(u"\U0001d465");

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ Join() [1/2]

virtual System::SharedPtr< IMathBlock > Aspose::Slides::MathText::IMathElement::Join ( System::SharedPtr< IMathElement mathElement)
pure virtual

Joins a mathematical element and forms a mathematical block

Parameters
mathElementThe element to be joined
Returns
A new IMathBlock containing this instance and specified argument

Example:

auto element1 = System::MakeObject<MathematicalText>(u"x");
auto element2 = System::MakeObject<MathematicalText>(u"y");
auto block = element1->Join(element2);

Implemented in Aspose::Slides::MathText::MathBlock, and Aspose::Slides::MathText::MathElementBase.

◆ Join() [2/2]

virtual System::SharedPtr< IMathBlock > Aspose::Slides::MathText::IMathElement::Join ( System::String  mathText)
pure virtual

Joins a mathematical text and forms a mathematical block

Parameters
mathTextMathematical text to be joined
Returns
A new IMathBlock containing this instance and specified argument

Example:

System::SharedPtr<IMathElement> element = System::MakeObject<MathematicalText>(u"x");
auto block = element->Join(u"+y");

Implemented in Aspose::Slides::MathText::MathBlock, and Aspose::Slides::MathText::MathElementBase.

◆ Nary() [1/2]

virtual System::SharedPtr< IMathNaryOperator > Aspose::Slides::MathText::IMathElement::Nary ( MathNaryOperatorTypes  type,
System::SharedPtr< IMathElement lowerLimit,
System::SharedPtr< IMathElement upperLimit 
)
pure virtual

Creates a N-ary operator

Parameters
typeThe N-ary operator type
lowerLimitThe lower limit
upperLimitThe upper limit
Returns
New instance of type IMathNaryOperator

Example:

System::SharedPtr<IMathElement> baseElement = System::MakeObject<MathematicalText>(u"i-1");
System::SharedPtr<IMathElement> lowerLimit = System::MakeObject<MathematicalText>(u"i=0");
System::SharedPtr<IMathElement> upperLimit = System::MakeObject<MathematicalText>(u"\U0001d45b");
auto naryOperator = baseElement->Nary(Aspose::Slides::MathText::MathNaryOperatorTypes::Summation, lowerLimit, upperLimit);

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ Nary() [2/2]

virtual System::SharedPtr< IMathNaryOperator > Aspose::Slides::MathText::IMathElement::Nary ( MathNaryOperatorTypes  type,
System::String  lowerLimit,
System::String  upperLimit 
)
pure virtual

Creates a N-ary operator

Parameters
typeThe N-ary operator type
lowerLimitThe lower limit
upperLimitThe upper limit
Returns
New instance of type IMathNaryOperator

Example:

auto naryOperator = System::MakeObject<MathematicalText>(u"i")->Nary(Aspose::Slides::MathText::MathNaryOperatorTypes::Summation, u"i=0", u"\U0001d45b");

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ Overbar()

virtual System::SharedPtr< IMathBar > Aspose::Slides::MathText::IMathElement::Overbar ( )
pure virtual

Sets a bar on the top of this element

Returns
New instance of type IMathBar

Example:

auto bar = System::MakeObject<MathematicalText>(u"x")->Overbar();

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ Radical() [1/2]

virtual System::SharedPtr< IMathRadical > Aspose::Slides::MathText::IMathElement::Radical ( System::SharedPtr< IMathElement degree)
pure virtual

Specifies the mathematical root of the given degree from the specified argument.

Parameters
degreeArgument of Radical
Returns
New instance of type IMathRadical

Example:

auto baseElement = System::MakeObject<MathematicalText>(u"2px");
auto degree = System::MakeObject<MathematicalText>(u"y");
auto radical = baseElement->Radical(degree);

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ Radical() [2/2]

virtual System::SharedPtr< IMathRadical > Aspose::Slides::MathText::IMathElement::Radical ( System::String  degree)
pure virtual

Specifies the mathematical root of the given degree from the specified argument.

Parameters
degreeArgument of Radical
Returns
New instance of type IMathRadical

Example:

auto baseElement = System::MakeObject<MathematicalText>(u"2px");
auto radical = baseElement->Radical(u"3");

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ SetLowerLimit() [1/2]

virtual System::SharedPtr< IMathLimit > Aspose::Slides::MathText::IMathElement::SetLowerLimit ( System::SharedPtr< IMathElement limit)
pure virtual

Takes lower limit

Parameters
limitlimit
Returns
New instance of type IMathLimit

Example:

auto baseElement = System::MakeObject<MathematicalText>(u"lim");
auto limitValue = System::MakeObject<MathematicalText>(u"\U0001d45b→∞");
auto limitElement = baseElement->SetLowerLimit(limitValue);

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ SetLowerLimit() [2/2]

virtual System::SharedPtr< IMathLimit > Aspose::Slides::MathText::IMathElement::SetLowerLimit ( System::String  limit)
pure virtual

Takes lower limit

Parameters
limitlimit
Returns
New instance of type IMathLimit

Example:

System::SharedPtr<IMathElement> baseElement = System::MakeObject<MathematicalText>(u"lim");
auto limitElement = baseElement->SetLowerLimit(u"\U0001d45b→∞");

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ SetSubscript() [1/2]

virtual System::SharedPtr< IMathSubscriptElement > Aspose::Slides::MathText::IMathElement::SetSubscript ( System::SharedPtr< IMathElement subscript)
pure virtual

Creates subscript

Parameters
subscriptSubscript (lower index on the right)
Returns
New math element of type IMathSubscriptElement

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ SetSubscript() [2/2]

virtual System::SharedPtr< IMathSubscriptElement > Aspose::Slides::MathText::IMathElement::SetSubscript ( System::String  subscript)
pure virtual

Creates subscript

Parameters
subscriptSubscript (lower index on the right)
Returns
New math element of type IMathSubscriptElement

Example:

auto element = System::MakeObject<MathematicalText>(u"N");
auto subscript = element->SetSubscript(u"i");

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ SetSubSuperscriptOnTheLeft() [1/2]

virtual System::SharedPtr< IMathLeftSubSuperscriptElement > Aspose::Slides::MathText::IMathElement::SetSubSuperscriptOnTheLeft ( System::SharedPtr< IMathElement subscript,
System::SharedPtr< IMathElement superscript 
)
pure virtual

Creates subscript and superscript on the left

Parameters
subscriptSubscript (lower index on the left)
superscriptSuperscript (upper index on the left)
Returns
New math element of type IMathLeftSubSuperscriptElement

Example:

auto baseElement = System::MakeObject<MathematicalText>(u"N");
auto subscript = System::MakeObject<MathematicalText>(u"i");
auto superscript = System::MakeObject<MathematicalText>(u"j");
auto leftSubsuperscript = baseElement->SetSubSuperscriptOnTheLeft(subscript, superscript);

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ SetSubSuperscriptOnTheLeft() [2/2]

virtual System::SharedPtr< IMathLeftSubSuperscriptElement > Aspose::Slides::MathText::IMathElement::SetSubSuperscriptOnTheLeft ( System::String  subscript,
System::String  superscript 
)
pure virtual

Creates subscript and superscript on the left

Parameters
subscriptSubscript (lower index on the left)
superscriptSuperscript (upper index on the left)
Returns
New math element of type IMathLeftSubSuperscriptElement

Example:

auto baseElement = System::MakeObject<MathematicalText>(u"N");
auto leftSubsuperscript = baseElement->SetSubSuperscriptOnTheLeft(u"i", u"j");

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ SetSubSuperscriptOnTheRight() [1/2]

virtual System::SharedPtr< IMathRightSubSuperscriptElement > Aspose::Slides::MathText::IMathElement::SetSubSuperscriptOnTheRight ( System::SharedPtr< IMathElement subscript,
System::SharedPtr< IMathElement superscript 
)
pure virtual

Creates subscript and superscript on the right

Parameters
subscriptSubscript (lower index on the right)
superscriptSuperscript (upper index on the right)
Returns
New math element of type IMathRightSubSuperscriptElement

Example:

auto baseElement = System::MakeObject<MathematicalText>(u"N");
auto subscript = System::MakeObject<MathematicalText>(u"i");
auto superscript = System::MakeObject<MathematicalText>(u"j");
auto subsuperscript = baseElement->SetSubSuperscriptOnTheRight(subscript, superscript);

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ SetSubSuperscriptOnTheRight() [2/2]

virtual System::SharedPtr< IMathRightSubSuperscriptElement > Aspose::Slides::MathText::IMathElement::SetSubSuperscriptOnTheRight ( System::String  subscript,
System::String  superscript 
)
pure virtual

Creates subscript and superscript on the right

Parameters
subscriptSubscript (lower index on the right)
superscriptSuperscript (upper index on the right)
Returns
New math element of type IMathRightSubSuperscriptElement

Example:

auto baseElement = System::MakeObject<MathematicalText>(u"N");
auto subsuperscript = baseElement->SetSubSuperscriptOnTheRight(u"i", u"j");

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ SetSuperscript() [1/2]

virtual System::SharedPtr< IMathSuperscriptElement > Aspose::Slides::MathText::IMathElement::SetSuperscript ( System::SharedPtr< IMathElement superscript)
pure virtual

Creates superscript

Parameters
superscriptSuperscript (upper index on the right)
Returns
New math element of type IMathSuperscriptElement

Example:

auto element = System::MakeObject<MathematicalText>(u"N");
auto index = System::MakeObject<MathematicalText>(u"4");
auto superscript = element->SetSuperscript(index);

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ SetSuperscript() [2/2]

virtual System::SharedPtr< IMathSuperscriptElement > Aspose::Slides::MathText::IMathElement::SetSuperscript ( System::String  superscript)
pure virtual

Creates superscript

Parameters
superscriptSuperscript (upper index on the right)
Returns
New math element of type IMathSuperscriptElement

Example:

auto element = System::MakeObject<MathematicalText>(u"N");
auto superscript = element->SetSuperscript(u"4");

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ SetUpperLimit() [1/2]

virtual System::SharedPtr< IMathLimit > Aspose::Slides::MathText::IMathElement::SetUpperLimit ( System::SharedPtr< IMathElement limit)
pure virtual

Takes upper limit

Parameters
limitlimit
Returns
New instance of type IMathLimit

Example:

auto baseElement = System::MakeObject<MathematicalText>(u"y");
auto limitValue = System::MakeObject<MathematicalText>(u"y?>1");
auto limitElement = baseElement->SetUpperLimit(limitValue);

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ SetUpperLimit() [2/2]

virtual System::SharedPtr< IMathLimit > Aspose::Slides::MathText::IMathElement::SetUpperLimit ( System::String  limit)
pure virtual

Takes upper limit

Parameters
limitlimit
Returns
New instance of type IMathLimit

Example:

auto baseElement = System::MakeObject<MathematicalText>(u"y");
auto limitElement = baseElement->SetUpperLimit(u"y?>1");

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ ToBorderBox() [1/2]

virtual System::SharedPtr< IMathBorderBox > Aspose::Slides::MathText::IMathElement::ToBorderBox ( )
pure virtual

Places this element in a border-box

Returns
Border-box with this element placed inside

Example:

auto borderBox = System::MakeObject<MathematicalText>(u"x+y+z")->ToBorderBox();

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ ToBorderBox() [2/2]

virtual System::SharedPtr< IMathBorderBox > Aspose::Slides::MathText::IMathElement::ToBorderBox ( bool  hideTop,
bool  hideBottom,
bool  hideLeft,
bool  hideRight,
bool  strikethroughHorizontal,
bool  strikethroughVertical,
bool  strikethroughBottomLeftToTopRight,
bool  strikethroughTopLeftToBottomRight 
)
pure virtual

Places this element in a border-box

Parameters
hideTopHide Top Edge
hideBottomHide Bottom Edge
hideLeftHide Left Edge
hideRightHide Right Edge
strikethroughHorizontalBorder Box Strikethrough Horizontal
strikethroughVerticalBorder Box Strikethrough Vertical
strikethroughBottomLeftToTopRightBorder Box Strikethrough Bottom-Left to Top-Right
strikethroughTopLeftToBottomRightBorder Box Strikethrough Top-Left to Bottom-Right
Returns
Border-box with this element placed inside

Example:

auto borderBox = System::MakeObject<MathematicalText>(u"x+y+z")->ToBorderBox(false, false, true, true, false, false, false, false);

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ ToBox()

virtual System::SharedPtr< IMathBox > Aspose::Slides::MathText::IMathElement::ToBox ( )
pure virtual

Places this element in a non-visual box (logical grouping) which is used to group components of an equation or other instance of mathematical text. A boxed object can (for example) serve as an operator emulator with or without an alignment point, serve as a line break point, or be grouped such as not to allow line breaks within.

Returns
Logical box with this element placed inside

Example:

auto box = System::MakeObject<MathematicalText>(u"x:=y")->ToBox();

Implemented in Aspose::Slides::MathText::MathElementBase.

◆ ToMathArray()

virtual System::SharedPtr< IMathArray > Aspose::Slides::MathText::IMathElement::ToMathArray ( )
pure virtual

Puts in a vertical array

Returns
New instance of type IMathArray

Example:

auto array = System::MakeObject<MathematicalText>(u"x1")->Join(u"x2")->Join(u"x3")->ToMathArray();

Implemented in Aspose::Slides::MathText::MathBlock, and Aspose::Slides::MathText::MathElementBase.

◆ Underbar()

virtual System::SharedPtr< IMathBar > Aspose::Slides::MathText::IMathElement::Underbar ( )
pure virtual

Sets a bar on the bottom of this element

Returns
New instance of type IMathBar

Example:

auto bar = System::MakeObject<MathematicalText>(u"x")->Underbar();

Implemented in Aspose::Slides::MathText::MathElementBase.