【manim动画教程】– 文本样式

文本的样式主要指颜色字体相关的属性设置。

对于manim的两个文本对象 TextTex来说,
Text对象有更多的属性可以调整样式,相对来说,由于 Tex主要用来显示数学公式,所以关于样式的属性要少一些。

下面介绍一些我在视频制作时最常用的一些颜色和字体相关的属性。

1. 颜色相关

颜色设置主要分为单色,渐变色两种,对于 Text对象,manim还提供了更加精细的按字符设置的属性。

1.1 单色

单色设置通过 color属性。

Text("hello world", color=RED)
Text("你好,世界", color=YELLOW)
Text("こんにちは世界", color=GREEN)
Tex(r"$a^2 + b^2 = c^2$", color=RED)
Tex(r"$E = mc^2$", color=YELLOW)
Tex(r"$e^{i\pi} + 1 = 0$", color=GREEN)

运行效果:
out01.gif

1.2 渐变色

渐变色设置通过 set_color_by_gradient方法。

Text("hello world").set_color_by_gradient((RED, GREEN))
Text("你好,世界").set_color_by_gradient((YELLOW, BLUE))
Text("こんにちは世界").set_color_by_gradient((BLUE, RED))
Tex(r"$a^2 + b^2 = c^2$").set_color_by_gradient((RED, GREEN))
Tex(r"$E = mc^2$").set_color_by_gradient((YELLOW, BLUE))
Tex(r"$e^{i\pi} + 1 = 0$").set_color_by_gradient((BLUE, RED))

运行效果:
out01.gif

1.3 按字符设置

如果一段文本中需要突出某些字符,可以用 t2c属性来设置特定字符的颜色。

Text("databook.top", t2c={"data": BLUE, "book": RED, "top": GREEN})

对于 Tex对象来说,虽然没有 t2c属性,也可以通过 set_color_by_tex方法来设置特定字符的颜色。

t = Tex(r"$a^2$", " + ", r"$b^2$", " = ", r"$c^2$")
t.set_color_by_tex("a^2", RED)
t.set_color_by_tex("b^2", YELLOW)
t.set_color_by_tex("c^2", GREEN)

运行效果:
out01.gif

2. 字体相关

manim可以直接使用系统中已有的字体,也可以设置字号,Text对象还可以设置粗体,斜体等等。

2.1 系统字体

manim通过 font属性设置字体。

Text("manim", font="Consolas")
Text("数学", font="STXingkai")  # 华文行楷
Text("之旅", font="STCaiyun")   # 华文彩云

运行效果:
out01.gif

2.2 字号

字号就是字体的大小,通过 font_size属性设置。

Text("manim", font_size=20)
Text("数", font_size=30)
Text("学", font_size=40)
Text("之", font_size=50)
Text("旅", font_size=60)

运行效果:
out01.gif

2.3 粗体

粗体通过 weight属性设置。

Text("NORMAL font weight")
Text("BOLD font weight", weight=BOLD)

运行效果:
out01.gif

2.4 斜体

斜体通过 slant属性设置。

Text("NORMAL font")
Text("ITALIC font", slant=ITALIC)

运行效果:
out01.gif

2.5 按字符设置

字体相关的属性也可以像颜色那样,按字符设置。相关的主要属性包括:

  1. t2f:按字符设置字体
  2. t2s:按字符设置斜体
  3. t2w:按字符设置粗体
Text(
    "manim 数学之旅",
    t2f={"数学": "STXingkai", "之旅": "STCaiyun"},
    t2s={"ma": ITALIC},
    t2w={"nim": BOLD},
)

运行效果:
out01.gif

3. 总结回顾

本篇主要介绍了文本的颜色和字体相关的设置,其中 Text提供了丰富的属性来设置文本的样式。
颜色相关的属性主要有:

  1. color:单色设置
  2. set_color_by_gradient:渐变色设置
  3. t2c:按字符设置颜色

字体相关的属性主要有:

  1. font:字体设置
  2. font_size:字号设置
  3. weight:粗体设置
  4. slant:斜体设置
  5. t2f:按字符设置字体
  6. t2s:按字符设置斜体
  7. t2w:按字符设置字体

