비트 맵이 있고 다각형으로 정의 된 특정 영역에 투명도를 적용하고 싶습니다. 그건 문제가 아니야. 현재 직면하고있는 문제는 폴리곤의 INVERTED 영역에 투명도를 적용하는 방법입니다. 나는 Bitmap.SetPixel()을 사용하여 시도했지만 매우 느리다. 다음은 정상적인 다각형에서 작동하는 현재의 메서드입니다.C# 다각형에 의해 정의 된 영역에 투명도를 설정하십시오.
public Bitmap Mask(Bitmap b, Point[] mask, bool invert)
{
Bitmap ret = new Bitmap(width, height, PixelFormat.Format32bppArgb);
Graphics g = Graphics.FromImage(ret);
g.Clear(Color.FromArgb(255,255,255,255));
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;
g.DrawImage(b, 0, 0, width, height);
g.CompositingMode = System.Drawing.Drawing2D.CompositingMode.SourceCopy;
g.FillPolygon(new SolidBrush(Color.Transparent), mask);
return ret;
}
다각형의 반전 된 영역 선택에 투명도를 적용하는 방법에 대한 문제를 해결하려고 시도 했습니까? 가지고 있다면, 당신이 무엇을 시도했는지, 왜 당신이 붙어 있는지 말해주십시오. 누군가에게 당신을 위해 무엇인가를 완전히 파악해 줄 것을 요구하는 것은 당신의 노력을 거의 나타내지 않고 응답을 얻지 못할 것입니다. – Zack