JSFL setCustomStroke не работает с stroke.style = "noStroke" - PullRequest
1 голос
/ 02 февраля 2011

Так что я возился с JSFL, и я хотел выставить Storke на None.Это должно быть сделано так:

var stroke = fl.getDocumentDOM().getCustomStroke("toolbar");
stroke.style = "noStroke";
fl.getDocumentDOM().setCustomStroke(stroke);

Но это НЕ работает.

Выполнение соответствующей операции с использованием заливок!(У меня не было никаких проблем с заливками!)

Если я вручную установлю storke на «Нет» на панели инструментов (используя палитру цветов), а затем выполню это:*

Я получаю твердый удар со значением aRGB: 00 00 00 00 (0 альфа, 0 красный, 0 зеленый, 0 синий).(Что обычно невозможно с помощью панели инструментов цвета)

Если я выполню эту команду еще раз, я получу правильный цвет обводки!(Это также работает, если у меня есть нормальный сплошной цвет. Если обводка является градиентом или растровым изображением, ничего не происходит.)ТОЛЬКО удары.

Ответы [ 3 ]

3 голосов
/ 26 февраля 2011

Я также сталкивался с этой ошибкой, которая не позволяет вам установить "noStroke". Я нашел обходной путь, хотя. Поменяйте местами обводку и заливку, затем установите заливку на «noFill» и поменяйте местами назад. Вот так:

var dom = fl.getDocumentDOM();
dom.swapStrokeAndFill();
var tempFill = dom.getCustomFill("toolbar");
tempFill.style = "noFill";
dom.setCustomFill(tempFill);
dom.swapStrokeAndFill();
1 голос
/ 19 ноября 2012

Кажется, что setCustomStroke (mystroke) устанавливает значение обводки равным none только тогда, когда mystroke.style="solid" и других свойств нет. Вам не нужно получать mystroke, используя getCustomStroke. Это может быть общий объект с одним атрибутом style, установленным на solid.

var mystroke=new Object();
mystroke.style="solid";
fl.getDocumentDOM().setCustomStroke(mystroke);
1 голос
/ 13 сентября 2012

На самом деле вы можете установить значение «ноль», и оно будет устанавливать цвет без цвета.

...