-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathoverlay layers.py
70 lines (52 loc) · 1.65 KB
/
overlay layers.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
from easing_functions import *
from drawBot import *
# EDIT THESE VALUES #####################
string="string"
fontUwant="Your Variable Font"
textsize=1000
fps=60
speed=60
# fps/speed=duration of one loop in seconds
framewidth=1080
frameheight=1080
layers=8
loops=1
#########################################
axis1=list(listFontVariations(fontUwant).items())[0][0]
axis1min=list(listFontVariations(fontUwant).items())[0][1]["minValue"]
axis1max=list(listFontVariations(fontUwant).items())[0][1]["maxValue"]
axis1range=axis1max-axis1min
textPosX=framewidth/2
textPosY=frameheight/2-textsize/3
def draw(loopframe, astart):
# draw background
newPage(framewidth, frameheight)
frameDuration(1/fps)
cmykFill(.01, .02, 0, .95)
rect(0, 0, framewidth, frameheight)
# set main text properties
blendMode("overlay")
cmykFill(0, .2, .1, 0)
font(fontUwant)
fontSize(textsize)
for l in range(layers):
frameshift = l * fps/layers
a = QuinticEaseInOut(start=astart, end=axis1max-l*((axis1max-axis1min)/(layers-1)), duration=speed)
args1 = {axis1 : a.ease(loopframe)}
fontVariations(**args1)
text(string, (textPosX, textPosY), align="center")
def pause(length, currstart):
for z in range(length):
draw(a1, currstart)
for k in range(loops):
for a1 in range(speed):
draw(a1, axis1min)
for a1 in reversed(range(speed)):
draw(a1, axis1max)
pause(10, axis1max)
for a1 in range(speed):
draw(a1, axis1max)
for a1 in reversed(range(speed)):
draw(a1, axis1min)
pause(10, axis1min)
saveImage("~/Desktop/" + string + ".mp4")