本帖最后由 qq629926132 于 2023-10-31 09:14 编辑
现在有这样一个需求
1、D盘A文件夹下有一批待处理图片需要添加水印
2、A文件夹下存在子文件夹watermark 里面有十几个水印图片
求:如何批量从watermark水印文件夹里面随机选中水印图片,批量给A文件夹下的图片添加水印呢?
比如 水印1 +图片1 水印10+图片2 水印3+图片3 类似这种
我目前尝试使用如下代码,发现随机数没办法循环随机,只随机一次,结果导致加的水印是一样的- Setlocal enabledelayedexpansion
- for /f "delims=" %%i in ('dir /a-d /b /s "D:\A\watermark\*.png"') do (SET /A h+=1 & SET r!h!=%%i )
- set /a s=!random!%%!h!+1
- for /f "delims=" %%a in ('dir /a-d /b "D:\A\*.png"') do (
- magick.exe composite -gravity north "!r%s%!" "%%a" ".\111\%%~na-water.png" )
- pause
复制代码 这样执行下来的结果变成了
magick.exe composite -gravity north "水印1" "图片1" ".\111\图片1-water.png"
magick.exe composite -gravity north "水印1" "图片2" ".\111\图片2-water.png"
magick.exe composite -gravity north "水印1" "图片3" ".\111\图片3-water.png"
和我预想的不一样, 求下解决办法和思路 |