InDesign Server - 将所有资产转换为CMYK?

时间:2015-03-31 08:18:07

标签: javascript indesign-server

我们有一个InDesign Server服务,可根据用户输入更改文档中的文本,图像,颜色等。完成后,它会输出INDD包(压缩目录)或PDF。

我们的一个客户要求所有输出都是CMYK,根据他们自己的.icc颜色配置文件。我可以让IDS将颜色配置文件附加到文件没问题,如下所示:

// Set CMYK profile
if(inputs['cmyk_profile'] !== undefined && inputs['cmyk_profile']) {
  app.colorSettings.cmykPolicy = ColorSettingsPolicy.PRESERVE_EMBEDDED_PROFILES;
  document.cmykPolicy = ColorSettingsPolicy.PRESERVE_EMBEDDED_PROFILES;
  document.cmykProfile = inputs['cmyk_profile'];
  //document.printPreferences.colorOutput = ColorOutputModes.COMPOSITE_CMYK;
}
但是,我承认,我是一个新手,而PRESERVE_EMBEDDED_PROFILES行只是对我认为应该发生的事情的模糊猜测。我也无法让最后一个注释掉的行生效,因为它会抛出错误:“无效的参数”。根据文档,这个实例变量“在指定与设备无关的PPD时无效”,尽管我不明白为什么不这样做。

我的主要问题是用户输入的图像和颜色可以是RGB格式,并且需要在特定的颜色配置文件中将它们转换为CMYK。 (我被告知只需将配置文件添加到文件中是不够的 - 我也必须转换资产)

我也试图在转换为PDF时强制执行CMYK,如下所示:

// Set CMYK if document has it
if(document.cmykPolicy)
{
  app.pdfExportPreferences.pdfDestinationProfile = PDFProfileSelector.USE_DOCUMENT;
  app.pdfExportPreferences.pdfColorSpace = PDFColorSpace.CMYK;
}
else
{
  app.pdfExportPreferences.pdfColorSpace = PDFColorSpace.UNCHANGED_COLOR_SPACE;
}

// export pdf...
document.exportFile(ExportFormat.pdfType, myFile, preset);

但我被告知生成的PDF文件也是RGB。

有没有相对无痛的方法呢?

0 个答案:

没有答案