Initial commit (Clean history)
This commit is contained in:
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,48 @@
|
||||
"""Core properties part, corresponds to ``/docProps/core.xml`` part in package."""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import datetime as dt
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
from docx.opc.constants import CONTENT_TYPE as CT
|
||||
from docx.opc.coreprops import CoreProperties
|
||||
from docx.opc.packuri import PackURI
|
||||
from docx.opc.part import XmlPart
|
||||
from docx.oxml.coreprops import CT_CoreProperties
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from docx.opc.package import OpcPackage
|
||||
|
||||
|
||||
class CorePropertiesPart(XmlPart):
|
||||
"""Corresponds to part named ``/docProps/core.xml``.
|
||||
|
||||
The "core" is short for "Dublin Core" and contains document metadata relatively common across
|
||||
documents of all types, not just DOCX.
|
||||
"""
|
||||
|
||||
@classmethod
|
||||
def default(cls, package: OpcPackage):
|
||||
"""Return a new |CorePropertiesPart| object initialized with default values for
|
||||
its base properties."""
|
||||
core_properties_part = cls._new(package)
|
||||
core_properties = core_properties_part.core_properties
|
||||
core_properties.title = "Word Document"
|
||||
core_properties.last_modified_by = "python-docx"
|
||||
core_properties.revision = 1
|
||||
core_properties.modified = dt.datetime.now(dt.timezone.utc)
|
||||
return core_properties_part
|
||||
|
||||
@property
|
||||
def core_properties(self):
|
||||
"""A |CoreProperties| object providing read/write access to the core properties
|
||||
contained in this core properties part."""
|
||||
return CoreProperties(self.element)
|
||||
|
||||
@classmethod
|
||||
def _new(cls, package: OpcPackage) -> CorePropertiesPart:
|
||||
partname = PackURI("/docProps/core.xml")
|
||||
content_type = CT.OPC_CORE_PROPERTIES
|
||||
coreProperties = CT_CoreProperties.new()
|
||||
return CorePropertiesPart(partname, content_type, coreProperties, package)
|
||||
Reference in New Issue
Block a user