2011-11-08 16 views
2

現在、ポリゴンを描画してからグラデーションで塗り潰そうとしています。問題は、グラデーションがシェイプの上端を上にして斜めにすることです。ここで私が何を話しているかを示すいくつかのxamlがあります。多角形の塗りつぶしグラデーションを作成するにはどうすればよいですか?

<Polygon Points="0,20 0,20 100,0 100,20"> 
     <Polygon.Fill> 
      <LinearGradientBrush EndPoint="1,0" StartPoint="0,1"> 
       <GradientStop Color="White" Offset="0" /> 
       <GradientStop Color="White" Offset="0.5" /> 
       <GradientStop Color="Black" Offset="0.5" /> 
      </LinearGradientBrush> 
     </Polygon.Fill> 
    </Polygon> 

このコードは、50%のマークで色が左に白、右が黒に分割されるため、良い例です。カットオフ線が三角形の頂点と斜めになっていることがわかります。あなたがコードを試してみることができない場合のための画像もあります。

Triangle

それは垂直カットオフと斜めにならないようにそれを作るための方法はありますか?

答えて

3

あなたは、開始点と終了点を変更する必要があります。

<... StartPoint="0,0.5" EndPoint="1,0.5" > 

は、上記の「中期左、最後半ば右から開始」に変換されます。

あなたのポイントは、「右下に開始し、左下に終了」と表示されます。

したがって、我々は、おそらくそうのように、周りにそれを交換するべきである:参考

<... StartPoint="1,0.5" EndPoint="0,0.5" > 

、さらに別の例は、check hereの要件を実証します。

+0

ありがとう、私はばかです。私は通常、グラデーションの開始と終了を手動で設定しません。ここで私はその三角形と何かを考えており、私はそれが勾配である可能性があることを完全に見落としています。 – thecaptain0220

関連する問題