2

私はただの円である楕円を持っています。私の問題は、大きな円の真ん中から円の形の穴を切り取りたいのですが、何もうまくいかないようです. 不透明マスクを試してみましたが、まったく機能しませんでした。

さらに複雑なことに、大きな円には DropShadowEffect があります。しかし、円がわずかに透明であるため、背後に大きな影の円が見えます。これは実際にはモックアップがどのように見えるかではなく、円がどれほど透明であっても、円の端の周りにのみ影を表示する方法があるかどうか疑問に思っています.

ありがとう!

4

2 に答える 2

5

たとえば、次のようにします。

<Canvas>
<Path Stroke="Black">
  <Path.Data>
    <CombinedGeometry GeometryCombineMode="Exclude">
      <CombinedGeometry.Geometry1>
        <EllipseGeometry Center="100,100" RadiusX="100" RadiusY="100"></EllipseGeometry>
      </CombinedGeometry.Geometry1>
      <CombinedGeometry.Geometry2>
        <EllipseGeometry Center="100,100" RadiusX="80" RadiusY="80"></EllipseGeometry>
      </CombinedGeometry.Geometry2>
    </CombinedGeometry>
  </Path.Data>
</Path>
</Canvas>

影の場合:これも解決する必要があります。結果として得られるオブジェクト、実際には不透明度だけではなく、全体が含まれる円になるためです-「トリック」

于 2009-04-12T01:44:06.917 に答える
1

Ellipse を使用する代わりに、Path を使用し、Exclude GeometryCombineMode を使用して Path.Data を 2 つの楕円で構成される CombinedGeometry にします。

于 2009-04-11T23:47:59.347 に答える