translator

import streamlit as st
import time
import base64
from streamlit.components.v1 import html# 自定义CSS样式
def set_custom_style():st.markdown("""
<style>/* 页面背景:浅色渐变,提高可读性 */.main {background: linear-gradient(135deg, #E0F7FA, #FFFFFF);color: #333 ;}/* 玻璃拟态面板优化 */.glass-panel {background: rgba(255, 255, 255, 0.8) !important;backdrop-filter: blur(12px) saturate(150%);border-radius: 16px;padding: 1.5rem;box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);margin-bottom: 1.5rem;}/* 统一输入文本 & 翻译结果的标题格式,确保对齐 */.section-title {font-size: 1.2rem;font-weight: bold;color: #333;text-align: center;margin-bottom: 0.5rem;padding: 0.5rem 0;border-bottom: 2px solid #ddd; /* 增加底部线条增强层次感 */}/* 输入框优化 */.stTextArea textarea {background: white !important;color: #333 !important;border: 1px solid rgba(0, 0, 0, 0.2) !important;border-radius: 12px;padding: 1rem;font-size: 2rem;transition: all 0.3s ease;}/* 按钮优化 */.stButton>button {background: linear-gradient(135deg, #4A90E2, #0084FF) !important;color: white !important;border-radius: 10px !important;padding: 0.7rem 1.8rem !important;font-weight: 600 !important;border: none !important;transition: transform 0.2s ease-in-out;}.stButton>button:hover {transform: translateY(-2px);box-shadow: 0 3px 10px rgba(0, 132, 255, 0.3);}/* Logo 调整:固定在页面顶部 */.logo-header {position: relative; top: -1rem;left: 0rem;display: flex;align-items: center;gap: 1rem;z-index: 1000;}/* 适配不同屏幕的 Logo 位置 */@media (max-width: 768px) {.logo-header {top: 0.5rem;left: 50%;transform: translateX(-50%);}}/* 提示框优化 */.stAlert {border-radius: 10px !important;backdrop-filter: blur(10px);background: rgba(255, 255, 255, 0.9);color: #333;}/* 功能卡片优化 */.feature-card {background: white;padding: 1.2rem;border-radius: 12px;margin: 0.8rem 0;box-shadow: 0 3px 8px rgba(0, 0, 0, 0.08);transition: all 0.3s ease;}.feature-card:hover {background: #F7FAFC;transform: translateY(-4px);}
</style>""", unsafe_allow_html=True)# 粒子动画
def set_particles():particles_js = """<script>particlesJS('particles', {particles: {number: { value: 60 },color: { value: '#ffffff' },shape: { type: 'circle' },opacity: { value: 0.3 },size: { value: 2.5 },move: { enable: true, speed: 1.5 }},interactivity: {events: { onhover: { enable: true, mode: 'repulse' } }},retina_detect: true});</script>"""html(particles_js)# 模拟翻译
def translate(text, source, target):time.sleep(0.5)return "ཁམས་བཟང་།"def main():st.set_page_config(page_title="多语言智能翻译平台", page_icon="🌐", layout="wide")set_custom_style()# 顶部导航栏with st.container():col1, col2 = st.columns([1, 4])with col1:try:logo = base64.b64encode(open("./image/logo.png", "rb").read()).decode()st.markdown(f"""<div class="logo-header"><img src="data:image/png;base64,{logo}" style="height:80px"><h3 style="margin:0; font-size:1.5rem;">藏语翻译器 - Tibetan Translator</h3></div>""", unsafe_allow_html=True)except:st.markdown("<h3>藏语翻译器 - Tibetan Translator</h3>", unsafe_allow_html=True)# 主要功能介绍st.title("🌐 多语言智能翻译")with st.container():cols = st.columns(3)features = [("🌍", "支持50+语言", "覆盖全球主流语言"),("⚡", "实时翻译", "毫秒级响应"),("🔒", "安全加密", "保障数据安全")]for col, (icon, title, desc) in zip(cols, features):with col:st.markdown(f"""<div class="feature-card"><div style="font-size:2.5rem">{icon}</div><h4>{title}</h4><p style="opacity:0.8; font-size:0.9rem">{desc}</p></div>""", unsafe_allow_html=True)# 翻译区域with st.form("translation_form"):col1, col2, col3 = st.columns([3, 1, 3])with col1:st.subheader("输入文本")source_lang = st.selectbox("源语言", ["自动检测", "中文", "英语", "藏语"])input_text = st.text_area("输入内容", height=200, placeholder="输入要翻译的内容...", label_visibility="collapsed")with col2:st.write("")  # 占位if st.form_submit_button("⇄ 翻译", use_container_width=True):if input_text:st.session_state["output_text"] = translate(input_text, source_lang, "目标语言")with col3:st.subheader("翻译结果")target_lang = st.selectbox("目标语言", ["藏语", "中文", "英语", "日语"])output_text = st.text_area("翻译结果",height=200,value=st.session_state.get("output_text", ""),disabled=False,label_visibility="collapsed")with st.expander("高级选项"):st.checkbox("保持格式", True)st.checkbox("术语优化", True)st.checkbox("发音标注", False)# 翻译历史记录with st.container():st.subheader("📜 最近翻译")history_cols = st.columns(3)examples = [("你好 → 藏语", "བཀྲ་ཤིས་བདེ་ལེགས།"), ("Welcome → 中文", "欢迎"), ("ཐུགས་རྗེ་ཆེ་ → 英语", "Thank you")]for col, (title, content) in zip(history_cols, examples):with col:st.markdown(f"""<div class="feature-card"><div style="font-size:0.9rem; opacity:0.8">{title}</div><div style="margin-top:0.5rem">{content}</div></div>""", unsafe_allow_html=True)html('<div id="particles"></div>')set_particles()if __name__ == "__main__":main()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/902337.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI+CRM纷享汇湖南株洲站圆满落幕

