我想在Photoshop和Indesign中自动化流程

时间:2019-01-24 13:53:06

标签: automation adobe-indesign photoshop-script

我正在接收PNG文件,我想将其导入到photoshop中,将配置文件更改为CMYK,然后另存为tiff,然后将其导入到Indesign文件中,定位并创建可打印的高解析度PDF,可以你帮我做这个吗?

1 个答案:

答案 0 :(得分:0)

如果要自动执行该过程,则有两个选项:“操作”或“脚本”。 创建动作非常容易,因为您只需记录每个步骤的宏,例如将颜色模式从RGB更改为CMYK。但是,由于这是您在StackOverflow上提出的问题,所以我假设您想通过代码进行此操作。

您可以使用JavaScript,AppleScript或Visual Basic在Photoshop中编写脚本。 JavaScript是通用的,并且有据可查。

此脚本会将文件转换为CMYK,然后将其另存为TIFF,因此完成了一半的工作。但是,由于要声明需要“放置”图像,但是不包括任何特定细节或坐标,因此对于设计中的零件而言非常困难。另外,我面前没有您的文件。我可能还戴着眼罩。您可以在问题中添加的详细信息越多,其他人就越能帮助您。

我将逐步引导您完成代码。我希望这会有所帮助。

// Call the source document
// it makes it easier than typing app.activeDocument all the time
var srcDoc = app.activeDocument;

// Get the name of the current document 
var fileName = app.activeDocument.name;

// Call the function getFileName to remove the extension
var docName = getFileName(fileName);

// Set filePath and fileName to source path
var filePath = srcDoc.path + "/" + docName + ".tiff";

// Change the mode to CMKY
app.activeDocument.changeMode(ChangeMode.CMYK)

// Flatten the tiff
srcDoc.flatten();

// tiff file options
var tiffFile = new File(filePath);
tiffSaveOptions = new TiffSaveOptions();
tiffSaveOptions.byteOrder = ByteOrder.MACOS;
tiffSaveOptions.layers = false;
tiffSaveOptions.transparency = true;
tiffSaveOptions.alphaChannels = true;
tiffSaveOptions.embedColorProfile = false;
tiffSaveOptions.imageCompression = TIFFEncoding.TIFFLZW;
tiffSaveOptions.saveImagePyramid = false; 

// save the file out!
activeDocument.saveAs(tiffFile, tiffSaveOptions, false, Extension.LOWERCASE);


// get file name function
function getFileName(afilename)
{
  return afilename.substring(0, afilename.lastIndexOf("."))
}