# openpyxl.drawing.geometry module

class openpyxl.drawing.geometry.AdjPoint2D(x=None, y=None)

  Bases: `Serialisable`

  x

    Values must be of type <class ‘int’>

  y

    Values must be of type <class ‘int’>

class openpyxl.drawing.geometry.AdjustHandleList

  Bases: `Serialisable`

class openpyxl.drawing.geometry.Backdrop(anchor=None, norm=None, up=None, extLst=None)

  Bases: `Serialisable`

  anchor

    Values must be of type <class ‘openpyxl.drawing.geometry.Point3D’>

  extLst

    Values must be of type <class ‘openpyxl.descriptors.excel.ExtensionList’>

  norm

    Values must be of type <class ‘openpyxl.drawing.geometry.Vector3D’>

  up

    Values must be of type <class ‘openpyxl.drawing.geometry.Vector3D’>

class openpyxl.drawing.geometry.Bevel(w=None, h=None, prst=None)

  Bases: `Serialisable`

  h

    Values must be of type <class ‘int’>

  prst

    Value must be one of [‘angle’, ‘artDeco’, ‘circle’, ‘convex’, ‘coolSlant’, ‘cross’, ‘divot’, ‘hardEdge’, ‘relaxedInset’, ‘riblet’, ‘slope’, ‘softRound’]

  tagname = 'bevel'
  w

    Values must be of type <class ‘int’>

class openpyxl.drawing.geometry.Camera(prst=None, fov=None, zoom=None, rot=None)

  Bases: `Serialisable`

  fov

    Values must be of type <class ‘int’>

  prst

    Value must be one of [‘isometricBottomDown’, ‘isometricBottomUp’, ‘isometricLeftDown’, ‘isometricLeftUp’, ‘isometricOffAxis1Left’, ‘isometricOffAxis1Right’, ‘isometricOffAxis1Top’, ‘isometricOffAxis2Left’, ‘isometricOffAxis2Right’, ‘isometricOffAxis2Top’, ‘isometricOffAxis3Bottom’, ‘isometricOffAxis3Left’, ‘isometricOffAxis3Right’, ‘isometricOffAxis4Bottom’, ‘isometricOffAxis4Left’, ‘isometricOffAxis4Right’, ‘isometricRightDown’, ‘isometricRightUp’, ‘isometricTopDown’, ‘isometricTopUp’, ‘legacyObliqueBottom’, ‘legacyObliqueBottomLeft’, ‘legacyObliqueBottomRight’, ‘legacyObliqueFront’, ‘legacyObliqueLeft’, ‘legacyObliqueRight’, ‘legacyObliqueTop’, ‘legacyObliqueTopLeft’, ‘legacyObliqueTopRight’, ‘legacyPerspectiveBottom’, ‘legacyPerspectiveBottomLeft’, ‘legacyPerspectiveBottomRight’, ‘legacyPerspectiveFront’, ‘legacyPerspectiveLeft’, ‘legacyPerspectiveRight’, ‘legacyPerspectiveTop’, ‘legacyPerspectiveTopLeft’, ‘legacyPerspectiveTopRight’, ‘obliqueBottom’, ‘obliqueBottomLeft’, ‘obliqueBottomRight’, ‘obliqueLeft’, ‘obliqueRight’, ‘obliqueTop’, ‘obliqueTopLeft’, ‘obliqueTopRight’, ‘orthographicFront’, ‘perspectiveAbove’, ‘perspectiveAboveLeftFacing’, ‘perspectiveAboveRightFacing’, ‘perspectiveBelow’, ‘perspectiveContrastingLeftFacing’, ‘perspectiveContrastingRightFacing’, ‘perspectiveFront’, ‘perspectiveHeroicExtremeLeftFacing’, ‘perspectiveHeroicExtremeRightFacing’, ‘perspectiveHeroicLeftFacing’, ‘perspectiveHeroicRightFacing’, ‘perspectiveLeft’, ‘perspectiveRelaxed’, ‘perspectiveRelaxedModerately’, ‘perspectiveRight’]

  rot

    Values must be of type <class ‘openpyxl.drawing.geometry.SphereCoords’>

  tagname = 'camera'
  zoom

    Values must be of type <class ‘openpyxl.descriptors.excel.Percentage’>

class openpyxl.drawing.geometry.ConnectionSite(ang=None, pos=None)

  Bases: `Serialisable`

  ang

    Values must be of type <class ‘float’>

  pos

    Values must be of type <class ‘openpyxl.drawing.geometry.AdjPoint2D’>

class openpyxl.drawing.geometry.ConnectionSiteList(cxn=None)

  Bases: `Serialisable`

  cxn

    Values must be of type <class ‘openpyxl.drawing.geometry.ConnectionSite’>

