<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12
      小打小鬧  
      import random
      
      from PIL import Image, ImageDraw, ImageFont, ImageFilter
      from io import BytesIO
      
      # 生成驗證碼圖片的高度和寬度
      size = (129, 53)
      # 背景顏色,默認為白色
      bg_color = (255, 255, 255)
      
      # 干擾線顏色。默認為紅色
      linecolor = (0, 0, 0)
      # 是否要加入干擾線
      draw_line = True
      # 加入干擾線條數的上下限
      line_number = (1, 5)
      
      
      # 隨機色
      def getRandomColor():
          r = random.randint(0, 255)
          g = random.randint(0, 255)
          b = random.randint(0, 255)
          return (r, g, b)
      
      
      # 數字 小寫 大寫 里隨機一個
      def getRandomChar():
          random_num = str(random.randint(0, 9))
          random_lower = chr(random.randint(97, 122))
          random_upper = chr(random.randint(65, 90))
          random_char = random.choice([random_num, random_lower, random_upper])
          return random_char
      
      
      # 用來繪制干擾線
      def gene_line(draw, width, height):
          begin = (random.randint(0, width), random.randint(0, height))
          end = (random.randint(0, width), random.randint(0, height))
          # begin = (0, random.randint(0, height))  # 起點
          # end = (74, random.randint(0, height))  # 終點
          linecolor = getRandomColor()
          while linecolor == bg_color:
              linecolor = getRandomColor()
          draw.line([begin, end], fill=linecolor, width=random.choice(range(1, 3)))
      
      
      # number驗證碼位數
      def getcode(number=4):
          width, height = size  # 寬和高
          # 背景色
          bg_color = getRandomColor()
      
          image = Image.new('RGBA', size, bg_color)  # 創建圖片
          import os
          path = os.path.join(os.getcwd(), 'utils', 'Arial.ttf')
          print(os.path.exists(path), '0-----------')
          font = ImageFont.truetype(font='arial.ttf', size=36)  # 驗證碼的字體
          draw = ImageDraw.Draw(image)  # 創建畫筆
          text = ''
          # 隨機的字符、顏色
          for i in range(number):
              code = getRandomChar()
              code_color = getRandomColor()
              while code_color == bg_color:
                  code_color = getRandomColor()
              # 字體的大小
              # font_width, font_height = font.getsize(code)
              # 根據坐標填充字符
              draw.text((10 + 30 * i, 3), code,
                        font=font, fill=code_color)  # 填充字符串
              text = text + code
      
          if draw_line:
              gene_line(draw, width, height)
          # image = image.transform((width + 30, height + 10), Image.AFFINE, (1, -0.3, 0, -0.1, 1, 0), Image.BILINEAR)  # 創建扭曲
          # image = image.transform((width+20,height+10), Image.AFFINE, (1,-0.3,0,-0.1,1,0),Image.BILINEAR)  #創建扭曲
          image = image.filter(ImageFilter.EDGE_ENHANCE_MORE)  # 濾鏡,邊界加強
          bytes = BytesIO()  # 內存
          image.save(bytes, format='png')  # 保存驗證碼圖片
      
          return bytes.getvalue(), text  # 獲得二進制數據,

       

      posted on 2020-09-07 16:46  小打小鬧  閱讀(136)  評論(0)    收藏  舉報
       
      主站蜘蛛池模板: 日本一卡2卡3卡四卡精品网站| 无码人妻丰满熟妇区bbbbxxxx| 国内不卡一区二区三区| 久久久无码精品亚洲日韩蜜桃| 久久夜色国产噜噜亚洲av| 在线视频观看| 91中文字幕一区二区| 国产精品激情av在线播放| 人人人澡人人肉久久精品| 99热成人精品热久久66| 男女真人国产牲交a做片野外| 青青草原国产精品啪啪视频| 自拍偷在线精品自拍偷99| 男女性高爱潮免费网站| 国产女人喷潮视频在线观看| 免费无码成人AV片在线| 免费三级网站| 国产熟女高潮一区二区三区| 性虎精品无码AV导航| 午夜成人无码免费看网站| 日韩国产精品无码一区二区三区| 中文日产幕无线码一区中文| 亚洲精品久久麻豆蜜桃| 国产在线精品国偷产拍| 欧美肥老太牲交大战| 国产蜜臀一区二区三区四区| 国产成人精品无人区一区| 爱性久久久久久久久| 香港日本三级亚洲三级| 无码成人精品区在线观看| 国产精品69人妻我爱绿帽子| 日韩 一区二区在线观看| 三级国产在线观看| 国产熟睡乱子伦午夜视频| 国产中文字幕在线一区| 香港三级韩国三级日本三级| 色爱av综合网国产精品| 久女女热精品视频在线观看| 久久人妻公开中文字幕| 99精品久久免费精品久久| 少妇和邻居做不戴套视频|