Aspose::Words::Drawing::ShapeType enum

ShapeType enum

Specifies the type of shape in a Microsoft Word document.

enum class ShapeType

Values

NameValueDescription
Image75The shape is an image.
TextBox202The shape is a textbox. Note that shapes of many other types can also have text inside them too. A shape does not have to have this type to contain text.
Group-1The shape is a group shape.
OleObject-2The shape is an OLE object. You cannot create shapes of this type in the document.
OleControl201The shape is an ActiveX control. You cannot create shapes of this type in the document.
NonPrimitive0A shape drawn by user and consisting of multiple segments and/or vertices (curve, freeform or scribble). You cannot create shapes of this type in the document.
Rectangle1Rectangle.
RoundRectangle2Round rectangle.
Ellipse3Ellipse.
Diamond4Diamond.
Triangle5Triangle.
RightTriangle6Right triangle.
Parallelogram7Parallelogram.
Trapezoid8Trapezoid.
Hexagon9Hexagon.
Octagon10Octagon.
Plus11Plus.
Star12Star.
Arrow13Arrow.
ThickArrow14Thick arrow.
HomePlate15Home plate.
Cube16Cube.
Balloon17Balloon.
Seal18Seal.
Arc19Arc.
Line20Line.
Plaque21Plaque.
Can22Can.
Donut23Donut.
TextSimple24Text simple.
TextOctagon25Text octagon.
TextHexagon26Text hexagon.
TextCurve27Text curve.
TextWave28Text wave.
TextRing29Text ring.
TextOnCurve30Text on curve.
TextOnRing31Text on ring.
StraightConnector132A straight connector shape.
BentConnector233A bent connector shape with two segments.
BentConnector334A bent connector shape with three segments.
BentConnector435A bent connector shape with four segments.
BentConnector536A bent connector shape with five segments.
CurvedConnector237A curved connector shape with two segments.
CurvedConnector338A curved connector shape with three segments.
CurvedConnector439A curved connector shape with four segments.
CurvedConnector540A curved connector shape with five segments.
Callout141A callout shape with one arrow.
Callout242A callout shape with two arrows.
Callout343A callout shape with three arrows.
AccentCallout144An accent callout shape with one arrow.
AccentCallout245An accent callout shape with two arrows.
AccentCallout346An accent callout shape with three arrows.
BorderCallout147Border callout 1.
BorderCallout248Border callout 2.
BorderCallout349Border callout 3.
AccentBorderCallout150Accent border callout 1.
AccentBorderCallout251Accent border callout 2.
AccentBorderCallout352Accent border callout 3.
Ribbon53Ribbon.
Ribbon254Ribbon 2.
Chevron55Chevron.
Pentagon56Pentagon.
NoSmoking57NoSmoking.
Seal858Eight-pointed star.
Seal165916-pointed star.
Seal326032-pointed star.
WedgeRectCallout61Wedge rect callout.
WedgeRRectCallout62Wedge R rect callout.
WedgeEllipseCallout63Wedge ellipse callout.
Wave64Wave.
FoldedCorner65Folded corner.
LeftArrow66Left arrow.
DownArrow67Down arrow.
UpArrow68Up arrow.
LeftRightArrow69Left right arrow.
UpDownArrow70Up down arrow.
IrregularSeal171Irregular seal 1.
IrregularSeal272Irregular seal 2.
LightningBolt73Lightning bolt.
Heart74Heart.
QuadArrow76Quad arrow.
LeftArrowCallout77Left arrow callout.
RightArrowCallout78Right arrow callout.
UpArrowCallout79Up arrow callout.
DownArrowCallout80Down arrow callout.
LeftRightArrowCallout81Left right arrow callout.
UpDownArrowCallout82Up down arrow callout.
QuadArrowCallout83Quad arrow callout.
Bevel84Bevel.
LeftBracket85Left bracket.
RightBracket86Right bracket.
LeftBrace87Left brace.
RightBrace88Right brace.
LeftUpArrow89Left up arrow.
BentUpArrow90Bent up arrow.
BentArrow91Bent arrow.
Seal249224-pointed star.
StripedRightArrow93Striped right arrow.
NotchedRightArrow94Notched right arrow.
BlockArc95Block arc.
SmileyFace96Smiley face.
VerticalScroll97Vertical scroll.
HorizontalScroll98Horizontal scroll.
CircularArrow99Circular arrow.
CustomShape100This shape type seems to be set for shapes that are not part of the standard set of the auto shapes in Microsoft Word. For example, if you insert a new auto shape from ClipArt. You cannot create shapes of this type in the document.
UturnArrow101Uturn arrow.
CurvedRightArrow102Curved right arrow.
CurvedLeftArrow103Curved left arrow.
CurvedUpArrow104Curved up arrow.
CurvedDownArrow105Curved down arrow.
CloudCallout106Cloud callout.
EllipseRibbon107Ellipse ribbon.
EllipseRibbon2108Ellipse ribbon 2.
FlowChartProcess109Flow chart process.
FlowChartDecision110Flow chart decision.
FlowChartInputOutput111Flow chart input output.
FlowChartPredefinedProcess112Flow chart predefined process.
FlowChartInternalStorage113Flow chart internal storage.
FlowChartDocument114Flow chart document.
FlowChartMultidocument115Flow chart multi document.
FlowChartTerminator116Flow chart terminator.
FlowChartPreparation117Flow chart preparation.
FlowChartManualInput118Flow chart manual input.
FlowChartManualOperation119Flow chart manual operation.
FlowChartConnector120Flow chart connector.
FlowChartPunchedCard121Flow chart punched card.
FlowChartPunchedTape122Flow chart punched tape.
FlowChartSummingJunction123Flow chart summing junction.
FlowChartOr124Flow chart or.
FlowChartCollate125Flow chart collate.
FlowChartSort126Flow chart sort.
FlowChartExtract127Flow chart extract.
FlowChartMerge128Flow chart merge.
FlowChartOfflineStorage129Flow chart off-line storage.
FlowChartOnlineStorage130Flow chart on-line storage.
FlowChartMagneticTape131Flow char magnetic tape.
FlowChartMagneticDisk132Flow chart magnetic disk.
FlowChartMagneticDrum133Flow chart magnetic drum.
FlowChartDisplay134Flow chart display.
FlowChartDelay135Flow chart delay.
TextPlainText136Plain-text, WordArt object.
TextStop137Stop, WordArt object.
TextTriangle138Triangle, WordArt object.
TextTriangleInverted139Triangle inverted, WordArt object.
TextChevron140Chevron, WordArt object.
TextChevronInverted141Chevron inverted, WordArt object.
TextRingInside142Ring inside, WordArt object.
TextRingOutside143Ring outside, WordArt object.
TextArchUpCurve144Arch up curve, WordArt object.
TextArchDownCurve145Arch down curve, WordArt object.
TextCircleCurve146Circle curve, WordArt object.
TextButtonCurve147Button curve, WordArt object.
TextArchUpPour148Arch up pour, WordArt object.
TextArchDownPour149Arch down pour, WordArt object.
TextCirclePour150Circle pour, WordArt object.
TextButtonPour151Button pour, WordArt object.
TextCurveUp152Curve up, WordArt object.
TextCurveDown153Curve down, WordArt object.
TextCascadeUp154Cascade up, WordArt object.
TextCascadeDown155Cascade down, WordArt object.
TextWave1156Wave 1, WordArt object.
TextWave2157Wave 2, WordArt object.
TextWave3158Wave 3, WordArt object.
TextWave4159Wave 4, WordArt object.
TextInflate160Inflate, WordArt object.
TextDeflate161Deflate, WordArt object.
TextInflateBottom162Inflate bottom, WordArt object.
TextDeflateBottom163Deflate bottom, WordArt object.
TextInflateTop164Inflate top, WordArt object.
TextDeflateTop165Deflate top, WordArt object.
TextDeflateInflate166Deflate inflate, WordArt object.
TextDeflateInflateDeflate167Deflate inflate deflate, WordArt object.
TextFadeRight168Fade right, WordArt object.
TextFadeLeft169Fade left, WordArt object.
TextFadeUp170Fade up, WordArt object.
TextFadeDown171Fade down, WordArt object.
TextSlantUp172Slant up, WordArt object.
TextSlantDown173Slant down, WordArt object.
TextCanUp174Can up, WordArt object.
TextCanDown175Can down, WordArt object.
FlowChartAlternateProcess176Flow chart alternate process.
FlowChartOffpageConnector177Flow chart off page connector.
Callout90178Callout 90.
AccentCallout90179Accent callout 90.
BorderCallout90180Border callout 90.
AccentBorderCallout90181Accent border callout 90.
LeftRightUpArrow182Left right up arrow.
Sun183Sun.
Moon184Moon.
BracketPair185Bracket pair.
BracePair186Brace pair.
Seal4187Four-pointed star.
DoubleWave188Double wave.
ActionButtonBlank189Action button blank.
ActionButtonHome190Action button home.
ActionButtonHelp191Action button help.
ActionButtonInformation192Action button information.
ActionButtonForwardNext193Action button forward next.
ActionButtonBackPrevious194Action button back previous.
ActionButtonEnd195Action button end.
ActionButtonBeginning196Action button beginning.
ActionButtonReturn197Action button return.
ActionButtonDocument198Action button document.
ActionButtonSound199Action button sound.
ActionButtonMovie200Action button movie.
SingleCornerSnipped203Snip single corner rectangle object.
TopCornersSnipped204Snip same side corner rectangle.
DiagonalCornersSnipped205Snip diagonal corner rectangle.
TopCornersOneRoundedOneSnipped206Snip and round single corner rectangle.
SingleCornerRounded207Round single corner rectangle.
TopCornersRounded208Round same side corner rectangle.
DiagonalCornersRounded209Round diagonal corner rectangle.
Heptagon210Heptagon.
Cloud211Cloud.
Seal6212Six-pointed star.
Seal7213Seven-pointed star.
Seal10214Ten-pointed star.
Seal12215Twelve-pointed star.
SwooshArrow216Swoosh arrow.
Teardrop217Teardrop.
SquareTabs218Square tabs.
PlaqueTabs219Plaque tabs.
Pie220Pie.
WedgePie221Wedge pie.
InverseLine222Inverse line.
MathPlus223Math plus.
MathMinus224Math minus.
MathMultiply225Math multiply.
MathDivide226Math divide.
MathEqual227Math equal.
MathNotEqual228Math not equal.
NonIsoscelesTrapezoid229Non-isosceles trapezoid.
LeftRightCircularArrow230Left-right circular arrow.
LeftRightRibbon231Left-right ribbon.
LeftCircularArrow232Left circular arrow.
Frame233Frame.
HalfFrame234Half frame.
Funnel235Funnel.
Gear6236Six-tooth gear.
Gear9237Nine-tooth gear.
Decagon238Decagon.
Dodecagon239Dodecagon.
DiagonalStripe240Diagonal stripe.
Corner241Corner.
CornerTabs242Corner tabs.
Chord243Chord.
ChartPlus244Chart plus.
ChartStar245Chart star.
ChartX246Chart X.
MinValuen/aReserved for the system use.

