中文字幕第五页-中文字幕第页-中文字幕韩国-中文字幕最新-国产尤物二区三区在线观看-国产尤物福利视频一区二区

C#中怎么實現不規則裁切圖片

本篇文章為大家展示了C#中怎么實現不規則裁切圖片,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

目前成都創新互聯公司已為近1000家的企業提供了網站建設、域名、虛擬主機、網站托管維護、企業網站設計、懷寧網站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協力一起成長,共同發展。

C#使用GDI+可以創建,修改圖片,創建圖片的bitmap,使用Graphics在圖片上勾畫元素,點、線、面等。

規則的圖片裁切,設置圖片的方形或者圓形的方式,就能直接進行圖片的裁切。裁切使用jpg保存,圖片的被裁切部分,會以白色的背景顯示,使用png才能設置圖片的透明度。

下邊介紹一種不規則的圖片裁切方式,當然不規則圖片都能裁切了,使用此種方式,也能進行規則圖片的裁切,作用的圖片格式為png,設置png圖片的像素點透明度。

C#的開發中,可以獲取和設置圖片上的每個像素的顏色值,在圖片的尺寸不太大的情況下,循環獲取每個像素的顏色,設置每個像素點的透明度,從而達到裁切圖片。

在圖片比較大的情況下,建議使用unsafe的方式,遍歷圖片的像素點,此方法在網上可以搜到,遍歷速度是按照普通方式遍歷的幾倍甚至幾十倍。

裁切開始,使用GraphicsPath新建裁切的不規則圖形,一般使用polygon,此對象中,需要把polygon的每個點都添加到GraphicsPath中,GraphicsPath中有IsVisible方法,根據遍歷循環的點,判斷點是否在

GraphicsPath中,設置當前點的是否可見即可。

PointF _pint1 = new PointF(1.0f, 1.0f);

PointF _pint2 = new PointF(600.0f, 200.0f);

PointF _pint3 = new PointF(200.0f, 500.0f);

PointF[] _pointArr = new PointF[] { _pint1, _pint2,  _pint4, _pint3 };

 GraphicsPath _gpath = new GraphicsPath();

 _gpath.AddPolygon(_pointArr);

在循環中,發現GraphicsPath的IsVisible方法,速度比較慢,這就聯系到GIS中一個簡單算法,判斷點是否在面里,其實按照地圖平面的算法方式,圖片的中像素點也是判斷是否在圖片的面中,所以,改進一下,寫一個C#的方式,參照互聯網上,如下代碼:

public bool IsVisible(System.Drawing.PointF p,

 List<System.Drawing.PointF> points)

        {

            int i, j = points.Count - 1;

            bool isVisible = false;

            for (i = 0; i < points.Count; i++)

            {

                if (points[i].Y < p.Y && points[j].Y >= p.Y

                    || points[j].Y < p.Y && points[i].Y >= p.Y)

                {

                    if (points[i].X + (p.Y - points[i].Y) / (points[j].Y - points[i].Y)

                        * (points[j].X - points[i].X) < p.X)

                    {

                        isVisible = !isVisible;

                    }

                }

                j = i;

            }

            return isVisible;

        }

上述內容就是C#中怎么實現不規則裁切圖片,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注創新互聯行業資訊頻道。

分享文章:C#中怎么實現不規則裁切圖片
標題網址:http://m.2m8n56k.cn/article6/jcgsog.html

成都網站建設公司_創新互聯,為您提供虛擬主機Google云服務器移動網站建設營銷型網站建設電子商務

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:[email protected]。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

綿陽服務器托管
主站蜘蛛池模板: 欧美二区视频 | 中文字幕一区二区三区有限公司 | 好看的看黄a大片爽爽影院 好男人天堂网 | 青青草国产免费一区二区 | 波多野结衣在线观看3人 | 草久在线观看 | 东莞a级毛片 | 亚洲国产日韩欧美高清片a 亚洲国产日韩欧美在线 | 久久福利青草精品免费 | 婷婷的久久五月综合先锋影音 | 亚洲国产成人久久综合一区77 | 欧美日韩精品一区二区三区高清视频 | 综合久久精品 | 免费在线黄色网址 | 一男一女的一级毛片 | 香港三级日本三级妇人三级 | 狠狠色丁香婷婷久久综合不卡 | 亚洲成成品网站有线 | 大香伊蕉国产短视频69 | 免费久久久久 | 亚洲欧美日本人成在线观看 | 欧美一级日韩一级 | 久久久久久免费播放一级毛片 | 又摸又揉又黄又爽的视频 | 巴西一级毛片 | 成人在线免费 | 美女啪啪网站又黄又免费 | 久草在线视频免费看 | 亚洲久草视频 | 久久久精品在线观看 | 精品国产三级v | 成人国产精品一级毛片视频 | 欧美日韩亚洲在线观看 | 日韩精品久久久免费观看夜色 | 国产精品毛片va一区二区三区 | 男人把女人桶到喷白浆的视频 | 成人免费a视频 | 国产人妖xxxx做受视频 | 一级特黄a视频 | 日本三级香港三级妇三 | 国外精品视频在线观看免费 |