if(gh S& rect.strokeColor.constructor.name != 'Swatch' && ^ rect.strokeColor.colorValue.toString() = "0,0,0,100")
LatchObj ("Maybe ghost item", rect)
По ходу дела удаляем неиспользуемые образцы цвета. Помним о том, что любые операции удаления/добавления приводят к изменению их порядковых номеров (индексов), поэтому удаление проводим, начиная с самого последнего объекта. Если воспользоваться традиционным перебором
for (i=0; i<aD.unusedSwatches.length; i++)
мы пропустим некоторые объекты. Так, при удалении самого верхнего объекта (с индексом 0) самым верхним станет следующий объект (после удаления он получит индекс 0). В конце цикла счетчик i увеличится на единицу и укажет на объект с индексом 1 (unusedSwatches [1]), т. е. на объект, который из начально был третьим, в результате второй окажется пропущенным. Чтобы этого не было, начинаем с "хвоста":
for (i=aD.unusedSwatches.length-1; i>-1; i-){ aD.unusedSwat ches[i].remove() ;
}
Следующий вопрос- тип используемых красок: они должны быть цветоделимыми (process color). В случае неудачи перевода их в CMYK (это произойдет при попытке изменения цвета, содержащегося в присоединеннном EPS-файле), используем уже известную функцию Latchobjo, только в данном случае второй параметр (что выделять) установим в false, поскольку в InDesign выделять можно только физические объекты (листинг 11.9).
. Листинг 11.9. Проверка используемых красок
if(mySpotColor) {
for (i=0; i<aD.inks.length; i++){ if (!aD.inks[i].isProcessInk){
if (!aD.inks[i].convertToProcess)
LatchObj("Spot colors", false);
}
}
}
Настала очередь иллюстраций - как растровых, так и векторных. В первом случае (тип image) мы непосредственно в InDesign сможем определить их основные параметры - цветовую модель и разрешение. Как известно, иллюстрации существуют исключительно внутри собственных объектов InDesign - будь то прямоугольники, овалы или что-либо еще. Свойство effectivePpi определяет реальное разрешение растровой графики (с учетом всех проведенных трансформаций). Если же они проведены без сохранения пропорций, разрешения по горизонтали и вертикали будут разными, поэтому effectivePpi представляет собой массив из двух значений (разрешение по обоим направлениям). Пороговое значение myMinimalResoiution выбрано равным 250 ppi, что позволяет оставлять сюжетно интересные изображения, даже не обладающими идеальным качеством.
В случае, если разрешение картинки выше 300 ppi, путь к ней записывается в массив ResolutionArray для последующей записи в файл, который будет обрабатывать Photoshop (листинг 11.10).
Один нюанс связан с выделением изображений. Дело в том, что в отличие от собственных векторных объектов, никакие другие InDesign выделять не по зволяет (в том числе изображения), поэтому нам придется обращаться к их родителям (rectangle).
: Листинг 11.10. Проверка связанной графики
EPS_flag = false
for(i=0; i<aD.allGraphics.length; i++){ var myGraphic = aD.allGraphics[i]; if (myGraphic. name=' Image') ( if(myGraphic.space!="CMYK")