news 2026/6/25 21:19:23

Manim如何在数学公式中完美显示中文?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Manim如何在数学公式中完美显示中文?

为什么会出现报错?

Manim底层使用LaTeX来渲染公式。

标准的LaTeX环境主要针对英文和数学符号设计,如果没有加载特定的中文宏包(如ctex),它就无法识别汉字,从而导致编译失败。

所以,核心思路就是:告诉 Manim 使用支持中文的 LaTeX 模板。

2. 三大组件的中文显示方案

ManimCE中,常用的可以显示数学公式的三个组件是MathTexTexTitle

它们显示中文的设置略有不同,我们逐个来看。

2.1. MathTex 组件

MathTex主要用于数学公式。要显示中文,只需要添加一个关键参数:tex_template

  • 解决方法:设置tex_template=TexTemplateLibrary.ctex
  • 代码示例
# 正确示范 ✅ tex02 = MathTex( r"\text{勾股定理}: a^2+b^2=c^2", tex_template=TexTemplateLibrary.ctex, # 关键! )

注意:中文最好包裹在\text{}中,这样 LaTeX 才知道这是文本而不是数学变量。

2.2. Tex 组件

Tex组件通常用于包含更多文本内容的段落。对于中文显示,它比MathTex多了一个要求。

  • 解决方法:需要同时设置tex_templatetex_environment
  • 关键参数
    1. tex_template=TexTemplateLibrary.ctex
    2. tex_environment="align*"
  • 代码示例
# 正确示范 ✅ tex01 = Tex( r"\text{勾股定理}: a^2+b^2=c^2", tex_environment="align*", # 关键! tex_template=TexTemplateLibrary.ctex, # 关键! )

2.3. Title 组件

Title组件用于生成标题。很多同学不知道,其实Title底层是继承自Tex组件的。

  • 解决方法:既然它继承自Tex,那么它显示中文的要求也与Tex完全一致。
  • 关键参数:同样需要tex_environment="align*"tex_template=TexTemplateLibrary.ctex
  • 代码示例
# 正确示范 ✅ title = Title( r"\text{勾股定理}: a^2+b^2=c^2", tex_environment="align*", # 关键! tex_template=TexTemplateLibrary.ctex, # 关键! )

3. 完整代码演示

为了让大家能够直接运行成功,我整理了一份完整的代码示例。你可以直接复制到你的编辑器中尝试。

from manim import * class Keshihua(Scene): def construct(self): # 1. Tex 组件显示中文 # 需要两个参数:tex_environment 和 tex_template tex01 = Tex( r"\text{勾股定理}: a^2+b^2=c^2", tex_environment="align*", tex_template=TexTemplateLibrary.ctex, ).set_color_by_gradient(RED, GREEN) self.play(Write(tex01)) # 2. MathTex 组件显示中文 # 只需要一个参数:tex_template tex02 = MathTex( r"\text{勾股定理}: a^2+b^2=c^2", tex_template=TexTemplateLibrary.ctex, ).set_color_by_gradient(YELLOW, BLUE) tex02.next_to(tex01, DOWN) self.play(Write(tex02)) # 3. Title 组件显示中文 # 因为继承自 Tex,所以参数要求与 Tex 相同 title = Title( r"\text{勾股定理}: a^2+b^2=c^2", tex_environment="align*", tex_template=TexTemplateLibrary.ctex, ) self.play(Write(title)) self.wait()

4. 总结与建议

为了方便记忆,我把今天的重点整理成了一个小表格:

组件类型是否需要中文模板?是否需要指定环境?关键参数设置
MathTex✅ 是❌ 否
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/25 21:19:07

告别游戏卡顿:sguard_limit - 腾讯游戏反作弊资源智能限制器

告别游戏卡顿:sguard_limit - 腾讯游戏反作弊资源智能限制器 【免费下载链接】sguard_limit 限制ACE-Guard Client EXE占用系统资源,支持各种腾讯游戏 项目地址: https://gitcode.com/gh_mirrors/sg/sguard_limit 你是否在玩《英雄联盟》、《穿越…

作者头像 李华
网站建设 2026/6/25 21:18:59

WPS-Zotero:科研工作者的跨平台文献管理终极解决方案

WPS-Zotero:科研工作者的跨平台文献管理终极解决方案 【免费下载链接】WPS-Zotero An add-on for WPS Writer to integrate with Zotero. 项目地址: https://gitcode.com/gh_mirrors/wp/WPS-Zotero 在学术写作和科研工作中,文献管理是每个研究者必…

作者头像 李华
网站建设 2026/6/25 21:18:47

H3C VDP:高效安全的虚拟桌面协议

笔记转载自:“H3C ICT知识百科” 什么是VDP? VDP(Virtual Desktop Protocol,虚拟桌面协议)是H3C自主研发的虚拟桌面协议,也是H3C Workspace云桌面产品的重要组成部分。VDP允许用户从本地访问远程服务器上…

作者头像 李华
网站建设 2026/6/25 21:18:32

如何免费解锁Windows 11多用户远程桌面?RDP Wrapper完整指南

如何免费解锁Windows 11多用户远程桌面?RDP Wrapper完整指南 【免费下载链接】rdpwrap RDP Wrapper Library 项目地址: https://gitcode.com/gh_mirrors/rd/rdpwrap 你是否曾因Windows家庭版无法支持多人同时远程连接而感到困扰?RDP Wrapper Libr…

作者头像 李华
网站建设 2026/6/25 21:18:27

实战IP地理定位:使用ApiZero街道级IP查询API实现精准位置获取

引言 在互联网应用中,获取用户的IP地址并解析其地理位置是一项常见且重要的需求。无论是为了提供本地化内容、实现访问控制、进行风控分析,还是优化广告投放,IP地理位置数据都能发挥关键作用。市面上的IP查询服务众多,但能提供街…

作者头像 李华
网站建设 2026/6/25 21:18:18

树莓派3 config.txt硬件启动配置深度解析与工业级调优

1. 项目概述:从一块发热的树莓派3说起,config.txt不是“配置文件”,而是硬件启动的总开关我第一次把树莓派3接上7英寸官方屏,跑起Kodi时风扇狂转、机身发烫,视频卡顿得像PPT——当时我下意识去调系统负载、换散热片、甚…

作者头像 李华