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

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

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Python 批量給某個目錄的圖片加水印

      #pip install pillow
      
      #| 參數名              | 說明                   |
      #| ---------------- | -------------------- |
      #| `image_dir`      | 原圖所在文件夾(支持 PNG、JPG)  |
      #| `watermark_file` | PNG 格式水印圖片(建議帶透明背景)  |
      #| `output_dir`     | 輸出文件夾                |
      #| `position`       | 支持預設字符串或 `(x, y)` 坐標 |
      #| `rotation`       | 順時針旋轉角度              |
      #| `opacity`        | 0 \~ 1 之間,水印圖透明度     |
      
      
      import os
      from PIL import Image, ImageEnhance
      
      def add_watermark_to_images(
          image_dir="images",
          watermark_file="watermark.png",
          output_dir="output_watermarked",
          position="bottom-right",  # 可選: 'top-left', 'top-right', 'center', 'bottom-left', 'bottom-right', 或 (x, y)
          rotation=0,               # 旋轉角度(順時針)
          opacity=0.3               # 水印透明度(0 ~ 1)
      ):
          os.makedirs(output_dir, exist_ok=True)
      
          # 加載水印圖
          watermark = Image.open(watermark_file).convert("RGBA")
      
          # 設置透明度
          if opacity < 1.0:
              alpha = watermark.split()[3]
              alpha = ImageEnhance.Brightness(alpha).enhance(opacity)
              watermark.putalpha(alpha)
      
          # 旋轉
          if rotation != 0:
              watermark = watermark.rotate(rotation, expand=True)
      
          for filename in os.listdir(image_dir):
              if not filename.lower().endswith((".jpg", ".jpeg", ".png")):
                  continue
      
              img_path = os.path.join(image_dir, filename)
              img = Image.open(img_path).convert("RGBA")
      
              # 創建同尺寸空圖合成圖層
              layer = Image.new("RGBA", img.size, (0, 0, 0, 0))
              wm_width, wm_height = watermark.size
              img_width, img_height = img.size
      
              # 計算位置
              if isinstance(position, tuple):
                  pos = position
              else:
                  if position == "top-left":
                      pos = (0, 0)
                  elif position == "top-right":
                      pos = (img_width - wm_width, 0)
                  elif position == "center":
                      pos = ((img_width - wm_width) // 2, (img_height - wm_height) // 2)
                  elif position == "bottom-left":
                      pos = (0, img_height - wm_height)
                  else:  # bottom-right
                      pos = (img_width - wm_width, img_height - wm_height)
      
              # 合成圖層
              layer.paste(watermark, pos, watermark)
              watermarked = Image.alpha_composite(img, layer)
      
              # 輸出為 JPG 或 PNG,保持格式一致
              output_path = os.path.join(output_dir, filename)
              if filename.lower().endswith(".jpg") or filename.lower().endswith(".jpeg"):
                  watermarked.convert("RGB").save(output_path, "JPEG")
              else:
                  watermarked.save(output_path, "PNG")
      
              print(f"? 已處理:{filename}")
      
          print("?? 所有圖片水印處理完成!")
      
      # 示例調用
      if __name__ == "__main__":
          add_watermark_to_images(
              image_dir="images",
              watermark_file="watermark.png",
              output_dir="output_watermarked",
              position="top-left",  # 可自定義如 (50, 50)
              rotation=30,
              opacity=0.5
          )
      

        

      posted @ 2025-07-16 10:56  Iamluckyman  閱讀(17)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 久久精品国产亚洲AⅤ无码| 日韩av毛片福利国产福利| 久久久久久久久18禁秘| 骚虎视频在线观看| 女人被狂c躁到高潮视频 | 2021最新国产精品网站| 亚洲av伦理一区二区| 99久久国产成人免费网站| 最新亚洲人成网站在线影院| 东京热无码国产精品| 国产日产欧产精品精品| 激情内射亚洲一区二区三区| 伊人精品成人久久综合97| 日韩中文字幕有码av| 国产一区二区不卡在线| 国产婷婷综合在线视频| 成人午夜福利视频一区二区| 日本高清视频网站www| 2021国产精品视频网站| 日韩高清不卡免费一区二区| 欧美日本中文| 日本深夜福利在线观看| 国产愉拍精品手机| 国产精品福利自产拍久久| 无码一区二区三区久久精品| 尹人香蕉久久99天天拍| 久久精品国产清自在天天线| av色国产色拍| 果冻传媒mv免费播放在线观看| 国产美女免费永久无遮挡| 亚洲综合色婷婷中文字幕| 久久精品国产99国产精品严洲| 久热这里只有精品在线观看| 亚洲第一国产综合| 亚洲熟女少妇乱色一区二区| 福利网午夜视频一区二区| A毛片终身免费观看网站| 色老99久久九九爱精品| 久久天天躁综合夜夜黑人鲁色| 怡春院久久国语视频免费| 国产最新AV在线播放不卡|