我们可以使用 Google Cloud Translation API 来实现中文、英语、藏文、日语之间的互译。这个示例将展示如何使用 tkinter
创建一个图形用户界面,结合 Google Cloud Translation API,实现支持词语和句子的互译。
首先,确保你已经完成以下步骤:
- 在 Google Cloud 中设置翻译 API 并获取 API 密钥。
- 安装
google-cloud-translate
库。
pip install google-cloud-translate
代码示例
import tkinter as tk
from tkinter import ttk, messagebox
from google.cloud import translate_v2 as translate
# 初始化Google翻译API客户端
translator = translate.Client()
# 创建主窗口
root = tk.Tk()
root.title("中文-藏文-英文-日文互译工具")
root.geometry("500x800")
# 设置大字体
large_font = ("Arial", 14)
# 翻译功能
def translate_text():
try:
input_text = input_box.get("1.0", tk.END).strip()
src_lang = source_language.get()
dest_lang = target_language.get()
if not input_text:
messagebox.showwarning("警告", "请输入需要翻译的内容!")
return
# 调用Google Cloud Translation API进行翻译
translation = translator.translate(input_text, source_language=src_lang, target_language=dest_lang)
output_box.delete("1.0", tk.END)
output_box.insert(tk.END, translation['translatedText'])
except Exception as e:
messagebox.showerror("错误", f"翻译出错:{str(e)}")
# GUI组件
source_language_label = tk.Label(root, text="源语言:", font=large_font)
source_language_label.pack(pady=10)
source_language = ttk.Combobox(root, values=["zh", "bo", "en", "ja"], font=large_font)
source_language.set("zh")
source_language.pack(pady=10)
target_language_label = tk.Label(root, text="目标语言:", font=large_font)
target_language_label.pack(pady=10)
target_language = ttk.Combobox(root, values=["zh", "bo", "en", "ja"], font=large_font)
target_language.set("en")
target_language.pack(pady=10)
input_label = tk.Label(root, text="输入文本:", font=large_font)
input_label.pack(pady=10)
input_box = tk.Text(root, height=5, font=large_font)
input_box.pack(pady=10)
translate_button = tk.Button(root, text="翻译", command=translate_text, font=large_font)
translate_button.pack(pady=10)
output_label = tk.Label(root, text="翻译结果:", font=large_font)
output_label.pack(pady=10)
output_box = tk.Text(root, height=5, font=large_font)
output_box.pack(pady=10)
# 运行主循环
root.mainloop()
代码说明:
- Google Cloud Translation API:通过
google-cloud-translate
调用 Google 翻译服务,支持多种语言,包括中文(zh
)、藏文(bo
)、英文(en
)、日语(ja
)。 tkinter
:用于创建简单的图形界面。用户可以选择源语言和目标语言,输入需要翻译的文本,并查看翻译结果。- 源语言和目标语言选择:支持中文、藏文、英文、日语的互相翻译,用户可以自由选择。
环境变量设置:
你需要将你的 Google Cloud 服务账号密钥 JSON 文件路径设置为系统环境变量 GOOGLE_APPLICATION_CREDENTIALS
,如下:
Windows:
set GOOGLE_APPLICATION_CREDENTIALS=你的密钥文件路径
Linux/macOS:
export GOOGLE_APPLICATION_CREDENTIALS=你的密钥文件路径
运行结果:
当你运行此程序时,会弹出一个图形界面,允许你选择源语言、目标语言,输入要翻译的文本,然后点击“翻译”按钮,即可在输出框中看到翻译结果。
这种方式不仅支持简单的词汇翻译,还支持句子和更复杂的文本翻译。