Advertisement
jarekmor

merge_docs

Aug 10th, 2024
222
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.39 KB | None | 0 0
  1. from docx import Document
  2. from docx.shared import Pt
  3. from docx.oxml.ns import qn
  4. from docx.oxml import OxmlElement
  5.  
  6. # Funkcja do normalizacji stylu tekstu
  7. def normalize_style(paragraph):
  8.     for run in paragraph.runs:
  9.         run.font.name = 'Arial'  # Czcionka
  10.         run._element.rPr.rFonts.set(qn('w:eastAsia'), 'Arial')
  11.         run.font.size = Pt(12)  # Rozmiar czcionki
  12.         run.font.bold = False  # Wyłącz pogrubienie
  13.         run.font.italic = False  # Wyłącz kursywę
  14.  
  15. def merge_documents(file_list, output_file):
  16.     merged_document = Document()
  17.  
  18.     for file in file_list:
  19.         doc = Document(file)
  20.         for paragraph in doc.paragraphs:
  21.             # Normalizuj styl
  22.             normalize_style(paragraph)
  23.             # Dodaj paragraf do dokumentu wyjściowego
  24.             merged_paragraph = merged_document.add_paragraph(paragraph.text)
  25.             # Skopiuj styl
  26.             normalize_style(merged_paragraph)
  27.  
  28.         # Dodaj stronę przerwy między rozdziałami
  29.         merged_document.add_page_break()
  30.  
  31.     # Zapisz połączony dokument
  32.     merged_document.save(output_file)
  33.  
  34. # Lista plików do połączenia
  35. file_list = ['rozdzial1.docx', 'rozdzial2.docx', 'rozdzial3.docx']
  36.  
  37. # Nazwa pliku wyjściowego
  38. output_file = 'polaczony_dokument.docx'
  39.  
  40. # Połącz dokumenty
  41. merge_documents(file_list, output_file)
  42.  
  43. print(f"Dokument zapisany jako {output_file}")
  44.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement