Stroke.GetBoundingBox 方法
命名空間: Microsoft.Ink
組件: Microsoft.Ink (在 Microsoft.Ink.dll 中)
語法
'宣告
Public Function GetBoundingBox As Rectangle
'用途
Dim instance As Stroke
Dim returnValue As Rectangle
returnValue = instance.GetBoundingBox()
public Rectangle GetBoundingBox()
public:
Rectangle GetBoundingBox()
public Rectangle GetBoundingBox()
public function GetBoundingBox() : Rectangle
傳回值
備註
週框 (英文) 位於「筆墨空間」座標中。
週框 (英文),會在顯示 Stroke 物件時,對應至要使之失效或重繪的顯示部份。
若週框方塊受到畫筆寬度的影響,那麼就會針對 Renderer 物件的檢視轉換適當縮放這個寬度。為了執行這項操作,畫筆寬度會乘以檢視轉換之行列式的平方根。
注意事項: |
---|
如果尚未明確設定畫筆寬度,則預設為 53。您必須將畫筆寬度乘以行列式的平方根,才能得出正確的週框方塊。週框方塊的高度和寬度會依這個數目的一半,朝各方向放大。例如,試想畫筆寬度為 53,行列式的平方根為 50,而且週框方塊為 (0, 0, 1000, 1000)。依據週框方塊朝各方向調整的畫筆寬度計算方式為 (53 * 50) / 2,右邊和底部則會加一。這樣會產生週框方塊 (-1325, -1325, 2326, 2326)。 |
注意事項: |
---|
這個方法傳回的週框 (英文),是 Stroke 物件週框方塊的複本。修改這個方法傳回的矩形 (英文),對於原始 Stroke 物件的週框方塊不會有任何影響。 |
範例
在這個範例中,會修改 InkOverlay 的每個已選取的 Stroke 物件。首先呼叫 GetBoundingBox 方法判斷所選取 Stroke 的週框。接著將產生的矩形寬度修改成原寬度的一半。然後呼叫 Clip 方法裁剪 Stroke 的右邊。
For Each S As Stroke In mInkOverlay.Selection
Dim sBounds As Rectangle = S.GetBoundingBox()
' decrease width by half
sBounds.Width -= sBounds.Width / 2
' clip the stroke
S.Clip(sBounds)
Next
foreach (Stroke S in mInkOverlay.Selection)
{
Rectangle sBounds = S.GetBoundingBox();
// decrease width by half
sBounds.Width -= sBounds.Width / 2;
// clip the stroke
S.Clip(sBounds);
}
平台
Windows Vista
.NET Framework 和 .NET Compact Framework 並不支援各種平台的所有版本。如需支援平台版本的相關資訊,請參閱 .NET Framework 系統需求。
版本資訊
.NET Framework
支援版本:3.0