文字说明和公式是制作数学视频时必不可少的部分,
通过设置其常用属性,让文字和公式在配合其他图形部分时,在色彩,大小等形式上保持一致性,更加美观的呈现最终的效果。

本文关联的微信视频号短视频:
manim-文本样式-视频号.png

原文链接:https://www.cnblogs.com/wang_yb/p/17294918.html

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:【manim动画教程】– 文本样式 - Python技术站

(0)
上一篇 2023年4月18日
下一篇 2023年4月18日

相关文章

  • python解决循环依赖的问题分析

    Python解决循环依赖的问题分析 在Python中,循环依赖是指两个或多个模块之间相互引用,导致无法正确加载模块的情况。这种情况通常会导致ImportError异常。本文将介绍Python中循环依赖的原因、如何识别循环依赖以及如何解决循环依赖的问题。 循环依的原因 循环依赖的原因是两个或多个模块之间相互引用。例如,模块A引用了模B,而模块B又引用了模块。种…

    python 2023年5月13日
    00
  • 使用selenium和pyquery爬取京东商品列表过程解析

    本攻略将介绍如何使用selenium和pyquery爬取京东商品列表。selenium是一个自动化测试工具,可以模拟用户在浏览器中的操作,例如点击、输入和滚动等。pyquery是一个Python库,可以解析HTML和XML文档,并提供类似于jQuery的API。 实现京东商品列表爬取 以下是一个示例代码,用于实现京东商品列表爬取: from selenium…

    python 2023年5月15日
    00
  • python实现按日期归档文件

    这里给您详细讲解一下Python实现按日期归档文件的完整攻略。 1. 确定归档的基准时间 要进行按日期归档,首先需要确定归档的基准时间。在该基准时间之前的文件将被整理到过去的日期文件夹中,而在基准时间之后的文件则会被整理到当前日期文件夹中。可以将基准时间设置为程序运行的当天日期,也可以根据需求设置其他时间。这里以程序运行当天为基准时间进行代码实现。 impo…

    python 2023年6月2日
    00
  • Python脚本后台运行的几种方式

    下面我就来详细讲解一下Python脚本后台运行的几种方式。 1. 使用nohup命令 nohup命令可以在后台运行一个命令,并将其输出重定向到nohup.out文件中。可以使用以下命令将Python脚本后台运行: nohup python3 myscript.py > nohup.out 2>&1 & 其中,myscript.py…

    python 2023年5月19日
    00
  • Python实现操作Redis所有类型的方法详解

    Python实现操作Redis所有类型的方法详解 什么是Redis Redis是一个开源的内存数据库系统,常用作缓存、队列和数据存储。Redis支持多种数据结构,包括字符串、哈希表、列表、集合和有序集合等。 Python操作Redis Python作为一门流行的编程语言,支持使用第三方库来操作Redis数据库。本文将介绍如何使用Python库redis来操作…

    python 2023年5月14日
    00
  • 使用python将请求的requests headers参数格式化方法

    以下是关于Python requests.get带header的完整攻略: Python requests.get带header 在Python中,我们可以使用requests库发送HTTP请求。如果需要在请求中添加header,我们可以使用requests库的get()方法,并在headers参数中添加header。以下是Python requests.g…

    python 2023年5月15日
    00
  • Python函数基础(定义函数、函数参数、匿名函数)

    下面是 Python 函数基础的完整攻略。 1. 定义函数 定义函数的语法: def function_name(parameters): """函数说明文档""" # 函数体 return [expression] 其中,function_name 为函数的名称,parameters 为函数的参数…

    python 2023年5月14日
    00
  • python 正则式 概述及常用字符

    Python正则表达式概述及常用字符 正则表达式是一种强大的文本处理工具,可以用于各种文本处理任务,如数据清洗、文本分析、信息提取等。在Python中,我们可以使用re模块来操作正则表达式。本攻略将详细讲解Python正则表达式的基本语法、常用字符应用技巧,帮助读者快速掌握正则表达式的用法。 正则表达式的基本语法 正则表达式是由普通字符和元字符组成的字符串,…

    python 2023年5月14日
    00
合作推广
合作推广
分享本页
返回顶部