可以通过Photoshop中的JavaScript(JSX脚本)检查图像大小(字节而不是像素)吗?

时间:2015-10-22 21:38:44

标签: javascript photoshop jsx

有许多图像 任务是:将每个图像的大小调整为2000px,它应小于500kb 当前脚本(.jsx)调整图像大小(app.activeDocument.resizeImage),但一些调整大小的图像大500kb(除了web:质量81)。
所以想法是循环:检查当前图像的大小,如果大小> 500,将质量降低到80,检查大小等等......

一些代码行是:

cTID = function(s) { return app.charIDToTypeID(s); };
sTID = function(s) { return app.stringIDToTypeID(s); };
...
var desc1 = new ActionDescriptor(); var desc2 = new ActionDescriptor();
...
desc2.putEnumerated(cTID('Fmt '), cTID('IRFm'), sTID("JPEGFormat"));
...
desc2.putInteger(cTID('Qlty'), 81);
...
desc2.putPath(cTID('In  '), new File("/c/folder"));
desc1.putObject(cTID('Usng'), sTID("SaveForWeb"), desc2);
executeAction(cTID('Expr'), desc1, dialogMode);
  1. 浏览器中的JavaScript无法访问用户的驱动器。那么Photoshop中的jsx怎么样,看起来都一样呢?
  2. 是否可以通过cTID检查jpeg图像的大小(当前质量)?

1 个答案:

答案 0 :(得分:0)

我相信你能做到这一点的唯一方法是直接从HTTP头获取Content-Length值。据我所知,JS无法访问文件的属性(大小除外)。在这里回答得更彻底:

Determining image file size + dimensions via Javascript?