[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[其他] [已解决]批处理图像尺寸(无损图片质量及PDI)

列如A4: 尺寸 3507X2480  宽度 3507 像素 高度 2480 像素
            尺寸 2480X3507  宽度 2480 像素 高度 3507 像素            
      
       A3: 尺寸 4960X3507  宽度 4960 像素 高度 3507 像素
             尺寸 3507X4960  宽度 3507 像素 高度 4960 像素   
图片格式(.JPG、.TIF格式)


有很多图片A4尺寸不一  比如:2513X3650、3713X2623、2386X3486、3413X2313等等!
能否批处理成A4尺        例如:  2480X3507、3507X2480、2480X3507 、3507X2480

高度或者宽度超过4000那么就判断是A3。
请各位老师看看能否实现~谢谢~~!

你定义的标准尺寸有好几个,假如有个图片是2513X3650,到底需要修改成哪个尺寸呢?规律是什么呢?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 2# Batcher

我想定的规律是:
                       1、图片的宽度及高度没有一个大于3900的定为A4,大于3900以上小于5300以下定为A3,大于5300以上定为A2及以上不做处理并提示;
                       2、假设定为A4图片还需在A4图片中判断图片是竖显或横显,判断图片宽度小于高度那么修改为2480X3507,假如宽度大于高度那么修改为3507X2480;
                            假设定为A3图片还需在A3图片中判断图片是竖显或横显,判断图片宽度小于高度那么修改为3507X4960,假如宽度大于高度那么修改为4960X3507;
                       3、高度或宽度大于5300以上定为A2以上这图不做处理并提示导出文本;            
不知道这样定的规律是否能成,还请老师帮忙看下,谢谢~!

TOP

A4: 210mm * 297mm    300DPI后:2480px * 3507px;
A3: 297mm * 420mm    300DPI后:3507px * 5040px;
A2: 420mm * 594mm    300DPI后:5040px * 7128px;
不管横竖,A3就是A3;A4就是A4。上面的尺寸都是国标。
QQ: 己阵亡
脚本优先 [PowerShell win10]

TOP

回复 4# xczxczxcz


    您说的尺寸标准是这样的,但是我这里的图片需要增加或者删除边缘。
例如:A4的图片,我这边有2331X3415、2560X3602这些是属于视觉效果竖显的,3590X2530、3313X2306这些视觉效果是横向,
那么需要批处理判断边缘删除或者增加是不是会出现问题,比如3590X2530的需要处理成3507X2480代码会不会处理成2480X3507了,
我觉得处理前需要判断图片的显摆方向。

TOP

回复 3# luckcsz


下载 nconvert 和下面的 test.bat 保存到图片所在文件夹下执行
http://bcn.bathome.net/s/tool/index.html?key=nconvert
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set "OutFolder=处理结果"
  4. set "LogFile=A2.log"
  5. md "%OutFolder%"
  6. type nul > "%LogFile%"
  7. for /f "delims=" %%a in ('dir /b /a-d *.jpg') do (
  8.     echo 正在处理文件 %%a
  9.     for /f "skip=2 tokens=1-2 delims=:" %%i in ('nconvert -quiet -info "%%a"') do (
  10.         set "str=%%i"
  11.         if "!str: Width =!" neq "%%i" (
  12.             set "PicW=%%j"
  13.             set "PicW=!PicW: =!"
  14.         ) else if "!str: Height =!" neq "%%i" (
  15.             set "PicH=%%j"
  16.             set "PicH=!PicH: =!"
  17.         )
  18.     )
  19.     if !PicW! gtr !PicH! (
  20.         set BigPix=!PicW!
  21.     ) else (
  22.         set BigPix=!PicH!
  23.     )
  24.     if !BigPix! gtr 5300 (
  25.         >> "%LogFile%" echo [A2] %%a
  26.     ) else if !BigPix! gtr 3900 (
  27.         echo [A3]
  28.         if !PicW! gtr !PicH! (
  29.             nconvert -quiet -resize 4960 3507 -o "%OutFolder%\%%a" "%%a"
  30.         ) else (
  31.             nconvert -quiet -resize 3507 4960 -o "%OutFolder%\%%a" "%%a"
  32.         )
  33.     ) else (
  34.         echo [A4]
  35.         if !PicW! gtr !PicH! (
  36.             nconvert -quiet -resize 3507 2480 -o "%OutFolder%\%%a" "%%a"
  37.         ) else (
  38.             nconvert -quiet -resize 2480 3507 -o "%OutFolder%\%%a" "%%a"
  39.         )
  40.     )
  41. )
复制代码
1

评分人数

    • luckcsz: 乐于助人,谢谢您老师~!技术 + 1
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 6# Batcher


      不会弄啊,点击直接闪退~!是不是我这个是tif格式要先转JPG格式再用?我把这里 for /f "delims=" %%a in ('dir /b /a-d *.jpg *.tif') do (
老师能否给个演示~! 加了tif格式图片还是处理不了,还请老师看下

TOP

回复 7# luckcsz


    nconvert 不是 xnconvert
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 8# Batcher


    下了7.12,我的图片是tif格式的,先要转换为JPG格式才可以吗?
这里加了for /f "delims=" %%a in ('dir /b /a-d *.jpg *.tif') do (

TOP

回复 8# Batcher


    已经在处理了,我把64放进去搞错了,以为系统是64位这个也是64
老师谢谢您~!

TOP

回复 8# Batcher


    能不能和处理前的图片一样也是压缩型大小,现在处理出来的图片是无压缩的很大了~!
能否解决~!

TOP

回复 11# luckcsz


    请举例说明一下什么是压缩型大小?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

本帖最后由 luckcsz 于 2019-9-6 16:18 编辑

abbyy中保存格式 TIFF、彩色、JPEG 压缩(*.tif; *.tiff)
我图片修改后没有JPEG压缩图片原本453K,现在有24.9MB

TOP

回复 13# luckcsz


有几个关于压缩的参数,我也不确定哪个适合你的情况,试试:
nconvert -quiet -resize 3507 4960 -c 8 -o "处理结果\2.tif" "2.tif"
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 14# Batcher


    能不能再压缩一点点,现在出来有 722 kb 原始文件 是433 kb

TOP

返回列表