Inserts a shape into the Excel spreadsheet.

public addShape($type, $position, $options = array())

This method inserts shapes into the Excel spreadsheet.



Shape type:

  • accentBorderCallout1, accentBorderCallout2, accentBorderCallout3, accentCallout1, accentCallout2, accentCallout3, actionButtonBackPrevious, actionButtonBeginning, actionButtonBlank, actionButtonDocument, actionButtonEnd, actionButtonForwardNext, actionButtonHelp, actionButtonHome, actionButtonInformation, actionButtonMovie, actionButtonReturn, actionButtonSound, arc
  • bentArrow, bentConnector2, bentConnector3, bentConnector4, bentConnector5, bentUpArrow, bevel, blockArc, borderCallout1, borderCallout2, borderCallout3, bracePair, bracketPair
  • callout1, callout2, callout3, can, chartPlus, chartStar, chartX, chevron, chord, circularArrow, cloud, cloudCallout, corner, cornerTabs, cube, curvedConnector2, curvedConnector3, curvedConnector4, curvedConnector5, curvedDownArrow, curvedLeftArrow, curvedRightArrow, curvedUpArrow
  • decagon, diagStripe, diamond, dodecagon, donut, doubleWave, downArrow, downArrowCallout
  • ellipse, ellipseRibbon, ellipseRibbon2
  • flowChartAlternateProcess, flowChartCollate, flowChartConnector, flowChartDecision, flowChartDelay, flowChartDisplay, flowChartDocument, flowChartExtract, flowChartInputOutput, flowChartInternalStorage, flowChartMagneticDisk, flowChartMagneticDrum, flowChartMagneticTape, flowChartManualInput, flowChartManualOperation, flowChartMerge, flowChartMultidocument, flowChartOfflineStorage, flowChartOffpageConnector, flowChartOnlineStorage, flowChartOr, flowChartPredefinedProcess, flowChartPreparation, flowChartProcess, flowChartPunchedCard, flowChartPunchedTape, flowChartSort, flowChartSummingJunction, flowChartTerminator, folderCorner, frame, funnel
  • gear6, gear9
  • halfFrame, heart, heptagon, hexagon, homePlate, horizontalScroll
  • irregularSeal1, irregularSeal2
  • leftArrow, leftArrowCallout, leftBrace, leftBracket, leftCircularArrow, leftRightArrow, leftRightArrowCallout, leftRightCircularArrow, leftRightRibbon, leftRightUpArrow, leftUpArrow, lightningBolt, line, lineInv
  • mathDivide, mathEqual, mathMinus, mathMultiply, mathNotEqual, mathPlus, moon
  • nonIsoscelesTrapezoid, noSmoking, notchedRightArrow
  • octagon
  • parallelogram, pentagon, pie, pieWedge, plaque, plaqueTabs, plus
  • quadArrow, quadArrowCallout
  • rect, ribbon, ribbon2, rightArrow, rightArrowCallout, rightBrace, rightBracket, round1Rect, round2DiagRect, round2SameRect, roundRect, rtTriangle
  • smileyFace, snip1Rect, snip2DiagRect, snip2SameRect, snipRoundRect, squareTabs, star10, star12, star16, star24, star32, star4, star5, star6, star7, star8, straightConnector1, stripedRightArrow, sun, swooshArrow
  • teardrop, trapezoid, triangle
  • upArrow, upArrowCallout, upDownArrow, upDownArrowCallout, uturnArrow
  • verticalScroll
  • wave, wedgeEllipseCallout, wedgeRectCallout, wedgeRoundRectCallout


Cell position in the active sheet: A1, C3, AB7...


Key Type Description
colOffset array
  • 'from' (int) column size offset from.
  • 'to' (int) column size offset to.
colSize int Number of columns used by the image.
customGeom string Custom geometry.
editAs string Possible values are:
  • 'oneCell' (default) : move but don't size with cells.
  • 'twoCell' : move and size with cells.
  • 'absolute' : don't move or size with cells.
fillColor string #FF0000, #00FFFF...
imageContent mixed Image path, base64 or stream. Image formats: png, jpg, jpeg, gif, bmp.
name string Sets a name value.
outlineColor string #FF0000, #00FFFF...
rotation int 60.000ths of a degree.
rowOffset array
  • 'from' (int) row size offset from.
  • 'to' (int) row size offset to.
rowSize int Number of rows used by the image.
tailEnd string
  • arrow
  • diamond
  • none
  • oval
  • stealth
  • triangle
textContents array Text contents.
textStyles array
  • 'align' (string) left, center, right.
  • 'verticalAlign' (string) top, middle, bottom.

Image doesn't exist.

Image format is not supported.

Code samples

Example #1

The resulting XLSX looks like:

Release notes
  • phpxlsx 3.5:
    • new method.