ImagePart
paper-docx 0.2.0 API reference
An image part.
Corresponds to the target part of a relationship with type RELATIONSHIP_TYPE.IMAGE.
ImagePart(partname: PackURI, content_type: str, blob: bytes, image: Image | None = None)Attributes
blob
attributeblobbytesContents of this package part as a sequence of bytes.
May be text or binary. Intended to be overridden by subclasses. Default behavior is to return load blob.
content_type
attributecontent_typeContent type of this part.
default_cx
attributedefault_cxNative width of this image, calculated from its width in pixels and horizontal dots per inch (dpi).
default_cy
attributedefault_cyNative height of this image, calculated from its height in pixels and vertical dots per inch (dpi).
filename
attributefilenameFilename from which this image part was originally created.
A generic name, e.g. 'image.png', is substituted if no name is available, for example when the image was loaded from an unnamed stream. In that case a default extension is applied based on the detected MIME type of the image.
image
attributeimageImagepackage
attributepackageOpcPackage instance this part belongs to.
partname
attributepartnamePackURI instance holding partname of this part, e.g.
'/ppt/slides/slide1.xml'.
related_parts
attributerelated_partsDictionary mapping related parts by rId, so child objects can resolve
explicit relationships present in the part XML, e.g. sldIdLst to a specific
Slide instance.
rels
attributerelsRelationships instance holding the relationships for this part.
sha1
attributesha1SHA1 hash digest of the blob of this image part.
Functions
after_unmarshal
funcafter_unmarshal()Entry point for post-unmarshaling processing, for example to parse the part XML.
May be overridden by subclasses without forwarding call to super.
before_marshal
funcbefore_marshal()Entry point for pre-serialization processing, for example to finalize part naming if necessary.
May be overridden by subclasses without forwarding call to super.
drop_rel
funcdrop_rel(rId: str)Remove the relationship identified by rId if its reference count is less
than 2.
Relationships with a reference count of 0 are implicit relationships.
paramrIdstrfrom_image
funcfrom_image(image: Image, partname: PackURI)Return an ImagePart instance newly created from image and assigned
partname.
paramimageImageparampartnamePackURIload
funcload(partname: PackURI, content_type: str, blob: bytes, package: OpcPackage)Called by docx.opc.package.PartFactory to load an image part from a
package being opened by Document(...) call.
parampartnamePackURIparamcontent_typestrparamblobbytesparampackageOpcPackageload_rel
funcload_rel(reltype: str, target: Part | str, rId: str, is_external: bool = False)Return newly added _Relationship instance of reltype.
The new relationship relates the target part to this part with key rId.
Target mode is set to RTM.EXTERNAL if is_external is True. Intended for
use during load from a serialized package, where the rId is well-known. Other
methods exist for adding a new relationship to a part when manipulating a part.
paramreltypestrparamtargetPart | strparamrIdstrparamis_externalbool= Falsepart_related_by
funcpart_related_by(reltype: str) -> PartReturn part to which this part has a relationship of reltype.
Raises KeyError if no such relationship is found and ValueError if more than
one such relationship is found. Provides ability to resolve implicitly related
part, such as Slide -> SlideLayout.
paramreltypestrReturns
docx.opc.part.Partrelate_to
funcrelate_to(target: Part | str, reltype: str, is_external: bool = False) -> strReturn rId key of relationship of reltype to target.
The returned rId is from an existing relationship if there is one, otherwise a
new relationship is created.
paramtargetPart | strparamreltypestrparamis_externalbool= FalseReturns
strtarget_ref
functarget_ref(rId: str) -> strReturn URL contained in target ref of relationship identified by rId.
paramrIdstrReturns
str