Update some Text Mobject changes

This commit is contained in:
xy-23
2019-08-12 14:40:42 +08:00
parent e9fa188d42
commit 0983fa11be

View File

@ -1,8 +1,8 @@
import cairo
import copy
import hashlib
import re
import os
import copy
import hashlib
import cairo
import manimlib.constants as consts
from manimlib.constants import *
from manimlib.mobject.svg.svg_mobject import SVGMobject
@ -21,10 +21,10 @@ class TextSetting(object):
class Text(SVGMobject):
CONFIG = {
#Mobject
'color': WHITE,
# Mobject
'color': consts.WHITE,
'height': None,
#Text
# Text
'font': '',
'gradient': None,
'lsh': -1,
@ -54,7 +54,7 @@ class Text(SVGMobject):
if self.t2g:
self.set_color_by_t2g()
#anti-aliasing
# anti-aliasing
self.scale(0.1)
def find_indexes(self, word):
@ -134,9 +134,9 @@ class Text(SVGMobject):
fsw[i] = x
settings.append(TextSetting(start, end, *fsw))
#Set All text settings(default font slant weight)
# Set All text settings(default font slant weight)
fsw = [self.font, self.slant, self.weight]
settings.sort(key = lambda setting: setting.start)
settings.sort(key=lambda setting: setting.start)
temp_settings = settings.copy()
start = 0
for setting in settings:
@ -145,7 +145,7 @@ class Text(SVGMobject):
start = setting.end
if start != len(self.text):
temp_settings.append(TextSetting(start, len(self.text), *fsw))
settings = sorted(temp_settings, key = lambda setting: setting.start)
settings = sorted(temp_settings, key=lambda setting: setting.start)
if re.search(r'\n', self.text):
line_num = 0
@ -160,7 +160,7 @@ class Text(SVGMobject):
new_setting.start = end
new_setting.line_num = line_num
settings.append(new_setting)
settings.sort(key = lambda setting: setting.start)
settings.sort(key=lambda setting: setting.start)
break
for setting in settings:
@ -170,7 +170,7 @@ class Text(SVGMobject):
return settings
def text2svg(self):
#anti-aliasing
# anti-aliasing
size = self.size * 10
lsh = self.lsh * 10
@ -201,7 +201,7 @@ class Text(SVGMobject):
if setting.line_num != last_line_num:
offset_x = 0
last_line_num = setting.line_num
context.move_to(START_X+offset_x, START_Y + lsh*setting.line_num)
context.move_to(START_X + offset_x, START_Y + lsh*setting.line_num)
context.show_text(text)
offset_x += context.text_extents(text)[4]