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

[文件操作] [已解决]请问BAT可以批量检测图片的DPI吗

本帖最后由 001011 于 2012-6-3 19:44 编辑

工作中需要检测TIF格式图片的DPI是否合符要求,一张张的点属性太慢 BAT能做到吗  批量检测文件夹里面TIF格式的DPI  并生成检测结果文档
还有我的图片是放在N个文件夹里面的  也就是一个总目录  下面的子目录下
谢谢
1

评分人数

    • zqz0012005: 感谢给帖子标题标注[已解决]字样PB + 2
非常好的论坛

应该不行,但可以考虑用第三方工具

TOP

回复 2# poter


    用哪个第三方?

TOP

批处理不是可以检测属性吗  把图片的属性显示出来  可以吗
非常好的论坛

TOP

@echo off&setlocal enabledelayedexpansion
(for /f "delims=" %%i in ('dir /s /b *.*') do (
   set "var=%%~ti"
   set "var=!var:/=-!"
   echo %%i %%~zib !var:~,7!
))>1.txt
1.txt
pause
这段代码不就可以检测文件的大小和日期吗
非常好的论坛

TOP

根据上面的代码的原理可以做到吗
非常好的论坛

TOP

可以第三方
nconvert.exe -info 1.jpg
http://www.bathome.net/thread-4567-1-1.html

TOP

回复 7# yangfengoo
我不知道咋用呀  请指教哟
非常好的论坛

TOP

这个帖子貌似可以得到图片的DPI
但是我不知道怎么用呀
http://www.bathome.net/viewthrea ... 6%AC%2B%CA%F4%D0%D4
非常好的论坛

TOP

  1. @set @n=0//& dir /a-d/s/b *.tif| cscript -nologo -e:jscript "%~f0" >a.txt& pause& start notepad a.txt& exit /b
  2. fso = new ActiveXObject("Scripting.FileSystemObject");
  3. sh = new ActiveXObject("Shell.Application");
  4. objFolder = sh.NameSpace(0);
  5. for (i=0; i<255; i++) {
  6.     s = objFolder.GetDetailsOf(null, i);
  7.     if (s=="水平分辩率") x=i;
  8.     if (s=="垂直分辩率") y=i;
  9. }
  10. WScript.Echo("文件路径: 水平分辩率, 垂直分辩率");
  11. ts = WScript.StdIn;
  12. while (!ts.AtEndOfStream) {
  13.     f = ts.ReadLine();
  14.     objFolder = sh.NameSpace(fso.GetAbsolutePathName(f+"/.."));
  15.     objFolderItem = objFolder.ParseName(fso.GetFileName(f));
  16.     WScript.Echo( f + ":" + objFolder.GetDetailsOf(objFolderItem, x)
  17.         + "," + objFolder.GetDetailsOf(objFolderItem, y) );
  18. }
复制代码
1

评分人数

TOP

powerbat 发表于 2012-6-2 13:47

非常感谢  终于做到了
非常好的论坛

TOP

还想问一个问题  10楼的代码可以得到DPI   
但是我想自定义路径和增加图片格式   可以吗
非常好的论坛

TOP

回复 12# 001011


    第一行改成
  1. @set @n=0//& cd /d "自定义路径"& dir /a-d/s/b *.tif *.jpg *.png *.图片格式| cscript -nologo -e:jscript "%~f0" >a.txt& pause& start notepad a.txt& exit /b
复制代码
1

评分人数

TOP

谢谢啦  呵呵
非常好的论坛

TOP

回复 5# 001011


    你自己可以先查看一下dir命令的结果里面是否包含你想要的内容

TOP

返回列表