找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 9774|回复: 8

[文件操作] 【已解决】批处理文件夹下的所有图片按1:1分割成多个小图 并按原文件名加后缀编号

[复制链接]
发表于 2025-2-3 15:17:17 | 显示全部楼层 |阅读模式
本帖最后由 crownking1983 于 2025-2-3 20:32 编辑

跪求批处理文件夹下的所有图片按1:1分割成多个小图 并按原文件名加后缀编号,跪求了!示例如下

如一个文件夹下有若干长图文件 长图A.jpg 长图B.jpg 长图C.jpg 长图D.jpg 都是长图文件
跪求批处理分别将所有长图分割成1:1的小图若干 然后按原文件名加后缀生成新的小图 如——
长图A 分割成 长图A001.jpg 长图A002.jpg 长图A003.jpg
长图B 分割成 长图B001.jpg 长图B002.jpg 长图B003.jpg 长图B004.jpg 长图B005.jpg
长图C 分割成 长图C001.jpg 长图C002.jpg 长图C003.jpg 长图C004.jpg

具体每个长图分成几张1:1的小图取决于长图能分多少张 如果批处理需要类似mogrify.exe配合也是可以的

网上软件很多 但都需要多步骤操作 不适合成千上万个文件批量操作 不如批处理一键批量方便
发表于 2025-2-3 16:09:48 | 显示全部楼层
本帖最后由 flashercs 于 2025-2-4 04:50 编辑

安装ImageMagick后,https://imagemagick.org/script/download.php#windows
脚本1.bat,编码是UTF8,运行成千上万次magick.exe
  1. @echo off
  2. @REM 脚本编码utf8
  3. >nul chcp 65001
  4. cd /d "%~dp0"
  5. @REM 功能:按指定比例分割竖立的长图片,分割的小图片的宽度是固定的.
  6. @REM 设置 高度/宽度 的值
  7. set "h/w=4/3"
  8. for /f "delims=" %%A in ('dir /a-d-h /b *.jpg^|findstr /lvc:"-"') do (
  9.   echo 分割图片:%%A
  10.   magick.exe "%%~A" -crop %%[w]x%%[fx:w*%h/w%] -depth 8 -scene 1 "%%~nA-%%04d%%~xA"
  11. )
  12. pause
复制代码
脚本2.bat,编码UTF8,仅运行一次magick.exe
  1. @echo off
  2. @REM 脚本编码utf8
  3. >nul chcp 65001
  4. cd /d "%~dp0"
  5. @REM 功能:按指定比例分割竖立的长图片,分割的小图片的宽度是固定的.
  6. @REM 设置 高度/宽度 的值
  7. set "h/w=3/4"
  8. cmd /q /c for /f "delims=" %%A in ('dir /a-d-h /b *.jpg^^^|findstr /lvc:"-"') do ( echo "%%~A" -crop %%[w]x%%[fx:w*%h/w%] -depth 8 -print "%%[f]\\n" -scene 1 -write "%%~nA-%%04d%%~xA" -delete 0--1 )|magick.exe -script -

  9. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
crownking1983 + 1 乐于助人 技术强悍

查看全部评分

 楼主| 发表于 2025-2-3 19:38:55 | 显示全部楼层
回复 2# flashercs


    大佬!你太强悍了!!直接就解决了! 太感谢你了!!!
 楼主| 发表于 2025-2-3 20:55:43 | 显示全部楼层
回复 2# flashercs


    大佬 我再追问一个问题哈 现在的编号是
    长图A0000.jpg 长图A0001.jpg 长图A0002.jpg 长图A0003.jpg
    后缀编号是从0000开始的
    请问如何改让它从0001开始,变成
    长图A0001.jpg 长图A0002.jpg 长图A0003.jpg 长图A0004.jpg
发表于 2025-2-3 21:25:19 | 显示全部楼层
回复 4# crownking1983

2楼修改了; 参数 -scene 1就是 从1开始计数.
 楼主| 发表于 2025-2-3 21:35:41 | 显示全部楼层
回复 5# flashercs


    哦哦哦 原来是这里 谢谢大佬!
 楼主| 发表于 2025-2-4 04:00:58 | 显示全部楼层
回复 5# flashercs


    大佬 我再问您一个引申的问题哈 图片按照1:1的情况进行分割 命令是“>nul chcp 65001”
    如果我按照5:4 或 4:3 或 3:4 等等的比例进行分割的话 命令上该怎么改 有什么规律吗
发表于 2025-2-4 04:52:28 | 显示全部楼层
回复 7# crownking1983


    2楼修改了, set "h/w=3/4" 是高度/宽度

评分

参与人数 1技术 +1 收起 理由
czjt1234 + 1 乐于助人

查看全部评分

发表于 2025-2-4 12:07:15 | 显示全部楼层
啊 , 原来是按 原始宽 的 1:1 , 楼主这1:1说的真是模糊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 13:14 , Processed in 0.014259 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表