打开文件夹中的所有pdf文件,并将其作为已调整大小的jpgs保存在其他文件夹

时间:2016-10-06 08:22:09

标签: javascript pdf photoshop

我有一个脚本,用于检查图像是否宽于250px,如果它高于300px,如果这些语句中的任何一个为真,则应调整它们的大小以适应这两个值。然后它应该将它们保存为jpgs,扩展名为large,文件名为large。但是我不知道如何让photoshop打开给定文件夹中的所有文件并执行脚本,我也不知道如何正确导出它们,photoshop在尝试导出时停止。

这是我的代码:

// get a reference to the current (active) document and store it in a variable named "doc"
 doc = app.activeDocument;  

// change the color mode to RGB.  Important for resizing GIFs with indexed colors, to get better results
doc.changeMode(ChangeMode.RGB);  

// these are our values for the END RESULT width and height (in pixels) of our image
var fWidth = 250;
var fHeight = 300;

// do the resizing.  if height > width (portrait-mode) resize based on height.  otherwise, resize based on width
if (doc.height > 300) { doc.resizeImage(null,UnitValue(fHeight,"300"),null,ResampleMethod.BICUBIC); }
else if (doc.width > 250) {  doc.resizeImage(null,UnitValue(fWidth,"250"),null,ResampleMethod.BICUBIC); }


// Makes the default background white
var white = new SolidColor(); 
white.rgb.hexValue = "FFFFFF";
app.backgroundColor = white;

// Convert the canvas size as informed above for the END RESULT app.activeDocument.resizeCanvas(UnitValue(fWidth,"px"),UnitValue(fHeight,"px"));

// our web export options
var options = new ExportOptionsSaveForWeb();
options.quality = 70;
options.format = SaveDocumentType.JPEG;
options.optimized = true;

var newName = 'web-'+doc.name+'.jpg';

doc.exportDocument(File(doc.path+'/images/'+newName);

1 个答案:

答案 0 :(得分:1)

打开PDF文件有点困难。正如我几周前在我的请求中描述的那样: Photoshop JavaScript: options to open a PDF as smart object

我的workarround是使用一个动作(来自动作面板)打开文件(模态控制,设置有效的PDF渲染),并启动脚本。

您可以使用该操作导出为网络JPG。

如果您想使用该脚本,File需要一个完整的路径。

var destFile = new File ("~/Desktop/" + "web-" + doc.name + ".jpg");

还需要exportDocument的参数(非可选)。

doc.exportDocument(destFile, ExportType.SAVEFORWEB, options);