class openpyxl.drawing.geometry.CustomGeometry2D(avLst=None, gdLst=None, ahLst=None, cxnLst=None, rect=None, pathLst=None)

  Bases: `Serialisable`

  ahLst

    Values must be of type <class ‘openpyxl.drawing.geometry.AdjustHandleList’>

  avLst

    Values must be of type <class ‘openpyxl.drawing.geometry.GeomGuideList’>

  cxnLst

    Values must be of type <class ‘openpyxl.drawing.geometry.ConnectionSiteList’>

  gdLst

    Values must be of type <class ‘openpyxl.drawing.geometry.GeomGuideList’>

  pathLst

    Values must be of type <class ‘openpyxl.drawing.geometry.Path2DList’>

class openpyxl.drawing.geometry.FontReference(idx=None)

  Bases: `Serialisable`

  idx

    Value must be one of [‘major’, ‘minor’]

class openpyxl.drawing.geometry.GeomGuide(name=None, fmla=None)

  Bases: `Serialisable`

  fmla

    Values must be of type <class ‘str’>

  name

    Values must be of type <class ‘str’>

class openpyxl.drawing.geometry.GeomGuideList(gd=None)

  Bases: `Serialisable`

  gd

    Values must be of type <class ‘openpyxl.drawing.geometry.GeomGuide’>

class openpyxl.drawing.geometry.GeomRect(l=None, t=None, r=None, b=None)

  Bases: `Serialisable`

  b

    Values must be of type <class ‘int’>

  l

    Values must be of type <class ‘int’>

  r

    Values must be of type <class ‘int’>

  t

    Values must be of type <class ‘int’>

class openpyxl.drawing.geometry.GroupTransform2D(rot=0, flipH=None, flipV=None, off=None, ext=None, chOff=None, chExt=None)

  Bases: `Serialisable`

  chExt

    Values must be of type <class ‘openpyxl.drawing.geometry.PositiveSize2D’>

  chOff

    Values must be of type <class ‘openpyxl.drawing.geometry.Point2D’>

  ext

    Values must be of type <class ‘openpyxl.drawing.geometry.PositiveSize2D’>

  flipH

    Values must be of type <class ‘bool’>

  flipV

    Values must be of type <class ‘bool’>

  namespace = 'http://schemas.openxmlformats.org/drawingml/2006/main'
  off

    Values must be of type <class ‘openpyxl.drawing.geometry.Point2D’>

  rot

    Values must be of type <class ‘int’>

  tagname = 'xfrm'

class openpyxl.drawing.geometry.LightRig(rig=None, dir=None, rot=None)

  Bases: `Serialisable`

  dir

    Value must be one of [‘b’, ‘bl’, ‘br’, ‘l’, ‘r’, ‘t’, ‘tl’, ‘tr’]

  rig

    Value must be one of [‘balanced’, ‘brightRoom’, ‘chilly’, ‘contrasting’, ‘flat’, ‘flood’, ‘freezing’, ‘glow’, ‘harsh’, ‘legacyFlat1’, ‘legacyFlat2’, ‘legacyFlat3’, ‘legacyFlat4’, ‘legacyHarsh1’, ‘legacyHarsh2’, ‘legacyHarsh3’, ‘legacyHarsh4’, ‘legacyNormal1’, ‘legacyNormal2’, ‘legacyNormal3’, ‘legacyNormal4’, ‘morning’, ‘soft’, ‘sunrise’, ‘sunset’, ‘threePt’, ‘twoPt’]

  rot

    Values must be of type <class ‘openpyxl.drawing.geometry.SphereCoords’>

  tagname = 'lightRig'

class openpyxl.drawing.geometry.Path2D(w=None, h=None, fill=None, stroke=None, extrusionOk=None)

  Bases: `Serialisable`

  extrusionOk

    Values must be of type <class ‘bool’>

  fill

    Value must be one of [‘darken’, ‘darkenLess’, ‘lighten’, ‘lightenLess’, ‘norm’]

  h

    Values must be of type <class ‘float’>

  stroke

    Values must be of type <class ‘bool’>

  w

    Values must be of type <class ‘float’>

class openpyxl.drawing.geometry.Path2DList(path=None)

  Bases: `Serialisable`

  path

    Values must be of type <class ‘openpyxl.drawing.geometry.Path2D’>

class openpyxl.drawing.geometry.Point2D(x=None, y=None)

  Bases: `Serialisable`

  namespace = 'http://schemas.openxmlformats.org/drawingml/2006/main'
  tagname = 'off'
  x

    Values must be of type <class ‘int’>

  y

    Values must be of type <class ‘int’>

class openpyxl.drawing.geometry.Point3D(x=None, y=None, z=None)

  Bases: `Serialisable`

  tagname = 'anchor'
  x

    Values must be of type <class ‘int’>

  y

    Values must be of type <class ‘int’>

  z

    Values must be of type <class ‘int’>

