0

VS 2013 プレビューでサンプルコードを作成し、キャンバス内に白のストロークカラーで線を引いたのですが、線が白ではなく太く見える(グレーに近い)のが変です。同じサンプルをVS 2010で試してみたところ、うまく出力されました。

何が起こっているのか誰か教えてくれませんか...?

<Canvas Width="200" Height="200" Background="Black">
    <Line X1="30" Y1="60" X2="90" Y2="60" Stroke="White" StrokeThickness="1"/>
    <Line X1="60" Y1="30" X2="60" Y2="90" Stroke="White" StrokeThickness="1"/>
</Canvas>

ここに画像の説明を入力

ここに画像の説明を入力

//編集して、線の太さを2以上に変更すると、完全に白く表示されますが、太さは2です。

4

3 に答える 3

1

これは私たちの古くからの友人である Pixel Snapping です。WPF は、同様のテクノロジを使用して、ClearType線がピクセル境界に達したときに線を描画します。これはあなたが見ているものです。VS のバージョン間で変更される可能性がある理由は、別の場所でキャンバスを開始できるためです。

Dave Relyea は、まさにこれらの問題を解決するクールな Pixel Snapping Controlを持っています。

彼のコントロールは Silverlight 用に作成されたので、WPF 用に変更UserControlします。Decoratorすべての参照を からContentに変更するだけChildです。ControlTemplateそうすれば、他の誰かから適用されることを心配する必要はありません。

于 2013-07-03T14:11:19.633 に答える
0

0.5 ピクセル下に移動してみてください。

于 2013-07-05T08:39:25.630 に答える