RenderTransformOrigin使用說明 – [silverlight 開發]

來源:互聯網
上載者:User
文章目錄
  • 備忘:
RenderTransformOrigin:擷取或設定由 RenderTransform 聲明的任何可能呈現轉換的中心點,相對於元素的邊界。 這是一個依賴項屬性。 命名空間:  System.Windows
程式集:  PresentationCore(在 PresentationCore.dll 中)
用於 XAML 的 XMLNS:http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

  • 對象中心點:用來定義所有RenderTransform變換中相對位置的的參考點,預設為圖形的左上即(0,0),該屬性值為相對值,即x和y方向的(0-1)分別指以本圖形所在矩形(在Expression blend中可以看到 )的長和寬 為參照的百分比 ,該屬性以圖形所在矩形預設狀態下左上方為參考

  • 如:Roatetransform中的中心是相對於RenderTransformOrigin的,即在RenderTransformOrigin的基礎上進行疊加即得到絕對中心位置,其CenterX與CenterY易受ScaleTransform影響,如一矩形寬度為100,高度為200,要其繞中心旋轉,則其中心座標應為50,100. 倘若此時期ScaleTransform的ScaleX和ScaleY屬性別為1,2.(該種情況下與ScaleTransform中心點無關)則此時其高度變為原來2倍,即其中心變為50,100*2=200,計算公式:0.5*ScaleX*Width,0.5*ScaleY*Height(倘若不是取中心的情況則將0.5換為其他值)

使用 ScaleTransform 對象沿水平或垂直方向展開或收縮對象。ScaleX 屬性指定使對象沿 x 軸展開或收縮的量,ScaleY 屬性指定使對象沿 y 軸展開或收縮的量。縮放操作以 CenterX 和 CenterY 屬性指定的點為中心。

使用ScaleTransform之後左上方原始參考點的取得,Canvas.Left - CenterX/Width * (ScaleX - 1),Canvas.Top - CenterY/Height * (ScaleY - 1),TranslateTransform不受RenderTransform所定義的 相對位置影響(因為其本身為相對位置),也不影響TranslateTransform的作用.但他將影響與相對絕對參考點位置

備忘:

RenderTransformOrigin 以較為非標準的方式使用 Point 結構值,因為 Point 不表示座標系統中的絕對位置。 相反,0 和 1 之間的值被解釋為當前元素在每個 X 軸和 Y 軸上的範圍的因子。 例如,(0.5,0.5) 將使呈現轉換位於元素中心,而 (1,1) 會將呈現轉換置於元素的右下角。 NaN 不是一個接受的值。

也可以接受 0 和 1 以外的值,並且將導致更不尋常的轉換效果。 例如,如果將 RenderTransformOrigin 設為 (5,5),然後應用 RotateTransform,則旋轉點將位於元素自身邊界之外。 轉換將沿圓心遠在右下方的大圓旋轉元素。 原點可能位於其父元素的某處,並可能位於架構或視圖之外。 負點值與此類似,這將超出左上邊界。呈現轉換不影響布局,並且通常用於動畫處理或向元素應用臨時效果。

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.