diff options
| -rw-r--r-- | main.py | 16 | ||||
| -rw-r--r-- | src/VHSImage.py | 21 | 
2 files changed, 21 insertions, 16 deletions
| @@ -9,22 +9,19 @@ import urllib.request  import urllib.parse  import argparse -version = 2.0 +version = 2.1  style = False  text = "| V A P O R W A V E || G E N E R A T O R |"  parser = argparse.ArgumentParser(description=text) -parser.add_argument( -    "-M", "--music", help="generate  v a p o r w a v e  music", action="store_true" -) -parser.add_argument( -    "-P", "--picture", help="generate VHS Style image", action="store_true" -) +parser.add_argument("-M", "--music", help="generate  v a p o r w a v e  music", action="store_true") +parser.add_argument("-P", "--picture", help="generate VHS Style image", action="store_true")  parser.add_argument("-V", "--video", help="VHS Style Video", action="store_true")  parser.add_argument("-v", "--version", help="show program version", action="store_true")  parser.add_argument("-i", "--input")  parser.add_argument("-o", "--output", help="Output for specifying output video") +parser.add_argument("-d","--date",help="Custom Date in yyyy/mm/dd format. e.g 2020/5/14")  args = parser.parse_args() @@ -32,6 +29,7 @@ args = parser.parse_args()  music = False  picture = False  video = False +date = None  if args.version:      print("vaporwave generator 旺育栄", version) @@ -46,6 +44,8 @@ if args.input:      query = args.input  if args.output:      outfile = args.output +if args.date: +    date = args.date  else:      parser.print_help()      exit @@ -180,6 +180,6 @@ if music:      name, title = download_file(query)      gen_vapor(name, title)  elif picture: -    generateVHSStyle(query, "out.jpg") +    generateVHSStyle(query, "out.jpg",date=date)  elif video:      VHS_Vid(query, outfile) diff --git a/src/VHSImage.py b/src/VHSImage.py index fc21adc..ebf057f 100644 --- a/src/VHSImage.py +++ b/src/VHSImage.py @@ -1,4 +1,4 @@ -import datetime +from datetime import datetime  from PIL import Image  from PIL import ImageFont  from PIL import ImageDraw @@ -98,10 +98,15 @@ def mod_image_repeat_rows(          img.save(out_name) -def add_date(img_path, out_name="image.jpg", bottom_offset=0): -    date_obj = datetime.datetime.now() -    date_str_1 = date_obj.strftime("%p %H:%M") -    date_str_2 = date_obj.strftime("%b. %d %Y") +def add_date(img_path, out_name="image.jpg", bottom_offset=0,date=None,time=None): +    if date==None: +        date_obj = datetime.now() +        date_str_1 = date_obj.strftime("%p %H:%M") +        date_str_2 = date_obj.strftime("%b. %d %Y") +    else: +        date_obj = datetime.strptime(date, '%Y/%m/%d') +        date_str_1 = date_obj.strftime("%p %H:%M") +        date_str_2 = date_obj.strftime("%b. %d %Y")      corner_offset = 50      img = Image.open(img_path)      _, height = img.size @@ -150,7 +155,7 @@ if __name__ == "__main__":  """ -def generateVHSStyle(infile, outfile, silence=False): +def generateVHSStyle(infile, outfile, silence=False,date=None):      if silence:          cut_rows = bool(random.getrandbits(1))          offset = random.choice([0, 5, 10]) @@ -159,7 +164,7 @@ def generateVHSStyle(infile, outfile, silence=False):              mod_image_repeat_rows("saturated.jpg", 0.012, 50, 10, True, "shifted.jpg")          else:              mod_image_repeat_rows("saturated.jpg", 0, 0, 0, True, "shifted.jpg") -        add_date("shifted.jpg", "noisy.jpg") +        add_date("shifted.jpg", "noisy.jpg",date=date)          add_date("noisy.jpg", outfile, bottom_offset=offset)          os.remove("shifted.jpg")          os.remove("saturated.jpg") @@ -176,7 +181,7 @@ def generateVHSStyle(infile, outfile, silence=False):              logger.info("Not applying lines effect")              mod_image_repeat_rows("saturated.jpg", 0, 0, 0, True, "shifted.jpg")          logger.info("Adding noise") -        add_date("shifted.jpg", "noisy.jpg") +        add_date("shifted.jpg", "noisy.jpg",date=date)          logger.info("Adding text")          add_date("noisy.jpg", outfile, bottom_offset=offset)          logger.info("Generated Image: out.jpg") | 
