2014-08-30 71 views
1

我有一個InkPresenter並且此圖像具有透明背景。我希望我的筆畫僅在透明區域繪製,並忽略形狀的黑色邊框。這怎麼可能? image to drawInkPresenter僅在透明區域繪製

+0

削減也許可以幫助你在這裏。你能分享一些示例代碼嗎? – pushpraj 2014-08-31 03:03:43

回答

0

我能解決我的使用不透明蒙版的問題:

<InkPresenter.OpacityMask> 
    <ImageBrush ImageSource="{Binding ImageMask}" /> 
</InkPresenter.OpacityMask> 
0

這裏是使用WPF的例子,同樣適用於InkPresenter,您可以使用InkPresenter.Clip屬性來定義剪輯區域

<Border BorderBrush="Green" 
     BorderThickness="1" 
     Width="200" 
     Height="200"> 
    <Grid> 
     <InkCanvas> 
      <InkCanvas.Clip> 
       <EllipseGeometry RadiusX="98" 
            RadiusY="98" 
            Center="100,100" /> 
      </InkCanvas.Clip> 
     </InkCanvas> 
     <Ellipse Stroke="Blue" 
       StrokeThickness="2" /> 
    </Grid> 
</Border> 

結果

result

+0

事情是,我想要根據圖像而不是形狀完成剪輯。我用OpacityMask解決了它。 – 2014-09-02 18:17:26

+1

很棒的發現!只要透明區域基於圖像,不透明蒙版就非常好。當需要可縮放的遮罩時,可以使用基於幾何圖形的剪輯。快樂編碼:) – pushpraj 2014-09-03 04:56:51