MathMatrix

MathMatrix class

Specifies the Matrix object, consisting of child elements laid out in one or more rows and columns. It is important to note that matrices do not have built in delimiters. To place the matrix in the brackets you should use the delimiter object (IMathDelimiter). Null arguments can be used to create gaps in matrices.

class MathMatrix : public Aspose::Slides::MathText::MathElementBase,
                   public Aspose::Slides::MathText::IMathMatrix,
                   public Aspose::Slides::MathText::IHasControlCharacterProperties

Methods

MethodDescription
System::SharedPtr<IMathAccent> Accent(char16_t) overrideSets an accent mark (a character on the top of this element)
System::SharedPtr<IMathFunction> AsArgumentOfFunction(System::SharedPtr<IMathElement>) overrideTakes specified function using this instance as the argument
System::SharedPtr<IMathFunction> AsArgumentOfFunction(System::String) overrideTakes specified function using this instance as the argument
System::SharedPtr<IMathFunction> AsArgumentOfFunction(MathFunctionsOfOneArgument) overrideTakes specified function using this instance as the argument
System::SharedPtr<IMathFunction> AsArgumentOfFunction(MathFunctionsOfTwoArguments, System::SharedPtr<IMathElement>) overrideTakes specified function using this instance as the argument and specified additional argument
System::SharedPtr<IMathFunction> AsArgumentOfFunction(MathFunctionsOfTwoArguments, System::String) overrideTakes specified function using this instance as the argument and specified additional argument
void DeleteColumn(int32_t) overrideDeletes the specified column
void DeleteRow(int32_t) overrideDeletes the specified row
System::SharedPtr<IMathFraction> Divide(System::SharedPtr<IMathElement>) overrideCreates a fraction with this numerator and specified denominator
System::SharedPtr<IMathFraction> Divide(System::String) overrideCreates a fraction with this numerator and specified denominator
System::SharedPtr<IMathFraction> Divide(System::SharedPtr<IMathElement>, MathFractionTypes) overrideCreates a fraction of the specified type with this numerator and specified denominator
System::SharedPtr<IMathFraction> Divide(System::String, MathFractionTypes) overrideCreates a fraction of the specified type with this numerator and specified denominator
System::SharedPtr<IMathDelimiter> Enclose() overrideEncloses a math element in parenthesis
System::SharedPtr<IMathDelimiter> Enclose(char16_t, char16_t) overrideEncloses a math element in specified characters such as parenthesis or another characters as framing
virtual bool Equals(ptr)Compares objects using C# Object.Equals semantics.
static std::enable_if<IsSmartPtr<T1>::value&&IsSmartPtr<T2>::value, bool>::type Equals(T1 const&, T2 const&)Compares reference type objects in C# style.
static std::enable_if<!IsSmartPtr<T1>::value&&!IsSmartPtr<T2>::value, bool>::type Equals(T1 const&, T2 const&)Compares value type objects in C# style.
static bool Equals(float const&, float const&)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.
static bool Equals(double const&, double const&)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.
virtual bool FastCast(const Details::FastRttiBase&, void **) constFor internal purposes only.
System::SharedPtr<IMathFunction> Function(System::SharedPtr<IMathElement>) overrideTakes a function of an argument using this instance as the function name
System::SharedPtr<IMathFunction> Function(System::String) overrideTakes a function of an argument using this instance as the function name
MathVerticalAlignment get_BaseJustification() overrideSpecifies the vertical justification respect to surrounding text. Possible values are top, bottom, and center. Default: Center
int32_t get_ColumnCount() overrideNumber of columns in the matrix
uint32_t get_ColumnGap() overrideThe value of horizontal spacing between columns of a matrix; If the ColumnGapRule is set to 3 ("Exactly"), then the unit is interpreted as twips (1/20th of a point) If the ColumnGapRule is set to 4 ("Multiple"), then the unit is interpreted as number of 0.5 em increments. In other cases ignored. Default: 0
MathSpacingRules get_ColumnGapRule() overrideThe type of horizontal spacing between columns of a matrix; Horizontal spacing units can be ems or points (stored as twips). Default: SingleSpacingGap (0)
bool get_HidePlaceholders() overrideHide the placeholders for empty matrix elements Default: false
uint32_t get_MinColumnWidth() overrideMinimum column width in twips (1/20th of a point) The gap spacing (also referred to as \u201CColumn Gap\u201D or \u201CGap Width\u201D) is added to the MinColumnWidth to determine the total Matrix Column Spacing (distance between the same edges of different columns). Default: 0.
int32_t get_RowCount() overrideNumber of rows in the matrix
uint32_t get_RowGap() overrideThe value of vertical spacing between rows of a matrix; If the RowGapRule is set to 3 ("Exactly"), then the unit is interpreted as twips (1/20th of a point) If the RowGapRule is set to 4 ("Multiple"), then the unit is interpreted as half-lines. Default: 0
MathSpacingRules get_RowGapRule() overrideThe type of vertical spacing between rows of a matrix; Vertical spacing units can be lines or points (stored as twips). Default: SingleSpacingGap (0)
System::ArrayPtr<System::SharedPtr<IMathElement>> GetChildren() overrideGet children elements
MathHorizontalAlignment GetColumnAlignment(int32_t) overrideGet the horizontal alignment of the specified column
Detail::SmartPtrCounter * GetCounter()Gets reference counter data structure associated with the object.
virtual int32_t GetHashCode() constAnalog of C# Object.GetHashCode() method. Enables hashing of custom objects.
virtual const TypeInfo& GetType() constGets actual type of object. Analog of C# System.Object.GetType() call.
System::SharedPtr<IMathGroupingCharacter> Group() overridePlaces this element in a group using a bottom curly bracket
System::SharedPtr<IMathGroupingCharacter> Group(char16_t, MathTopBotPositions, MathTopBotPositions) overridePlaces this element in a group using a grouping character such as bottom curly bracket or another
System::SharedPtr<IMathElement> idx_get(int32_t, int32_t) overrideElement of matrix
void idx_set(int32_t, int32_t, System::SharedPtr<IMathElement>) overrideElement of matrix
void InsertColumnAfter(int32_t) overrideInsert a new column after the specified one Initially all elements in the new column are null.
void InsertColumnBefore(int32_t) overrideInsert a new column before the specified one Initially all elements in the new column are null.
void InsertRowAfter(int32_t) overrideInsert a new row after the specified one Initially all elements in the new row are null.
void InsertRowBefore(int32_t) overrideInsert a new row before the specified one Initially all elements in the new row are null.
System::SharedPtr<IMathNaryOperator> Integral(MathIntegralTypes, System::SharedPtr<IMathElement>, System::SharedPtr<IMathElement>, MathLimitLocations) overrideTakes the integral
System::SharedPtr<IMathNaryOperator> Integral(MathIntegralTypes, System::SharedPtr<IMathElement>, System::SharedPtr<IMathElement>) overrideTakes the integral
System::SharedPtr<IMathNaryOperator> Integral(MathIntegralTypes) overrideTakes the integral without limits
System::SharedPtr<IMathNaryOperator> Integral(MathIntegralTypes, System::String, System::String, MathLimitLocations) overrideTakes the integral
System::SharedPtr<IMathNaryOperator> Integral(MathIntegralTypes, System::String, System::String) overrideTakes the integral
virtual bool Is(const TypeInfo&) constCheck if object represents an instance of type described by targetType. Analog of C# ‘is’ operator.
System::SharedPtr<IMathBlock> Join(System::SharedPtr<IMathElement>) overrideJoins a mathematical element and forms a mathematical block
System::SharedPtr<IMathBlock> Join(System::String) overrideJoins a mathematical text and forms a mathematical block
void Lock()Implements C# lock() statement locking. Call directly or use LockContext sentry object.
MathMatrix(int32_t, int32_t)Initializes a new instance of the MathMatrix class.
virtual ptr MemberwiseClone() constAnalog of C# Object.MemberwiseClone() method. Enables cloning custom types.
System::SharedPtr<IMathNaryOperator> Nary(MathNaryOperatorTypes, System::SharedPtr<IMathElement>, System::SharedPtr<IMathElement>) overrideCreates a N-ary operator
System::SharedPtr<IMathNaryOperator> Nary(MathNaryOperatorTypes, System::String, System::String) overrideCreates a N-ary operator
Object()Creates object. Initializes all internal data structures.
Object(Object const&)Copy constructor. Doesn’t copy anything, really, just initializes new object and enables copy constructing subclasses.
Object& operator=(Object const&)Assignment operator. Doesn’t copy anything, really, just initializes new object and enables copy constructing subclasses.
System::SharedPtr<IMathBar> Overbar() overrideSets a bar on the top of this element
System::SharedPtr<IMathRadical> Radical(System::SharedPtr<IMathElement>) overrideSpecifies the mathematical root of the given degree from the specified argument.
System::SharedPtr<IMathRadical> Radical(System::String) overrideSpecifies the mathematical root of the given degree from the specified argument.
static bool ReferenceEquals(ptr const&, ptr const&)Compares objects by reference.
static std::enable_if<!IsSmartPtr<T>::value, bool>::type ReferenceEquals(T const&, T const&)Compares objects by reference.
static std::enable_if<!IsSmartPtr<T>::value, bool>::type ReferenceEquals(T const&, std::nullptr_t)Reference-compares value type object with nullptr.
bool ReferenceEquals(String const&, std::nullptr_t)Specialization of Object::ReferenceEquals for case of string and nullptr.
bool ReferenceEquals(String const&, String const&)Specialization of Object::ReferenceEquals for case of strings.
int RemovedSharedRefs(int)Decreases shared reference count by specified value.
void set_BaseJustification(MathVerticalAlignment) overrideSpecifies the vertical justification respect to surrounding text. Possible values are top, bottom, and center. Default: Center
void set_ColumnGap(uint32_t) overrideThe value of horizontal spacing between columns of a matrix; If the ColumnGapRule is set to 3 ("Exactly"), then the unit is interpreted as twips (1/20th of a point) If the ColumnGapRule is set to 4 ("Multiple"), then the unit is interpreted as number of 0.5 em increments. In other cases ignored. Default: 0
void set_ColumnGapRule(MathSpacingRules) overrideThe type of horizontal spacing between columns of a matrix; Horizontal spacing units can be ems or points (stored as twips). Default: SingleSpacingGap (0)
void set_HidePlaceholders(bool) overrideHide the placeholders for empty matrix elements Default: false
void set_MinColumnWidth(uint32_t) overrideMinimum column width in twips (1/20th of a point) The gap spacing (also referred to as \u201CColumn Gap\u201D or \u201CGap Width\u201D) is added to the MinColumnWidth to determine the total Matrix Column Spacing (distance between the same edges of different columns). Default: 0.
void set_RowGap(uint32_t) overrideThe value of vertical spacing between rows of a matrix; If the RowGapRule is set to 3 ("Exactly"), then the unit is interpreted as twips (1/20th of a point) If the RowGapRule is set to 4 ("Multiple"), then the unit is interpreted as half-lines. Default: 0
void set_RowGapRule(MathSpacingRules) overrideThe type of vertical spacing between rows of a matrix; Vertical spacing units can be lines or points (stored as twips). Default: SingleSpacingGap (0)
void SetColumnAlignment(int32_t, MathHorizontalAlignment) overrideSet the horizontal alignment of the specified column
void SetColumnsAlignment(int32_t, uint32_t, MathHorizontalAlignment) overrideSet the horizontal alignment of the specified columns
System::SharedPtr<IMathLimit> SetLowerLimit(System::SharedPtr<IMathElement>) overrideTakes lower limit
System::SharedPtr<IMathLimit> SetLowerLimit(System::String) overrideTakes lower limit
System::SharedPtr<IMathSubscriptElement> SetSubscript(System::SharedPtr<IMathElement>) overrideCreates subscript
System::SharedPtr<IMathSubscriptElement> SetSubscript(System::String) overrideCreates subscript
System::SharedPtr<IMathLeftSubSuperscriptElement> SetSubSuperscriptOnTheLeft(System::SharedPtr<IMathElement>, System::SharedPtr<IMathElement>) overrideCreates subscript and superscript on the left
System::SharedPtr<IMathLeftSubSuperscriptElement> SetSubSuperscriptOnTheLeft(System::String, System::String) overrideCreates subscript and superscript on the left
System::SharedPtr<IMathRightSubSuperscriptElement> SetSubSuperscriptOnTheRight(System::SharedPtr<IMathElement>, System::SharedPtr<IMathElement>) overrideCreates subscript and superscript on the right
System::SharedPtr<IMathRightSubSuperscriptElement> SetSubSuperscriptOnTheRight(System::String, System::String) overrideCreates subscript and superscript on the right
System::SharedPtr<IMathSuperscriptElement> SetSuperscript(System::SharedPtr<IMathElement>) overrideCreates superscript
System::SharedPtr<IMathSuperscriptElement> SetSuperscript(System::String) overrideCreates superscript
virtual void SetTemplateWeakPtr(uint32_t)Set n’th template argument a weak pointer (rather than shared). Allows switching pointers in containers to weak mode.
System::SharedPtr<IMathLimit> SetUpperLimit(System::SharedPtr<IMathElement>) overrideTakes upper limit
System::SharedPtr<IMathLimit> SetUpperLimit(System::String) overrideTakes upper limit
int SharedCount() constGets current value of shared reference counter.
Object * SharedRefAdded()Increments shared reference count. Shouldn’t be called directly; instead, use smart pointers or ThisProtector.
int SharedRefRemovedSafe()Decrements and returns shared reference count. Shouldn’t be called directly; instead, use smart pointers or ThisProtector.
System::SharedPtr<IMathBorderBox> ToBorderBox() overridePlaces this element in a border-box
System::SharedPtr<IMathBorderBox> ToBorderBox(bool, bool, bool, bool, bool, bool, bool, bool) overridePlaces this element in a border-box
System::SharedPtr<IMathBox> ToBox() overridePlaces 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.
System::SharedPtr<IMathArray> ToMathArray() overridePuts in a vertical array
virtual String ToString() constAnalog of C# Object.ToString() method. Enables converting custom objects to string.
static const TypeInfo& Type()Implements C# typeof(System.Object) construct.
System::SharedPtr<IMathBar> Underbar() overrideSets a bar on the bottom of this element
void Unlock()Implements C# lock() statement unlocking. Call directly or use LockContext sentry object.
Detail::SmartPtrCounter * WeakRefAdded()Increments weak reference count. Shouldn’t be called directly; instead, use smart pointers or ThisProtector.
void WeakRefRemoved()Decrements weak reference count. Shouldn’t be called directly; instead, use smart pointers or ThisProtector.
virtual ~Object()Destroys object. Frees all internal data structures.

Remarks

Example:

System::SharedPtr<IMathMatrix> matrix = System::MakeObject<MathMatrix>(2, 3);
matrix->idx_set(0, 0, System::MakeObject<MathematicalText>(u"item.1.1"));

See Also