如何在Photoshop中创建批处理作业,对图像(在图像上写文本)从1到100进行编号?


25

希望创建100张图像,并在上面写上适当的数字。

由于将来很有可能会更改模板,因此我认为最好以某种方式对其进行自动化。

有解决这个问题的简单方法吗?

Answers:


23

这取决于您如何定义“简单”。Photoshop具有内置的可变数据功能,但是记录的不够完善,被认为不适合进行礼貌对话,例如在鸡尾酒会或教堂社交场合。另一方面,自从我自己使用它已有多年了,因此构建本教程是一个很好的复习。

您将需要一个逗号分隔或制表符分隔的文件,并为每个变量指定一个名称(我将使用“ Image”和“ ImageNumber”)。这是我为此练习嘲笑的一个。请注意,图像文件名没有路径仅是因为它们与数据文件位于同一文件夹中。您可以使用相对或绝对路径作为文件名:

资料档案

您需要设置模板。假设您需要两层:图像(变量)和数字(文本层,变量)。图像层必须是实际层,而不是背景。

基本的Photoshop模板 层数

设置好这些之后,选择图像层,然后在Image > Variables > Define该对话框下(我选中了“像素替换”复选框,因为这是我们需要使用的复选框):

定义图像变量

将“名称”字段更改为所选的变量名称(“图像”),然后将“方法”设置为所需。我选择的是“填充”,它将按比例调整图像的大小,但是您可能会喜欢其他东西。将鼠标悬停在名称上时,有关每种方法的信息将显示在“描述”字段中。关闭对话框。

我们选择文本层并重复此过程,将文本变量命名为“ ImageNumber”。

定义文本变量

现在我们必须定义一个数据集,因此在对话框中单击“下一步”按钮,然后在对话框中单击“新建数据集”图标(在垃圾桶旁边)。

数据集对话框

数据集是适用于特定输出文档的值的集合,而不是用逗号分隔的文件中的完整值集,因此,现在我们通过单击“选择文件...”来为模板定义起始图像。选择的Image变量。我选择了菊花图像。确保未选择“请勿替换”。

选择的图像值

现在,我们必须使用“导入”对话框从逗号分隔的文件中导入数据集。

导入对话框

精疲力尽了吗? - 还有更多。单击“确定”关闭“变量”对话框。

最后一步是选择File > Export > Data Sets as Files...并选择一个保存输出的位置,以及您选择的命名约定。

导出对话框

当您单击确定时,整个psd文件集将被导出到您选择的位置。


我已经做到了这一点,但现在陷入了困境。当我导出文件时,我需要每个文件都具有与之关联的变量之一的值。似乎只能让我使用带有序号的有限选项,这对我需要做的事情没有好处。使用CS5或其他任何建议都将不胜感激。

太棒了!您为我节省了工作时间,谢谢艾伦。
MorganR 2015年

6

是的,它可以自动化。打开扩展脚本工具包。写

#target Photoshop
alert("Hello "+app.activeDocument.name+"!")

保存脚本并运行它,如果PS已打开并有文档,它现在应该会看到一个警告框。它只是JavaScript,您可以找到参考手册:

这是在文本图层中更改文本并保存的方法(添加保存位,因为有点棘手):

#target Photoshop

var textlayer = app.activeDocument.layers.getByName('Text');
textlayer.textItem.contents = 'foo';

var exportOptionsSaveForWeb = new ExportOptionsSaveForWeb();
exportOptionsSaveForWeb.format = SaveDocumentType.PNG;

var saveFile = new File("file:///c:/temp/test.png");
app.activeDocument.exportDocument(saveFile, ExportType.SAVEFORWEB, exportOptionsSaveForWeb);

这样我就不会为您做所有工作,您仍然需要在发布的代码周围放置一个for循环


请复制并粘贴到现有问题中
瑞安(Ryan

4

这是解决在创建图像自动添加数量中描述的问题的方法,该问题随着每次迭代的增加而增加

是的,这有点相似,但不是当前的问题,而是many -> many我的巫婆,one -> many并且有一些不同且更快的解决方案。

它去了:

  1. 打开一个图像,并添加Type我想要的所有样式的图层。
  2. 然后我去了

    Image > Variables > Define
  3. 设置Layer:为我的文本层的名称,选中复选框Text Replacement并给Text Replacement变量一些Name:(我已将其命名number)。然后按确定

  4. 打开一些电子表格编辑器,例如Excel,Numbers,Google Docs等…,并在第一栏中输入以下内容:

    1. 在第一行中,我写下了变量的名称(对我来说- number)。
    2. 在下面的第二行中,我输入1。有时要使第3步生效,您需要输入2第3行。
    3. 现在,使用标准电子表格自动完成功能,抓取其中具有1(或2)的单元格的右下角并向下拖动。这样,下面的所有单元格都应填充一个后续数字(我已经生成了多达99个序列)。
    4. 好的,您现在要做的就是将电子表格导出到CSV
  5. 现在你应该去

      Image > Variables > Data Sets

    选择Import…浏览CSV文件,然后单击确定。您还可以检查Preview按钮以查看图像在特定数据集(数字)下的外观。再一次单击确定以保存数据集。

  6. 最后,要获取所有包含不同内容的文件,请转到

    File > Export > Data Sets as Files

    选择目标文件夹,并确保All Data Sets选择了选项,因为这将为每个数据集生成一个文件,正是我们需要的。在同一窗口中,您还可以为导出的文件选择一个命名选项。然后单击确定 :)

  7. 这将生成一个psd文件,因此您需要以某种方式将它们转换为更简单的文件。这可以通过以下方式实现

    File > Scripts > Image Processor

    只需单击一下按钮,该脚本即可将大量psd图像转换成图像JPEG

另外,也许您会对下一本有关Photoshop变量的教程感兴趣:http : //layersmagazine.com/photoshop-variables.html


谢谢您提供的这一部分:“通过该脚本,您只需单击一下按钮,即可将许多psd图像转换为JPEG。” graphicdesign.stackexchange.com/a/4874/45239加上您的那句话是很大的帮助。
瑞安(Ryan)
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.