Files
desktop-transfer/utils/word_handler.py
xiaji 136994db90 feat: 实现基于PySide6的翻译GUI工具初始版本
添加主程序入口、GUI界面、翻译核心逻辑、Word文件处理、系统监控和日志模块
2026-01-14 15:10:19 +08:00

39 lines
1.3 KiB
Python

from docx import Document
from .logger import logger
class WordHandler:
@staticmethod
def import_docx(file_path):
"""从docx文件中提取文本内容"""
try:
doc = Document(file_path)
text = []
for paragraph in doc.paragraphs:
if paragraph.text.strip():
text.append(paragraph.text)
logger.info(f"成功从 {file_path} 导入文本,共 {len(text)}")
return "\n\n".join(text)
except Exception as e:
logger.error(f"导入Word文件失败: {e}")
raise
@staticmethod
def export_docx(file_path, content):
"""将文本内容导出为docx文件"""
try:
doc = Document()
# 将内容按段落分割并添加到文档
paragraphs = content.split("\n\n")
for para_text in paragraphs:
if para_text.strip():
doc.add_paragraph(para_text.strip())
doc.save(file_path)
logger.info(f"成功将文本导出到 {file_path},共 {len(paragraphs)}")
return True
except Exception as e:
logger.error(f"导出Word文件失败: {e}")
raise