本帖最后由 xp3000 于 2021-4-13 20:24 编辑
- @echo off
- setlocal enabledelayedexpansion
- set "str=ABCDEFGHIJKLMNOPQRS"
-
- for /l %%i in (0,1,18) do (set "!str:~%%i,1!=%%i")
-
- :main
- set input=
- set /p input=请输入A-S:
- if not defined input goto main
- set /a W=(!input!)*30
-
- setlocal
- :input_
- set /p input_=请输入1-19:
- if %input_% geq 20 goto input_
- set /a H=(!input_!-1)*30
-
-
- echo.
- echo [a]左上 [b]左下 [c]右上 [d]右下
- echo.
- set/p var=请选择[a/b/c/d]:
- set var=!var:a=左上! && set var=!var:b=左下! && set var=!var:c=右上! && set var=!var:d=右下! && set var=!var: =!
- echo.
- if %var%==左上 set /a 宽=%W%+45 & set /a 高=(660-75)-%H% & set /a →=0 & set /a ↓=0 & goto ok
- if %var%==左下 set /a 宽=%W%+45 & set /a 高=%H%+76 & set /a →=0 & set /a ↓=660-%H%-44 & goto ok
- if %var%==右上 set /a 宽=628-%W%-46 & set /a 高=660-75-%H% & set /a →=%W%+44 & set /a ↓=0 & goto ok
- if %var%==右下 set /a 宽=(18*30-%W%)+44 & set /a 高=%H%+76 & set /a →=%W%+44 & set /a ↓=(660-72)-%H% & goto ok
-
- goto main
-
- :ok
- @for %%i in (1.png) do (ffmpeg.exe -i "%%i" -strict -2 -vf crop=%宽%:%高%:%→%:%↓% -y "%%~ni_切割%var%_%input%—%input_%%%~xi"
- if exist %%~ni_切割%var%_%input%—%input_%%%~xi (cls&echo...............&echo %var%图片已输出_%input%和%input_%
- rundll32.exe shimgvw.dll,ImageView_Fullscreen %~dp0%%~ni_切割%var%_%input%—%input_%%%~xi)
- )
- endlocal
- goto main
-
- pause
复制代码 HJK……你给的图片都是错误的,只能按错误图片的来切割了,
如果按照你的图片操作,删除第3行的I,在S后面增加个T,
要不然,调整图片的字母A-S
加了一行可以预览切割的图片
rundll32.exe shimgvw.dll,ImageView_Fullscreen %~dp0%%~ni_切割%var%_%input%—%input_%%%~xi |