class openpyxl.drawing.geometry.PositiveSize2D(cx=None, cy=None)

  Bases: `Serialisable`

  cx

    Values must be of type <class ‘int’>

  cy

    Values must be of type <class ‘int’>

  height

    Aliases can be used when either the desired attribute name is not allowed or confusing in Python (eg. “type”) or a more descriptive name is desired (eg. “underline” for “u”)

  namespace = 'http://schemas.openxmlformats.org/drawingml/2006/main'

    Dimensions in EMUs

  tagname = 'ext'
  width

    Aliases can be used when either the desired attribute name is not allowed or confusing in Python (eg. “type”) or a more descriptive name is desired (eg. “underline” for “u”)

class openpyxl.drawing.geometry.PresetGeometry2D(prst=None, avLst=None)

  Bases: `Serialisable`

  avLst

    Values must be of type <class ‘openpyxl.drawing.geometry.GeomGuideList’>

  namespace = 'http://schemas.openxmlformats.org/drawingml/2006/main'
  prst

    Value must be one of [‘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’, ‘foldedCorner’, ‘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’, ‘noSmoking’, ‘nonIsoscelesTrapezoid’, ‘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’]

class openpyxl.drawing.geometry.Scene3D(camera=None, lightRig=None, backdrop=None, extLst=None)

  Bases: `Serialisable`

  backdrop

    Values must be of type <class ‘openpyxl.drawing.geometry.Backdrop’>

  camera

    Values must be of type <class ‘openpyxl.drawing.geometry.Camera’>

  extLst

    Values must be of type <class ‘openpyxl.descriptors.excel.ExtensionList’>

  lightRig

    Values must be of type <class ‘openpyxl.drawing.geometry.LightRig’>

class openpyxl.drawing.geometry.Shape3D(z=None, extrusionH=None, contourW=None, prstMaterial=None, bevelT=None, bevelB=None, extrusionClr=None, contourClr=None, extLst=None)

  Bases: `Serialisable`

  bevelB

    Values must be of type <class ‘openpyxl.drawing.geometry.Bevel’>

  bevelT

    Values must be of type <class ‘openpyxl.drawing.geometry.Bevel’>

  contourClr

    Values must be of type <class ‘openpyxl.styles.colors.Color’>

  contourW

    Values must be of type <class ‘int’>

  extLst

    Values must be of type <class ‘openpyxl.descriptors.excel.ExtensionList’>

  extrusionClr

    Values must be of type <class ‘openpyxl.styles.colors.Color’>

  extrusionH

    Values must be of type <class ‘int’>

  namespace = 'http://schemas.openxmlformats.org/drawingml/2006/main'
  prstMaterial

    Value must be one of [‘clear’, ‘dkEdge’, ‘flat’, ‘legacyMatte’, ‘legacyMetal’, ‘legacyPlastic’, ‘legacyWireframe’, ‘matte’, ‘metal’, ‘plastic’, ‘powder’, ‘softEdge’, ‘softmetal’, ‘translucentPowder’, ‘warmMatte’]

  z

    Values must be of type <class ‘openpyxl.descriptors.base.Integer’>

class openpyxl.drawing.geometry.ShapeStyle(lnRef=None, fillRef=None, effectRef=None, fontRef=None)

  Bases: `Serialisable`

  effectRef

    Values must be of type <class ‘openpyxl.drawing.geometry.StyleMatrixReference’>

  fillRef

    Values must be of type <class ‘openpyxl.drawing.geometry.StyleMatrixReference’>

  fontRef

    Values must be of type <class ‘openpyxl.drawing.geometry.FontReference’>

  lnRef

    Values must be of type <class ‘openpyxl.drawing.geometry.StyleMatrixReference’>

class openpyxl.drawing.geometry.SphereCoords(lat=None, lon=None, rev=None)

  Bases: `Serialisable`

  lat

    Values must be of type <class ‘int’>

  lon

    Values must be of type <class ‘int’>

  rev

    Values must be of type <class ‘int’>

  tagname = 'sphereCoords'

class openpyxl.drawing.geometry.StyleMatrixReference(idx=None)

  Bases: `Serialisable`

  idx

    Values must be of type <class ‘int’>

class openpyxl.drawing.geometry.Transform2D(rot=None, flipH=None, flipV=None, off=None, ext=None, chOff=None, chExt=None)

  Bases: `Serialisable`

  chExt

    Values must be of type <class ‘openpyxl.drawing.geometry.PositiveSize2D’>

  chOff

    Values must be of type <class ‘openpyxl.drawing.geometry.Point2D’>

  ext

    Values must be of type <class ‘openpyxl.drawing.geometry.PositiveSize2D’>

  flipH

    Values must be of type <class ‘bool’>

  flipV

    Values must be of type <class ‘bool’>

  namespace = 'http://schemas.openxmlformats.org/drawingml/2006/main'
  off

    Values must be of type <class ‘openpyxl.drawing.geometry.Point2D’>

  rot

    Values must be of type <class ‘int’>

  tagname = 'xfrm'

class openpyxl.drawing.geometry.Vector3D(dx=None, dy=None, dz=None)

  Bases: `Serialisable`

  dx

    Values must be of type <class ‘int’>

  dy

    Values must be of type <class ‘int’>

  dz

    Values must be of type <class ‘int’>

  tagname = 'vector'