我有一个自定义模板,我想以某种方式获取ContentPresenter
的输出(想象它作为位图),现在从该位图剥离RGB(因此只保留alpha通道),然后设置RGB on每个像素为白色(保留alpha通道)。那你怎么做的呢?
答案 0 :(得分:2)
如果它需要是“实时”效果,我会在ContentPresenter上使用PixelShader +效果。
请参阅Shazzam tool以轻松创建效果和PixelShader的来源。
sampler2D Texture1Sampler : register(S0);
//-----------------
// Pixel Shader
//-----------------
float4 main(float2 uv : TEXCOORD) : COLOR
{
float4 color = tex2D( Texture1Sampler, uv );
float4 alphaMaskColor = float4(color.a,color.a,color.a,color.a); //Pre-multiplied Alpha in WPF
return alphaMaskColor;
}