1

我应该如何使用 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();
4

1 回答 1

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();
于 2012-09-17T15:13:40.330 回答