7,765
社区成员
发帖
与我相关
我的任务
分享
''' <summary>
''' 将有半透明效果的颜色转成没有半透明的颜色
''' </summary>
''' <param name="backcolor">背景色,一般为白色 Color.White</param>
''' <param name="alphacolor">带alpha的颜色</param>
''' <returns></returns>
''' <remarks></remarks>
Protected Friend Shared Function Alpha2Color(backcolor As Color, alphacolor As Color) As Color
Using bmp As New Bitmap(1, 1)
Using g As Graphics = Graphics.FromImage(bmp)
g.Clear(backcolor)
Using br As New SolidBrush(alphacolor)
g.FillRectangle(br, New Rectangle(0, 0, 1, 1))
End Using
End Using
Return bmp.GetPixel(0, 0)
End Using
End Function
/// <summary>
/// 将有半透明效果的颜色转成没有半透明的颜色
/// </summary>
/// <param name="backcolor">背景色,一般为白色 Color.White</param>
/// <param name="alphacolor">带alpha的颜色</param>
/// <returns></returns>
/// <remarks></remarks>
protected static internal Color Alpha2Color(Color backcolor, Color alphacolor)
{
using (Bitmap bmp = new Bitmap(1, 1)) {
using (Graphics g = Graphics.FromImage(bmp)) {
g.Clear(backcolor);
using (SolidBrush br = new SolidBrush(alphacolor)) {
g.FillRectangle(br, new Rectangle(0, 0, 1, 1));
}
}
return bmp.GetPixel(0, 0);
}
}