Examples

Shows how to insert a shape with an image from the local file system into a document.

auto doc = MakeObject<Document>();

// The "Shape" class's public constructor will create a shape with "ShapeMarkupLanguage.Vml" markup type.
// If you need to create a shape of a non-primitive type, such as SingleCornerSnipped, TopCornersSnipped, DiagonalCornersSnipped,
// TopCornersOneRoundedOneSnipped, SingleCornerRounded, TopCornersRounded, or DiagonalCornersRounded,
// please use DocumentBuilder.InsertShape.
auto shape = MakeObject<Shape>(doc, ShapeType::Image);
shape->get_ImageData()->SetImage(ImageDir + u"Windows MetaFile.wmf");
shape->set_Width(100);
shape->set_Height(100);

doc->get_FirstSection()->get_Body()->get_FirstParagraph()->AppendChild(shape);

doc->Save(ArtifactsDir + u"Image.FromFile.docx");

Shows how Aspose.Words identify shapes.

auto doc = MakeObject<Document>();
auto builder = MakeObject<DocumentBuilder>(doc);

builder->InsertShape(ShapeType::Heptagon, RelativeHorizontalPosition::Page, 0, RelativeVerticalPosition::Page, 0, 0, 0, WrapType::None);

builder->InsertShape(ShapeType::Cloud, RelativeHorizontalPosition::RightMargin, 0, RelativeVerticalPosition::Page, 0, 0, 0, WrapType::None);

builder->InsertShape(ShapeType::MathPlus, RelativeHorizontalPosition::RightMargin, 0, RelativeVerticalPosition::Page, 0, 0, 0, WrapType::None);

// To correct identify shape types you need to work with shapes as DML.
auto saveOptions = MakeObject<OoxmlSaveOptions>(SaveFormat::Docx);
saveOptions->set_Compliance(OoxmlCompliance::Iso29500_2008_Transitional);

doc->Save(ArtifactsDir + u"Shape.ShapeTypes.docx", saveOptions);
doc = MakeObject<Document>(ArtifactsDir + u"Shape.ShapeTypes.docx");

ArrayPtr<SharedPtr<Shape>> shapes = doc->GetChildNodes(NodeType::Shape, true)->LINQ_OfType<SharedPtr<Shape>>()->LINQ_ToArray();

for (SharedPtr<Shape> shape : shapes)
{
    std::cout << System::EnumGetName(shape->get_ShapeType()) << std::endl;
}

See Also