Хороший вопрос!
Глядя на объект Document в документах JSFL, я вижу единственный способ получить обводку - это раздражает document.getCustomStroke (). В идеале, объект Shape будет хранить информацию об обводке и заливке, но это не так: (
Я пытался контролировать выборку с помощью массивов:
var doc = fl.getDocumentDOM();
doc.selectAll();
var s = new Array().concat(doc.selection);
var sl = s.length;
doc.selectNone();
for(var i = 0; i < sl ; i++){
doc.selection = s[i];
stroke = doc.getCustomStroke('selection')
fl.trace(stroke.color)
}
Это не сработало.
Затем я попытался выбрать каждый объект, используя
doc.mouseClick({x:s[i].x, y:s[i].y}, false, false);
но это не очень полезно, поскольку заметки могут принимать любую форму,
поэтому щелчок в верхнем левом углу заметки может быть пропущен
выбор.
Цикл по каждому пикселю только для того, чтобы получить выделение, не сработает.
Короткий ответ не потому, что единственный способ получить цвет обводки
через выбор документа.
Однако есть несколько обходных путей:
В IDE используйте «Найти и заменить», выберите «Цвет вместо текста»
и замените цвет заметки на что-нибудь прозрачное. к несчастью
это не так уж много решений. Он будет просто скрывать заметки, а не удалять их.
flash найти и заменить http://www.sonic.net/mnitepub/pccafe/reviews/macromedia_flash_mx2004/find_and_replace.gif
Упростите получение заметок из jsfl: Поместите все заметки в текущий
Временная шкала в одном слое и дать ему внушительное имя, скажем «_notes», а затем просто
удалить этот слой.
* * Например, тысяча двадцать восемь
var doc = fl.getDocumentDOM();
if(!doc) alert('Pardon me! There is no document open to work with.');
fl.trace(deleteLayerByName('_notes'))
/*Returns true if the layer was found and deleted, otherwise returns false*/
function deleteLayerByName(name){
var timeline = doc.getTimeline();
var frame = timeline.currentFrame;
var layers = timeline.layers;
var layersNum = layers.length;
for(var i = 0 ; i < layersNum; i++){
if(layers[i].name == name){
timeline.deleteLayer(i)
return true;
}
}
return false;
}
Надеюсь, кто-нибудь может предложить хороший способ выбора объектов по цвету в jsfl. В IDE можно сделать несколько вещей, но не может сделать их из JSFL : (
НТН