def write_data(self, archive, as_template=False): """Write the various xml files into the zip archive.""" # cleanup all worksheets archive.writestr( ARC_CONTENT_TYPES, write_content_types(self.workbook, as_template=as_template)) archive.writestr(ARC_ROOT_RELS, write_root_rels(self.workbook)) archive.writestr(ARC_WORKBOOK_RELS, write_workbook_rels(self.workbook)) archive.writestr(ARC_APP, write_properties_app(self.workbook)) archive.writestr(ARC_CORE, write_properties(self.workbook.properties)) if self.workbook.loaded_theme: archive.writestr(ARC_THEME, self.workbook.loaded_theme) else: archive.writestr(ARC_THEME, write_theme()) archive.writestr(ARC_WORKBOOK, write_workbook(self.workbook)) if self.workbook.vba_archive: vba_archive = self.workbook.vba_archive for name in vba_archive.namelist(): for s in ARC_VBA: if match(s, name): archive.writestr(name, vba_archive.read(name)) break for sheet in self.workbook.worksheets: sheet.conditional_formatting._save_styles(self.workbook) self._write_worksheets(archive) self._write_string_table(archive) self._write_external_links(archive) archive.writestr(ARC_STYLE, self.style_writer.write_table())
def write_data(self, archive): """Write the various xml files into the zip archive.""" # cleanup all worksheets shared_string_table = self._write_string_table(archive) archive.writestr(ARC_CONTENT_TYPES, write_content_types(self.workbook)) if not self.workbook.vba_archive: archive.writestr(ARC_ROOT_RELS, write_root_rels(self.workbook)) archive.writestr(ARC_WORKBOOK_RELS, write_workbook_rels(self.workbook)) archive.writestr(ARC_APP, write_properties_app(self.workbook)) archive.writestr(ARC_CORE, write_properties_core(self.workbook.properties)) if self.workbook.loaded_theme: archive.writestr(ARC_THEME, self.workbook.loaded_theme) else: archive.writestr(ARC_THEME, write_theme()) archive.writestr(ARC_STYLE, self.style_writer.write_table()) archive.writestr(ARC_WORKBOOK, write_workbook(self.workbook)) if self.workbook.vba_archive: vba_archive = self.workbook.vba_archive for name in vba_archive.namelist(): for s in ARC_VBA: if name.startswith(s): archive.writestr(name, vba_archive.read(name)) break self._write_worksheets(archive, shared_string_table, self.style_writer)
def write_data(self, archive, as_template=False): """Write the various xml files into the zip archive.""" # cleanup all worksheets archive.writestr(ARC_CONTENT_TYPES, write_content_types(self.workbook, as_template=as_template)) archive.writestr(ARC_ROOT_RELS, write_root_rels(self.workbook)) archive.writestr(ARC_WORKBOOK_RELS, write_workbook_rels(self.workbook)) archive.writestr(ARC_APP, write_properties_app(self.workbook)) archive.writestr(ARC_CORE, write_properties(self.workbook.properties)) if self.workbook.loaded_theme: archive.writestr(ARC_THEME, self.workbook.loaded_theme) else: archive.writestr(ARC_THEME, write_theme()) archive.writestr(ARC_WORKBOOK, write_workbook(self.workbook)) if self.workbook.vba_archive: vba_archive = self.workbook.vba_archive for name in vba_archive.namelist(): for s in ARC_VBA: if match(s, name): archive.writestr(name, vba_archive.read(name)) break self._write_charts(archive) self._write_images(archive) self._write_worksheets(archive) self._write_string_table(archive) self._write_external_links(archive) archive.writestr(ARC_STYLE, self.style_writer.write_table())
def write_data(self, archive): """Write the various xml files into the zip archive.""" # cleanup all worksheets archive.writestr(ARC_CONTENT_TYPES, write_content_types(self.workbook)) archive.writestr(ARC_ROOT_RELS, write_root_rels(self.workbook)) archive.writestr(ARC_WORKBOOK_RELS, write_workbook_rels(self.workbook)) archive.writestr(ARC_APP, write_properties_app(self.workbook)) archive.writestr(ARC_CORE, write_properties_core(self.workbook.properties)) if self.workbook.loaded_theme: archive.writestr(ARC_THEME, self.workbook.loaded_theme) else: archive.writestr(ARC_THEME, write_theme()) archive.writestr(ARC_STYLE, self.style_writer.write_table()) archive.writestr(ARC_WORKBOOK, write_workbook(self.workbook)) if self.workbook.vba_archive: vba_archive = self.workbook.vba_archive for name in vba_archive.namelist(): for s in ARC_VBA: if name.startswith(s): archive.writestr(name, vba_archive.read(name)) break self._write_string_table(archive) self._write_worksheets(archive, self.style_writer)
def test_write_content_types(datadir): path = str(datadir.join('reader').join('vba-test.xlsm')) wb = load_workbook(path, keep_vba=True) content = write_content_types(wb) reference_file = str(datadir.join('writer').join('expected').join('Content_types_vba.xml')) with open(reference_file) as expected: diff = compare_xml(content, expected.read()) assert diff is None, diff
def test_write_content_types(): wb = Workbook() wb.create_sheet() wb.create_sheet() content = write_content_types(wb) reference_file = os.path.join(DATADIR, 'writer', 'expected', '[Content_Types].xml') assert_equals_file_content(reference_file, content)
def test_write_content_types(): wb = Workbook() wb.create_sheet() wb.create_sheet() content = write_content_types(wb) reference_file = os.path.join(DATADIR, 'writer', 'expected', '[Content_Types].xml') assert_equals_file_content(reference_file, content)
def test_write_content_types(datadir): datadir.join("reader").chdir() wb = load_workbook("vba-test.xlsm", keep_vba=True) content = write_content_types(wb) datadir.chdir() datadir.join("writer").chdir() with open("Content_types_vba.xml") as expected: diff = compare_xml(content, expected.read()) assert diff is None, diff
def test_write_content_types(datadir): datadir.join('reader').chdir() wb = load_workbook('vba-test.xlsm', keep_vba=True) content = write_content_types(wb) datadir.chdir() datadir.join('writer').chdir() with open('Content_types_vba.xml') as expected: diff = compare_xml(content, expected.read()) assert diff is None, diff
def test_write_content_types(datadir): datadir.chdir() wb = Workbook() wb.create_sheet() wb.create_sheet() content = write_content_types(wb) with open('[Content_Types].xml') as expected: diff = compare_xml(content, expected.read()) assert diff is None, diff
def test_write_content_types(): wb = Workbook() wb.create_sheet() wb.create_sheet() content = write_content_types(wb) reference_file = os.path.join(DATADIR, 'writer', 'expected', '[Content_Types].xml') with open(reference_file) as expected: diff = compare_xml(content, expected.read()) assert diff is None, diff
def test_write_content_types(): wb = Workbook() wb.create_sheet() wb.create_sheet() content = write_content_types(wb) reference_file = os.path.join(DATADIR, 'writer', 'expected', '[Content_Types].xml') with open(reference_file) as expected: diff = compare_xml(content, expected.read()) assert diff is None, diff
def write_data(self, archive): """Write the various xml files into the zip archive.""" # cleanup all worksheets shared_string_table = self._write_string_table(archive) archive.writestr(ARC_CONTENT_TYPES, write_content_types(self.workbook)) archive.writestr(ARC_ROOT_RELS, write_root_rels(self.workbook)) archive.writestr(ARC_WORKBOOK_RELS, write_workbook_rels(self.workbook)) archive.writestr(ARC_APP, write_properties_app(self.workbook)) archive.writestr(ARC_CORE, write_properties_core(self.workbook.properties)) archive.writestr(ARC_THEME, write_theme()) archive.writestr(ARC_STYLE, self.style_writer.write_table()) archive.writestr(ARC_WORKBOOK, write_workbook(self.workbook)) self._write_worksheets(archive, shared_string_table, self.style_writer)
def write_data(self, archive): """Write the various xml files into the zip archive.""" # cleanup all worksheets shared_string_table = self._write_string_table(archive) archive.writestr(ARC_CONTENT_TYPES, write_content_types(self.workbook)) archive.writestr(ARC_ROOT_RELS, write_root_rels(self.workbook)) archive.writestr(ARC_WORKBOOK_RELS, write_workbook_rels(self.workbook)) archive.writestr(ARC_APP, write_properties_app(self.workbook)) archive.writestr(ARC_CORE, write_properties_core(self.workbook.properties)) archive.writestr(ARC_THEME, write_theme()) archive.writestr(ARC_STYLE, self.style_writer.write_table()) archive.writestr(ARC_WORKBOOK, write_workbook(self.workbook)) self._write_worksheets(archive, shared_string_table, self.style_writer)