近日,由株洲工业和信息化局指导,湘数促会株洲联络处主办,华为云、纷享销客共同承办的“智变未来营销破局”暨企业CRM应用与发展趋势纷享汇在湖南株洲成功举办。此次活动吸引了近40位湘企高管参与,共同探讨企业数字化转型与营销破局的新路径。 一、华为云助力企业数字化转型…

postgresql 16版本之后使用yum方式下载

1.登录下载地址https://www.postgresql.org/download/linux/redhat/

bilibili 分段进度跳转

编辑好后重新投稿即可

谷歌浏览器Chrome安装历史版本

连接:https://downzen.com/en/windows/google-chrome/versions/?page=4 首先,打开网址 然后选择所需要的版本进行下载

LevOJ.sln - 第五期

LevOJ - 字符串专题解决方法 LevOJ平台.sln苯蒟蒻也没系统学过算法,群佬有更高级的算法一定要在评论区贴一下喵~P1034 字符串的循环移位 问题描述解决方法 #include <iostream> #include <string> using namespace std;int main() {int n;cin >> n;string s…

DeepSeek R1 + Ollama + Cherry Studio 实现本地化部署 + 可视化访问,真的太香了!

大家好,我是R哥。 今天继续聊聊 DeepSeek R1 本地部署和可视化访问。 上一期的分享了 DeepSeek R1 本地部署实战教程来了,带可视化界面,非常详细!,使用的是 Ollama + Open WebUI 实现的。 今天再分享一种方案:Ollama + Cherry Studio,这是一种 AI 客户端形式,而非网页,…

国内值得去的955神仙公司排行榜

在科技行业竞争日益激烈、“内卷” 成风的当下,“955” 工作制宛如一股清流,让打工人看到了工作与生活平衡的曙光。今天,咱们就来唠唠国内外那些既有着出色业务,又能让员工享受 “955” 神仙公司。 先解释一下,所谓的955是指: 工作日早9点上班、晚5点下班、一周工作5天,中…

Windows11系统下使用Docker Desktop 部署Nginx

在Windows系统安装完成Docker Desktop后,基于Docker部署Nginx前排提醒: 1. 本教程的前提是已经安装完成Docker Desktop,若还没安装,可以参考博主的另一篇教程:Windows11安装Docker Desktop 2. 操作系统:Windows11,Docker Desktop版本:4.38.0,Nginx版本:1.13.8第一步:…

Ftrans超大附件插件一键解决难题:outlook邮箱大文件怎么发送?

在日常办公中,通过outlook邮箱发送文件是一种至关重要的沟通和协作工具,具有多方面的作用,并且应用场景广泛。但在实际使用中,也会碰到outlook邮箱大文件怎么发送的难题。可以来了解一下: 一、应用场景 1、内部沟通 日常工作安排:上级领导通过邮件向下属布置工作任务,明…

IDEA-idea2013连接Mysql数据库

IDEA-idea2013连接Mysql数据库 右侧DataBase图表,选择Mysql输入用户名和密码 => 点击TestConnection成功会显示点击这里选择schemas

SpringSecurity5(8-权限注解)

Spring Security 提供多种权限注解,如 @PreAuthorize、@PostAuthorize、@Secured 和 @RolesAllowed,用于方法级别的访问控制。@PreAuthorize 适用于方法执行前权限检查,@PostAuthorize 可在方法执行后验证返回值权限,@Secured 和 @RolesAllowed 主要基于角色控制。注解使用…

Windows Server 2025 中文版、英文版下载 (2025 年 3 月更新)

Windows Server 2025 中文版、英文版下载 (2025 年 3 月更新)Windows Server 2025 中文版、英文版下载 (2025 年 3 月更新) Windows Server 2025 LTSC x64 (updated Mar 2025) 请访问原文链接:https://sysin.org/blog/windows-server-2025/ 查看最新版。原创作品,转载请保留出…