/* * @Author: Vitaly Batushev * @E-Mail: vitaly@batushev.info * @Date: 2015-12-07 02:43:24 * @Last Modified by: Vitaly Batushev * @Last Modified time: 2016-03-19 22:08:54 * @ScriptName RecoveryINDD * @Version 1.8 * @Description Скрипт для "лечения" или уменьшения размера публикации Adobe InDesign. */ var RecoveryINDD = (function(){ var strings = { select: "Выберите файл для исправлени", questions: { repair: "Исправить активную публикацию?", open: "Открыть улучшенную публикацию?", } } var main = function() { var mySourceFile; if (app.documents.length == 0) { mySourceFile = File.openDialog(strings.select, "*.INDD"); if (mySourceFile === null) { exit(); } } else { var rst = confirm(strings.questions.repair, false, "Recovery INDD"); if (rst == true) { mySourceFile = new File(app.activeDocument.fullName); app.activeDocument.close(SaveOptions.NO); } else { var mySourceFile = File.openDialog(strings.select, "*.INDD"); if (mySourceFile === null) { exit(); } } } var idmlFile = new File(mySourceFile.path + "/temp.idml"); var backName = File(mySourceFile.absoluteURI + ".bak"); var myDoc = app.open(mySourceFile, false); myDoc.exportFile(ExportFormat.INDESIGN_MARKUP, idmlFile); myDoc.close(SaveOptions.NO); mySourceFile.copy(backName); var newDoc = app.open(idmlFile, false); newDoc.close(SaveOptions.YES, mySourceFile); idmlFile.remove(); if (confirm(strings.questions.open, false, "Recovery INDD")) { app.open(mySourceFile, true); } } return { run: main } })(); RecoveryINDD.run();