当前位置:编程学习 > C#/ASP.NET >>

C# 图层叠加 透明问题

最近在做一个项目,用到多图层的处理,大致是这样的需求:在最底下放一个图层放置背景图(建筑平面图),然后在上面可以添加删除多个图层(不规则图层)图层上有多个lable,图层可以编辑大小、颜色、形状、图层中lable的内容,听不明白的可以下个“物管王”、“包租婆”看一下就明白了。QQ:399206221 --------------------编程问答-------------------- 这里有一篇文章不知道合不合你的意思:http://www.cnblogs.com/jxsoft/archive/2011/03/09/1978153.html。如果是图片的话,我也不知道怎么做,不过我的项目是要求自己画图的,这样直接画图像不设定背景,拖出来看的时候背景就是透明的 。 --------------------编程问答-------------------- 除 --------------------编程问答--------------------
引用 1 楼 qq542369628 的回复:
这里有一篇文章不知道合不合你的意思:http://www.cnblogs.com/jxsoft/archive/2011/03/09/1978153.html。如果是图片的话,我也不知道怎么做,不过我的项目是要求自己画图的,这样直接画图像不设定背景,拖出来看的时候背景就是透明的 。


多谢!但是不是这种方法
--------------------编程问答--------------------
GDI+好象有透明色

--------------------编程问答-------------------- 画一个位图,去掉背景色(变透明)

            //新建一个bmp
            System.Drawing.Image bitmap = new System.Drawing.Bitmap(width, height);
            //获取绘画句柄
            System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bitmap);
            //设置高质量插值法
            g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;
            //设置高质量呈现平滑程度
            g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
            //清空画布并以透明背景色填充
            g.Clear(System.Drawing.Color.Transparent);

            //在指定位置并且按指定大小绘制图片的指定部分
            g.DrawImage(originalImage, new System.Drawing.Rectangle(0, 0, towidth, toheight),
                new System.Drawing.Rectangle(x, y, ow, oh),
                System.Drawing.GraphicsUnit.Pixel);
--------------------编程问答-------------------- 可能是我没说明白,我要的效果就像VS2010从工具箱拖控件Panel到Form里面,可以在panel中添加label,可以在panel的右下角进行拉大拉小,设置背景颜色,设置panel中label的text值,from里面可以拖多个一样的panel --------------------编程问答-------------------- 你可以看看Paint.net。最新的可能有难度,老的版本的应该可以找到
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,