InDesign:使用脚本将页面转换为JPEG并将其放在同一页面上

时间:2012-09-16 21:18:46

标签: scripting flash-cs5 adobe-indesign

我应该如何使用CS5脚本将当前的InDesign页面转换为图像并将其放置在同一页面上。

我已经下载了参考资料,如果提供了几种使用方法的指示,我可以在此之后自己解决。

修改

  • 放回当前页面(如果您的页面正常编号)
  • 导出到当前用户的应用程序目录
var doc = app.activeDocument;

app.jpegExportPreferences.properties = {
   antiAlias: true,
   embedColorProfile: true,
   exportResolution: 150,
   // exportingSpread: true, // Uncomment if spreads
   jpegColorSpace: JpegColorSpaceEnum.rgb,
   jpegExportRange: ExportRangeOrAllPages.exportRange,
   jpegQuality: JPEGOptionsQuality.maximum,
   jpegRenderingStyle: JPEGOptionsFormat.baselineEncoding,
   useDocumentBleeds: false,
   simulateOverprint: false,
   pageString: app.activeWindow.activePage.name // Page(s) to export, must be a string
}

var userFolder = Folder ( Folder.userData.absoluteURI + "/Brilliant" );

if (!userFolder.exists) userFolder.create();

var tempFile = File(userFolder+"/page.jpg");

doc.exportFile(ExportFormat.jpg, tempFile);

var pageNumber = parseInt(app.activeWindow.activePage.name)-1?parseInt(app.activeWindow.activePage.name)-1:0;

var pageToPlace = doc.pages[pageNumber].place(tempFile);

tempFile.remove();

1 个答案:

答案 0 :(得分:1)

这是一个可能正在寻找你想要的样本。没有简单的方法可以将jpg直接保存在InDesign文档中,但是您可以将其导出到临时文件中,然后将其重新放入。您可能需要稍微调整一下以使事情正确,但是这样的事情应该做到特技。

var doc = app.activeDocument;

// Set JPEG export preferences
app.jpegExportPreferences.properties = {
   antiAlias: true,
   embedColorProfile: true,
   exportResolution: 150,
   // exportingSpread: true, // Uncomment if spreads
   jpegColorSpace: JpegColorSpaceEnum.rgb,
   jpegExportRange: ExportRangeOrAllPages.exportRange,
   jpegQuality: JPEGOptionsQuality.maximum,
   jpegRenderingStyle: JPEGOptionsFormat.baselineEncoding,
   useDocumentBleeds: false,
   simulateOverprint: false,
   pageString: "1" // Page(s) to export, must be a string
}

// Make a temporary file
var tempFile = File("/Users/home/Desktop/temp11111.jpg");

// Export an image of the page to disk
doc.exportFile(ExportFormat.jpg, tempFile);

// Place the page image back on the page
var pageToPlace = doc.pages[0].place(tempFile);

// Remove the temporary file from the disk
tempFile.remove();