aboutsummaryrefslogtreecommitdiff
path: root/.venv/lib/python3.12/site-packages/openpyxl/drawing/picture.py
diff options
context:
space:
mode:
Diffstat (limited to '.venv/lib/python3.12/site-packages/openpyxl/drawing/picture.py')
-rw-r--r--.venv/lib/python3.12/site-packages/openpyxl/drawing/picture.py144
1 files changed, 144 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/openpyxl/drawing/picture.py b/.venv/lib/python3.12/site-packages/openpyxl/drawing/picture.py
new file mode 100644
index 00000000..9a83facf
--- /dev/null
+++ b/.venv/lib/python3.12/site-packages/openpyxl/drawing/picture.py
@@ -0,0 +1,144 @@
+# Copyright (c) 2010-2024 openpyxl
+
+from openpyxl.xml.constants import DRAWING_NS
+
+from openpyxl.descriptors.serialisable import Serialisable
+from openpyxl.descriptors import (
+ Typed,
+ Bool,
+ String,
+ Alias,
+)
+from openpyxl.descriptors.excel import ExtensionList as OfficeArtExtensionList
+
+from openpyxl.chart.shapes import GraphicalProperties
+
+from .fill import BlipFillProperties
+from .properties import NonVisualDrawingProps
+from .geometry import ShapeStyle
+
+
+class PictureLocking(Serialisable):
+
+ tagname = "picLocks"
+ namespace = DRAWING_NS
+
+ # Using attribute group AG_Locking
+ noCrop = Bool(allow_none=True)
+ noGrp = Bool(allow_none=True)
+ noSelect = Bool(allow_none=True)
+ noRot = Bool(allow_none=True)
+ noChangeAspect = Bool(allow_none=True)
+ noMove = Bool(allow_none=True)
+ noResize = Bool(allow_none=True)
+ noEditPoints = Bool(allow_none=True)
+ noAdjustHandles = Bool(allow_none=True)
+ noChangeArrowheads = Bool(allow_none=True)
+ noChangeShapeType = Bool(allow_none=True)
+ extLst = Typed(expected_type=OfficeArtExtensionList, allow_none=True)
+
+ __elements__ = ()
+
+ def __init__(self,
+ noCrop=None,
+ noGrp=None,
+ noSelect=None,
+ noRot=None,
+ noChangeAspect=None,
+ noMove=None,
+ noResize=None,
+ noEditPoints=None,
+ noAdjustHandles=None,
+ noChangeArrowheads=None,
+ noChangeShapeType=None,
+ extLst=None,
+ ):
+ self.noCrop = noCrop
+ self.noGrp = noGrp
+ self.noSelect = noSelect
+ self.noRot = noRot
+ self.noChangeAspect = noChangeAspect
+ self.noMove = noMove
+ self.noResize = noResize
+ self.noEditPoints = noEditPoints
+ self.noAdjustHandles = noAdjustHandles
+ self.noChangeArrowheads = noChangeArrowheads
+ self.noChangeShapeType = noChangeShapeType
+
+
+class NonVisualPictureProperties(Serialisable):
+
+ tagname = "cNvPicPr"
+
+ preferRelativeResize = Bool(allow_none=True)
+ picLocks = Typed(expected_type=PictureLocking, allow_none=True)
+ extLst = Typed(expected_type=OfficeArtExtensionList, allow_none=True)
+
+ __elements__ = ("picLocks",)
+
+ def __init__(self,
+ preferRelativeResize=None,
+ picLocks=None,
+ extLst=None,
+ ):
+ self.preferRelativeResize = preferRelativeResize
+ self.picLocks = picLocks
+
+
+class PictureNonVisual(Serialisable):
+
+ tagname = "nvPicPr"
+
+ cNvPr = Typed(expected_type=NonVisualDrawingProps, )
+ cNvPicPr = Typed(expected_type=NonVisualPictureProperties, )
+
+ __elements__ = ("cNvPr", "cNvPicPr")
+
+ def __init__(self,
+ cNvPr=None,
+ cNvPicPr=None,
+ ):
+ if cNvPr is None:
+ cNvPr = NonVisualDrawingProps(id=0, name="Image 1", descr="Name of file")
+ self.cNvPr = cNvPr
+ if cNvPicPr is None:
+ cNvPicPr = NonVisualPictureProperties()
+ self.cNvPicPr = cNvPicPr
+
+
+
+
+class PictureFrame(Serialisable):
+
+ tagname = "pic"
+
+ macro = String(allow_none=True)
+ fPublished = Bool(allow_none=True)
+ nvPicPr = Typed(expected_type=PictureNonVisual, )
+ blipFill = Typed(expected_type=BlipFillProperties, )
+ spPr = Typed(expected_type=GraphicalProperties, )
+ graphicalProperties = Alias('spPr')
+ style = Typed(expected_type=ShapeStyle, allow_none=True)
+
+ __elements__ = ("nvPicPr", "blipFill", "spPr", "style")
+
+ def __init__(self,
+ macro=None,
+ fPublished=None,
+ nvPicPr=None,
+ blipFill=None,
+ spPr=None,
+ style=None,
+ ):
+ self.macro = macro
+ self.fPublished = fPublished
+ if nvPicPr is None:
+ nvPicPr = PictureNonVisual()
+ self.nvPicPr = nvPicPr
+ if blipFill is None:
+ blipFill = BlipFillProperties()
+ self.blipFill = blipFill
+ if spPr is None:
+ spPr = GraphicalProperties()
+ self.spPr = spPr
+ self.style = style