from docx import Document from docx.shared import Pt from docx.oxml.ns import qn from docx.oxml import OxmlElement # Funkcja do normalizacji stylu tekstu def normalize_style(paragraph): for run in paragraph.runs: run.font.name = 'Arial' # Czcionka run._element.rPr.rFonts.set(qn('w:eastAsia'), 'Arial') run.font.size = Pt(12) # Rozmiar czcionki run.font.bold = False # Wyłącz pogrubienie run.font.italic = False # Wyłącz kursywę def merge_documents(file_list, output_file): merged_document = Document() for file in file_list: doc = Document(file) for paragraph in doc.paragraphs: # Normalizuj styl normalize_style(paragraph) # Dodaj paragraf do dokumentu wyjściowego merged_paragraph = merged_document.add_paragraph(paragraph.text) # Skopiuj styl normalize_style(merged_paragraph) # Dodaj stronę przerwy między rozdziałami merged_document.add_page_break() # Zapisz połączony dokument merged_document.save(output_file) # Lista plików do połączenia file_list = ['rozdzial1.docx', 'rozdzial2.docx', 'rozdzial3.docx'] # Nazwa pliku wyjściowego output_file = 'polaczony_dokument.docx' # Połącz dokumenty merge_documents(file_list, output_file) print(f"Dokument zapisany jako {output_file}")