[object Doc]А что, интересно, выдает alert(this); ?
То есть, батч документ, таки открывает, но для того, чтобы к нему доступ получить, надо переоткрыть? Воистину харекришна![object Doc]
Он то его открывает, но не в GUI, думаю оттуда ноги... Вот как гаишник работающий сверхурочно, он когда тебя тормозит, корочками помашет перед глазами, ты видишь что удостоверение вроде настоящее а вот фамилию прочитать не выходит.чтобы к нему доступ получить, надо переоткрыть?
Спасибо за информацию!И правда странно что не работает, впечатление что Action запускает скрипт и сразу закрывает файл, не давая скрипту отработать
Вот так получилось, только Action настроить на замену файлов (без переименования, все равно скрипт заменяет):
Код:var myDoc = app.openDoc(this.path); for (var i = 0; i < this.numPages; i++ ) { this.pageNum = i var annots = this.getAnnots(); for (var j = 0; j < annots.length; j++){ if (annots[j].author == "Author") annots[j].destroy(); } }; myDoc.saveAs(myDoc.path); myDoc.closeDoc();
В 9.0 выглядит так:Action настроить на замену файлов - это как, убрать операцию сохранения?
У меня сработало, что пишет в консоли дебагера?В любом случае (и с ней, и без нее) не работает.
У меня сработало, что пишет в консоли дебагера?
ReferenceError: myDoc is not defined
9:Batch:Exec
TypeError: annots is null
5:Batch:Exec
TypeError: annots is null
5:Batch:Exec
var myDoc = app.openDoc(this.path);
var annots = myDoc.getAnnots();
for (var j = 0; j < annots.length; j++){
if (annots[j].author == "Author") annots[j].destroy();
}
myDoc.saveAs(myDoc.path);
myDoc.closeDoc();
var myDoc = app.openDoc(this.path);
var annots = myDoc.getAnnots();
for (var j = annots.length-1; j >=0 ; j--){
if (annots[j].author == "Author") annots[j].destroy();
}
myDoc.saveAs(myDoc.path);
myDoc.closeDoc();
myDoc.closeDoc();
, запрос больше не выдает, файлы сохраняются, но все комменты на месте, в консоли вот такоеTypeError: annots is null
4:Batch:Exec
TypeError: annots is null
4:Batch:Exec
TypeError: annots is null
4:Batch:Exec
Ну и отлично, верните перебор страниц, она смотрит сейчас первые и на них просто нет искомых заметок. Почему только первые - загадка, но факт. У меня просто не закрывались документы самим батчем почему то, для того и добавилЕсли убрать последнюю строкуmyDoc.closeDoc();
, запрос больше не выдает, файлы сохраняются, но все комменты на месте, в консоли вот такое
Код:TypeError: annots is null 4:Batch:Exec TypeError: annots is null 4:Batch:Exec TypeError: annots is null 4:Batch:Exec
myDoc.closeDoc();
var myDoc = app.openDoc(this.path);
for (var i = 0; i < myDoc.numPages; i++ )
{
myDoc.pageNum = i
var annots = myDoc.getAnnots();
for (var j = annots.length-1; j >=0 ; j--){
if (annots[j].author == "Author") annots[j].destroy();
}
};
myDoc.saveAs(myDoc.path);
Да блин Надо над DC было измываться изначальноПоследний код не работает
А в консоли что?Последний код не работает, все комментарии на месте
TypeError: annots is null
6:Batch:Exec
TypeError: annots is null
6:Batch:Exec
TypeError: annots is null
6:Batch:Exec
var myDoc = app.openDoc(this.path);
for (var i = 0; i < myDoc.numPages; i++ )
{
var annots = myDoc.getAnnots({ nPage:i });
for (var j = annots.length-1; j >=0 ; j--){
if (annots[j].author == "Author") annots[j].destroy();
}
};
myDoc.saveAs(myDoc.path);
var myDoc = app.openDoc(this.path);
for (var i = 0; i < myDoc.numPages; i++ )
{
var annots = myDoc.getAnnots({ nPage:i });
if (annots)
{
console.println("Page: "+i+" annots: "+annots.length);
for (var j = annots.length-1; j >=0 ; j--){
if (annots[j].author == "Author") annots[j].destroy();
}
} else
console.println("Page: "+i+" no annots");
};
myDoc.saveAs(myDoc.path);