IMathMatrix

IMathMatrix 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 IMathMatrix : public virtual Aspose::Slides::MathText::IMathElement

Methods

MethodDescription
virtual System::SharedPtr<IMathAccent> Accent(char16_t)Sets an accent mark (a character on the top of this element)
virtual System::SharedPtr<IMathFunction> AsArgumentOfFunction(System::SharedPtr<IMathElement>)Takes specified function using this instance as the argument
virtual System::SharedPtr<IMathFunction> AsArgumentOfFunction(System::String)Takes specified function using this instance as the argument
virtual System::SharedPtr<IMathFunction> AsArgumentOfFunction(MathFunctionsOfOneArgument)Takes specified function using this instance as the argument
virtual System::SharedPtr<IMathFunction> AsArgumentOfFunction(MathFunctionsOfTwoArguments, System::SharedPtr<IMathElement>)Takes specified function using this instance as the argument and specified additional argument
virtual System::SharedPtr<IMathFunction> AsArgumentOfFunction(MathFunctionsOfTwoArguments, System::String)Takes specified function using this instance as the argument and specified additional argument
virtual void DeleteColumn(int32_t)Deletes the specified column
virtual void DeleteRow(int32_t)Deletes the specified row
virtual System::SharedPtr<IMathFraction> Divide(System::SharedPtr<IMathElement>)Creates a fraction with this numerator and specified denominator
virtual System::SharedPtr<IMathFraction> Divide(System::String)Creates a fraction with this numerator and specified denominator
virtual System::SharedPtr<IMathFraction> Divide(System::SharedPtr<IMathElement>, MathFractionTypes)Creates a fraction of the specified type with this numerator and specified denominator
virtual System::SharedPtr<IMathFraction> Divide(System::String, MathFractionTypes)Creates a fraction of the specified type with this numerator and specified denominator
virtual System::SharedPtr<IMathDelimiter> Enclose()Encloses a math element in parenthesis
virtual System::SharedPtr<IMathDelimiter> Enclose(char16_t, char16_t)Encloses this 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.
virtual System::SharedPtr<IMathFunction> Function(System::SharedPtr<IMathElement>)Takes a function of an argument using this instance as the function name
virtual System::SharedPtr<IMathFunction> Function(System::String)Takes a function of an argument using this instance as the function name
virtual MathVerticalAlignment get_BaseJustification()Specifies the vertical justification respect to surrounding text. Possible values are top, bottom, and center. Default: Center
virtual int32_t get_ColumnCount()Number of columns in the matrix
virtual uint32_t get_ColumnGap()The 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
virtual MathSpacingRules get_ColumnGapRule()The type of horizontal spacing between columns of a matrix; Horizontal spacing units can be ems or points (stored as twips). Default: SingleSpacingGap (0)
virtual bool get_HidePlaceholders()Hide the placeholders for empty matrix elements Default: false
virtual uint32_t get_MinColumnWidth()Minimum 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.
virtual int32_t get_RowCount()Number of rows in the matrix
virtual uint32_t get_RowGap()The 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
virtual MathSpacingRules get_RowGapRule()The type of vertical spacing between rows of a matrix; Vertical spacing units can be lines or points (stored as twips). Default: SingleSpacingGap (0)
virtual System::ArrayPtr<System::SharedPtr<IMathElement>> GetChildren()Get children elements
virtual MathHorizontalAlignment GetColumnAlignment(int32_t)Get 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.
virtual System::SharedPtr<IMathGroupingCharacter> Group()Places this element in a group using a bottom curly bracket
virtual System::SharedPtr<IMathGroupingCharacter> Group(char16_t, MathTopBotPositions, MathTopBotPositions)Places this element in a group using a grouping character such as bottom curly bracket or another
virtual System::SharedPtr<IMathElement> idx_get(int32_t, int32_t)Elements of matrix
virtual void idx_set(int32_t, int32_t, System::SharedPtr<IMathElement>)Elements of matrix
virtual void InsertColumnAfter(int32_t)Insert a new column after the specified one Initially all elements in the new column are null.
virtual void InsertColumnBefore(int32_t)Insert a new column before the specified one Initially all elements in the new column are null.
virtual void InsertRowAfter(int32_t)Insert a new row after the specified one Initially all elements in the new row are null.
virtual void InsertRowBefore(int32_t)Insert a new row before the specified one Initially all elements in the new row are null.
virtual System::SharedPtr<IMathNaryOperator> Integral(MathIntegralTypes, System::SharedPtr<IMathElement>, System::SharedPtr<IMathElement>, MathLimitLocations)Takes the integral
virtual System::SharedPtr<IMathNaryOperator> Integral(MathIntegralTypes, System::SharedPtr<IMathElement>, System::SharedPtr<IMathElement>)Takes the integral
virtual System::SharedPtr<IMathNaryOperator> Integral(MathIntegralTypes)Takes the integral without limits
virtual System::SharedPtr<IMathNaryOperator> Integral(MathIntegralTypes, System::String, System::String, MathLimitLocations)Takes the integral
virtual System::SharedPtr<IMathNaryOperator> Integral(MathIntegralTypes, System::String, System::String)Takes the integral
virtual bool Is(const TypeInfo&) constCheck if object represents an instance of type described by targetType. Analog of C# ‘is’ operator.
virtual System::SharedPtr<IMathBlock> Join(System::SharedPtr<IMathElement>)Joins a mathematical element and forms a mathematical block
virtual System::SharedPtr<IMathBlock> Join(System::String)Joins a mathematical text and forms a mathematical block
void Lock()Implements C# lock() statement locking. Call directly or use LockContext sentry object.
virtual ptr MemberwiseClone() constAnalog of C# Object.MemberwiseClone() method. Enables cloning custom types.
virtual System::SharedPtr<IMathNaryOperator> Nary(MathNaryOperatorTypes, System::SharedPtr<IMathElement>, System::SharedPtr<IMathElement>)Creates a N-ary operator
virtual System::SharedPtr<IMathNaryOperator> Nary(MathNaryOperatorTypes, System::String, System::String)Creates 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.
virtual System::SharedPtr<IMathBar> Overbar()Sets a bar on the top of this element
virtual System::SharedPtr<IMathRadical> Radical(System::SharedPtr<IMathElement>)Specifies the mathematical root of the given degree from the specified argument.
virtual System::SharedPtr<IMathRadical> Radical(System::String)Specifies 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.
virtual void set_BaseJustification(MathVerticalAlignment)Specifies the vertical justification respect to surrounding text. Possible values are top, bottom, and center. Default: Center
virtual void set_ColumnGap(uint32_t)The 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
virtual void set_ColumnGapRule(MathSpacingRules)The type of horizontal spacing between columns of a matrix; Horizontal spacing units can be ems or points (stored as twips). Default: SingleSpacingGap (0)
virtual void set_HidePlaceholders(bool)Hide the placeholders for empty matrix elements Default: false
virtual void set_MinColumnWidth(uint32_t)Minimum 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.
virtual void set_RowGap(uint32_t)The 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
virtual void set_RowGapRule(MathSpacingRules)The type of vertical spacing between rows of a matrix; Vertical spacing units can be lines or points (stored as twips). Default: SingleSpacingGap (0)
virtual void SetColumnAlignment(int32_t, MathHorizontalAlignment)Set the horizontal alignment of the specified column
virtual void SetColumnsAlignment(int32_t, uint32_t, MathHorizontalAlignment)Set the horizontal alignment of the specified columns
virtual System::SharedPtr<IMathLimit> SetLowerLimit(System::SharedPtr<IMathElement>)Takes lower limit
virtual System::SharedPtr<IMathLimit> SetLowerLimit(System::String)Takes lower limit
virtual System::SharedPtr<IMathSubscriptElement> SetSubscript(System::SharedPtr<IMathElement>)Creates subscript
virtual System::SharedPtr<IMathSubscriptElement> SetSubscript(System::String)Creates subscript
virtual System::SharedPtr<IMathLeftSubSuperscriptElement> SetSubSuperscriptOnTheLeft(System::SharedPtr<IMathElement>, System::SharedPtr<IMathElement>)Creates subscript and superscript on the left
virtual System::SharedPtr<IMathLeftSubSuperscriptElement> SetSubSuperscriptOnTheLeft(System::String, System::String)Creates subscript and superscript on the left
virtual System::SharedPtr<IMathRightSubSuperscriptElement> SetSubSuperscriptOnTheRight(System::SharedPtr<IMathElement>, System::SharedPtr<IMathElement>)Creates subscript and superscript on the right
virtual System::SharedPtr<IMathRightSubSuperscriptElement> SetSubSuperscriptOnTheRight(System::String, System::String)Creates subscript and superscript on the right
virtual System::SharedPtr<IMathSuperscriptElement> SetSuperscript(System::SharedPtr<IMathElement>)Creates superscript
virtual System::SharedPtr<IMathSuperscriptElement> SetSuperscript(System::String)Creates 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.
virtual System::SharedPtr<IMathLimit> SetUpperLimit(System::SharedPtr<IMathElement>)Takes upper limit
virtual System::SharedPtr<IMathLimit> SetUpperLimit(System::String)Takes 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.
virtual System::SharedPtr<IMathBorderBox> ToBorderBox()Places this element in a border-box
virtual System::SharedPtr<IMathBorderBox> ToBorderBox(bool, bool, bool, bool, bool, bool, bool, bool)Places this element in a border-box
virtual System::SharedPtr<IMathBox> ToBox()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.
virtual System::SharedPtr<IMathArray> ToMathArray()Puts 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.
virtual System::SharedPtr<IMathBar> Underbar()Sets 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:

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

See Also