2011-11-08 21 views
2

actionscript中的DisplayObject.getBounds返回包含筆畫的對象的邊界。 JSFL中SymbolInstance的left,top,width,height屬性似乎不包含筆劃。這是我發現從JSFL獲取符號範圍的唯一方法。有另一種方法嗎?如何獲得JSFL中符號的描邊?

回答

0

當涉及到獲取對象的邊界時,Strokes對JSFL的寬度爲0。 我能想到的唯一方法是編輯符號,選擇形狀,並且可以是1)獲取筆畫大小並將1/2的值加到您的計算中,或者2)將筆畫轉換爲填充(複雜輪廓線不可靠)

如果您只希望包含筆劃,但確切大小並不重要,則可以隨意在getBounds的結果中添加一些像素。

+0

我相信1只適用於中風是圍繞整個物體,而2因爲你給的原因而失敗。可悲的是,我確實需要精確的大小,因爲我試圖將符號導出到圖像並重新創建其在Flash外部的位置。謝謝你的嘗試! –

2

您在尋找Edge物品ShapeEdge有一個Stroke對象,該對象具有thickness屬性。

// This will show the selected shape's first edge's thickness: 
fl.trace(fl.getDocumentDOM().selection[0].edges[0].stroke.thickness); 

你將不得不遍歷所有的形狀和所有的邊緣,以確定最終邊界(如果你有信心,所有的邊緣具有相同的厚度,只需二選一)。

相關問題