actionscript中的DisplayObject.getBounds返回包含笔划的对象边界。 JSFL中SymbolInstance的left,top,width,height属性似乎不包括笔划。这是我发现从JSFL获得符号边界的唯一方法。还有另一种方式吗?
答案 0 :(得分:2)
您正在寻找Edge
上的Shape
对象。 Edge
有一个Stroke
对象,其thickness
属性。
// This will show the selected shape's first edge's thickness:
fl.trace(fl.getDocumentDOM().selection[0].edges[0].stroke.thickness );
您必须遍历所有形状及其所有边缘以确定最终边界(如果您确信所有边缘都具有相同的厚度,请检查一个)。
答案 1 :(得分:0)
当获取对象的边界时,Strokes对JSFL的宽度为0。 我能想到的唯一方法是编辑符号,选择形状,以及其中之一 1.)获取笔划大小并将其值的1/2加到计算中,或者 2.)将笔划转换为填充(对于复杂的轮廓不可靠)
如果你只想包含笔画,但确切的大小并不重要,你可以随意在getBounds的结果中添加一些像素。