def write_data(self): """Write the various xml files into the zip archive.""" # cleanup all worksheets archive = self._archive archive.writestr(ARC_ROOT_RELS, write_root_rels(self.workbook)) props = ExtendedProperties() archive.writestr(ARC_APP, tostring(props.to_tree())) archive.writestr(ARC_CORE, tostring(self.workbook.properties.to_tree())) if self.workbook.loaded_theme: archive.writestr(ARC_THEME, self.workbook.loaded_theme) else: archive.writestr(ARC_THEME, write_theme()) self._write_worksheets() self._write_chartsheets() self._write_images() self._write_charts() self._archive.writestr(ARC_SHARED_STRINGS, write_string_table(self.workbook.shared_strings)) self._write_external_links() stylesheet = write_stylesheet(self.workbook) archive.writestr(ARC_STYLE, tostring(stylesheet)) archive.writestr(ARC_WORKBOOK, write_workbook(self.workbook)) archive.writestr(ARC_WORKBOOK_RELS, write_workbook_rels(self.workbook)) self._merge_vba() self.manifest._write(archive, self.workbook)
def write_data(self): """Write the various xml files into the zip archive.""" # cleanup all worksheets archive = self._archive props = ExtendedProperties() archive.writestr(ARC_APP, tostring(props.to_tree())) archive.writestr(ARC_CORE, tostring(self.workbook.properties.to_tree())) if self.workbook.loaded_theme: archive.writestr(ARC_THEME, self.workbook.loaded_theme) else: archive.writestr(ARC_THEME, theme_xml) self._write_worksheets() self._write_chartsheets() self._write_images() self._write_charts() #self._archive.writestr(ARC_SHARED_STRINGS, #write_string_table(self.workbook.shared_strings)) self._write_external_links() stylesheet = write_stylesheet(self.workbook) archive.writestr(ARC_STYLE, tostring(stylesheet)) writer = WorkbookWriter(self.workbook) archive.writestr(ARC_ROOT_RELS, writer.write_root_rels()) archive.writestr(ARC_WORKBOOK, writer.write()) archive.writestr(ARC_WORKBOOK_RELS, writer.write_rels()) self._merge_vba() self.manifest._write(archive, self.workbook)
def write_data(self): """Write the various xml files into the zip archive.""" # cleanup all worksheets archive = self._archive props = ExtendedProperties() archive.writestr(ARC_APP, tostring(props.to_tree())) archive.writestr(ARC_CORE, tostring(self.workbook.properties.to_tree())) if self.workbook.loaded_theme: archive.writestr(ARC_THEME, self.workbook.loaded_theme) else: archive.writestr(ARC_THEME, theme_xml) if len(self.workbook.custom_doc_props) >= 1: archive.writestr( ARC_CUSTOM, tostring(self.workbook.custom_doc_props.to_tree())) class CustomOverride(): path = "/" + ARC_CUSTOM #PartName mime_type = CPROPS_TYPE #ContentType custom_override = CustomOverride() # custom_override = Override(PartName="/docProps/custom.xml", ContentType="application/vnd.openxmlformats-officedocument.custom-properties+xml") self.manifest.append(custom_override) self._write_worksheets() self._write_chartsheets() self._write_images() self._write_charts() #self._archive.writestr(ARC_SHARED_STRINGS, #write_string_table(self.workbook.shared_strings)) self._write_external_links() stylesheet = write_stylesheet(self.workbook) archive.writestr(ARC_STYLE, tostring(stylesheet)) writer = WorkbookWriter(self.workbook) archive.writestr(ARC_ROOT_RELS, writer.write_root_rels()) archive.writestr(ARC_WORKBOOK, writer.write()) archive.writestr(ARC_WORKBOOK_RELS, writer.write_rels()) self._merge_vba() self.manifest._write(archive, self.workbook)
def write_data(self, archive, as_template=False): """Write the various xml files into the zip archive.""" # cleanup all worksheets archive.writestr(ARC_ROOT_RELS, write_root_rels(self.workbook)) props = ExtendedProperties() archive.writestr(ARC_APP, tostring(props.to_tree())) archive.writestr(ARC_CORE, tostring(self.workbook.properties.to_tree())) if self.workbook.loaded_theme: archive.writestr(ARC_THEME, self.workbook.loaded_theme) else: archive.writestr(ARC_THEME, write_theme()) self._write_charts(archive) self._write_images(archive) self._write_worksheets(archive) self._write_chartsheets(archive) self._write_string_table(archive) self._write_external_links(archive) stylesheet = write_stylesheet(self.workbook) archive.writestr(ARC_STYLE, tostring(stylesheet)) archive.writestr(ARC_WORKBOOK, write_workbook(self.workbook)) archive.writestr(ARC_WORKBOOK_RELS, write_workbook_rels(self.workbook)) if self.workbook.vba_archive: vba_archive = self.workbook.vba_archive for name in set(vba_archive.namelist()) - self.vba_modified: for s in ARC_VBA: if match(s, name): archive.writestr(name, vba_archive.read(name)) break exts = [] for n in archive.namelist(): if "media" in n: exts.append(n) manifest = write_content_types(self.workbook, as_template=as_template, exts=exts) archive.writestr(ARC_CONTENT_TYPES, tostring(manifest.to_tree()))