word2pptx.py 822 B

1234567891011121314151617181920212223242526272829
  1. import os
  2. from docx import Document
  3. from PIL import ImageGrab
  4. def save_images(doc, folder_path):
  5. if not os.path.exists(folder_path):
  6. os.makedirs(folder_path)
  7. for index, paragraph in enumerate(doc.paragraphs):
  8. if paragraph.style.name.startswith('Heading'):
  9. question = paragraph.text
  10. answer = doc.paragraphs[index + 1].text
  11. save_image(question, answer, folder_path)
  12. def save_image(question, answer, folder_path):
  13. image_name = f"{question.replace(' ', '-')}.png"
  14. image_path = os.path.join(folder_path, image_name)
  15. print(f"Saving image {image_name}...")
  16. image = ImageGrab.grab(question)
  17. image.save(image_path)
  18. if __name__ == "__main__":
  19. word_file = "test.docx"
  20. folder_path = "images"
  21. doc = Document(word_file)
  22. save_images(doc, folder_path)