User:Stonestone/pythonnotes: Difference between revisions
Stonestone (talk | contribs) No edit summary |
Stonestone (talk | contribs) No edit summary |
||
Line 1: | Line 1: | ||
=== | ===外援授课区=== | ||
from PIL import Image, ImageDraw, ImageFont | from PIL import Image, ImageDraw, ImageFont | ||
Line 16: | Line 14: | ||
# 'w' for writing (truncating the file if it already exists) | # 'w' for writing (truncating the file if it already exists) | ||
# append 'b' to the mode value to open the file in binary mode, which will improve portability. | # append 'b' to the mode value to open the file in binary mode, which will improve portability. | ||
of = open("frames.mjpeg", "wb") | of = open("frames.mjpeg", "wb") | ||
for i in range(100): | for i in range(100): | ||
# the value range of `i` is 0 to 99 | # the value range of `i` is 0 to 99 | ||
p = i/99.0 | p = i/99.0 | ||
l = p*(1920-50) | l = p*(1920-50) | ||
print p , l | print p , l |
Revision as of 22:49, 30 November 2015
外援授课区
from PIL import Image, ImageDraw, ImageFont
- Docs: https://docs.python.org/2/library/stringio.html
- If you measure for speed, you should use cStringIO
from cStringIO import StringIO #其实不太懂StringIO这个模块。 import random
f = ImageFont.truetype("/Users/Stone/Desktop/Ptah-Regular.otf", size=300)
- `open` is a Python build-in function
- Docs: https://docs.python.org/2/library/functions.html#open
- "frames.mjpeg"(filename) is the first param of open function.
- 'w' for writing (truncating the file if it already exists)
- append 'b' to the mode value to open the file in binary mode, which will improve portability.
of = open("frames.mjpeg", "wb")
for i in range(100):
# the value range of `i` is 0 to 99 p = i/99.0 l = p*(1920-50) print p , l r = random.randint(1,225) g = random.randint(220,255) b = random.randint(111,225) im = Image.new("RGB", (1920,1080) , color=(r,g,b)) #("mode",(size),(color)) draw = ImageDraw.Draw(im) sc=p*255 tp = 80+(p*1870) draw.text((tp,680), str(i), fill=(255,0,0),font=f) draw.text((tp-2,680-2), str(i), fill=(0,0,0),font=f) draw.text((tp+2,680+2), str(i), fill=(0,0,0),font=f) # See `StringIO` docs above. `class StringIO.StringIO([buffer])` # StringIO provides a convenient means of working with text in memory using the file API (read, write. etc.). buf = StringIO() #不太懂buf指的是什么。。 im.save(buf, format="jpeg") of.write(buf.getvalue()) #of = bucket
print i
print "done"