2010-02-14 54 views
2

我画与JSFL方法FLSH ID数字,例如填充图形与JSFL

// draw rectangle 
doc.addNewLine({x:0, y:0}, {x:2000, y:0}); 
doc.addNewLine({x:2000, y:0}, {x:2000, y:500}); 
doc.addNewLine({x:2000, y:500}, {x:0, y:500}); 
doc.addNewLine({x:0, y:500}, {x:0, y:0}); 
// how can I fill it, because this way doesn't work 
doc.setFillColor('#0000ff'); 

回答

1

试试这个:

var doc = fl.getDocumentDOM(); 
// draw rectangle 
doc.addNewLine({x:0, y:0}, {x:2000, y:0}); 
doc.addNewLine({x:2000, y:0}, {x:2000, y:500}); 
doc.addNewLine({x:2000, y:500}, {x:0, y:500}); 
doc.addNewLine({x:0, y:500}, {x:0, y:0}); 
//fill 
fl.getDocumentDOM().selectAll(); 
fl.getDocumentDOM().union(); 

var fillA = fl.getDocumentDOM().getCustomFill(); 
fillA.style = 'radialGradient'; 
fl.getDocumentDOM().setCustomFill(fillA); 

var fillB = fl.getDocumentDOM().getCustomFill(); 
fillB.style = "solid"; 
fillB.color = 0x0000FF; 
fl.getDocumentDOM().setCustomFill(fillB); 

学分真正去基督教Guirreri,不是我。 这里是完整的jsfl article

1

另一种方法,我发现有用的填补舞台上的形状。这合并您的矩形形状和“#0000FF”颜色:

// Create Rectangle With Fill - Andrew Doll 

var dom = fl.getDocumentDOM(); 
if (dom == null) 
{ 
    alert('Please open a file.'); 
} 
else 
{ 
    // Declare variables. 
    var tl = dom.getTimeline(); 
    var curLayer = tl.currentLayer; 
    var curFrame = tl.currentFrame; 
    var lockStatus = tl.layers[curLayer].locked; 
    var myElements = tl.layers[curLayer].frames[0].elements; 

    if (lockStatus) 
    { 
     alert('Unlock the layer.'); 
    } 
    else 
    { 
     // Draw rectangle. 
     dom.addNewLine({x:0, y:0}, {x:2000, y:0}); 
     dom.addNewLine({x:2000, y:0}, {x:2000, y:500}); 
     dom.addNewLine({x:2000, y:500}, {x:0, y:500}); 
     dom.addNewLine({x:0, y:500}, {x:0, y:0}); 

     // Sets the current layer as selected. 
     tl.setSelectedLayers(curLayer); 
     tl.setSelectedFrames(0, 0, true); 

     // Checks to see if there is artwork selected. 
     var mySelectedFrames = tl.getSelectedFrames(); 

     // Selects current frame. 
     tl.setSelectedFrames(curFrame, curFrame, true); 

     // Sets the fill color for the inside of the object. 
     var insideContour = dom.selection[0].contours[0]; 
     var insideFill = insideContour.fill; 
     insideFill.color = '#0000ff'; 
     dom.setFillColor('#0000ff'); 
     dom.selectNone(); 
    } 
}