网友回复
PPT 多语言翻译生成器
以下是一个使用 Python 结合 OpenAI API 将 PPT 内容翻译成其他语言的实现方案。
功能特点自动提取 PPT 中的文本内容使用 OpenAI API 进行翻译保持原始 PPT 的格式和样式支持多种目标语言生成新的翻译版本 PPT代码实现from pptx import Presentation
import openai
import os
from typing import List, Dict, Any
import time
class PPTTranslator:
def __init__(self,
api_key: str,
source_lang: str = "zh",
target_lang: str = "en"):
"""
初始化 PPT 翻译器
Args:
api_key: OpenAI API密钥
source_lang: 源语言代码
target_lang: 目标语言代码
"""
self.api_key = api_key
self.source_lang = source_lang
self.target_lang = target_lang
openai.api_key = api_key
def extract_text(self, ppt_path: str) -> List[Dict[str, Any]]:
"""
提取PPT中的文本内容
Args:
ppt_path: PPT文件路径
Returns:
包含文本内容和位置信息的列表
"""
prs = Presentation(ppt_path)
text_elements = []
for slide_num, slide in enumerate(prs.slides):
for shape in slide.shapes:
if hasattr(shape, "text") and shape.text.strip():
text_elements.append({
"slide_num": slide_num,
"shape_id": shape.shape_id,
"text": shape.text.strip(),
"shape": shape
})
return text_elements
async def translate_text(self, text: str) -> str:
"""
使用OpenAI API翻译文本
Args:
text: 要翻译的文本
Returns:
翻译后的文本
"""
try:
...点击查看剩余70%


