Re: [程式] 如何做到真正的透明色 by vb.net?
※ 引述《GoodTauSo (Do live Loop)》之銘言:
: 歹勢,我在把問題描述詳細一點,
: 這次我google了一隻瑪莉歐,
: 首先我用photoimpact存成gif,並設定透明色,如下圖
: http://www.wretch.cc/album/show.php?i=kensirom&b=11&f=1208290598&p=5
: 接著我用了兩個picturebox分別代表兩個角色,
: 使用transparent屬性分別將兩個控制項背景變成透明,語法如下
: PictureBox1.BackColor = System.Drawing.Color.Transparent
: PictureBox2.BackColor = System.Drawing.Color.Transparent
: 執行效果如下,兩隻瑪莉歐的背景變透明了
: http://www.wretch.cc/album/show.php?i=kensirom&b=11&f=1208290597&p=4
: 後來發現,其實它的透明只是去截取背景圖來補欲透明的顏色,不是真正透明
: 只要兩個角色一接近,就破功了
: http://www.wretch.cc/album/show.php?i=kensirom&b=11&f=1208290595&p=2
: 實際上我想要的效果應該是這樣
: http://www.wretch.cc/album/show.php?i=kensirom&b=11&f=1208290596&p=3
: 這樣角色之間才能互動(攻擊,聊天,交易等...)
: 要如何做到真正的透明呢?
: 工具:VB.NET 2008
本來想用推文的 發現會寫一堆XD..
最近剛好有在用c#寫editor 所以有用到這些東西
我直接說我的作法好了.. 先擺1個picturebox到form上面去
在form的建構式裡面或form_load之類的function寫:
picturebox.clientsize = new size(你的視窗大小)
這樣 你的picturebox就跟視窗一樣大了
接著寫picturebox.image = new bitmap(picturebox.clientsize)
之後我們畫圖都是畫到這個bitmap上面去
再來把會用到的圖都讀進來
bitmap mariobitmap = new bitmap("mario.gif");
bitmap background = new bitmap("bg.png");
最後宣告一個Graphics物件
Graphics g = Graphics.FromImage(picturebox.image);
g.Clear();
畫圖的時候 考慮誰要蓋誰 先畫的會被蓋 所以先畫底圖
人物的話就看程式先處理誰就先畫誰
g.DrawImage(background, .....);
g.DrawImage(mariobitmap, .....);
g.DrawImage(mariobitmap, .....);
大致上就這樣
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.204.203.198
→
04/19 20:39, , 1F
04/19 20:39, 1F
推
04/20 10:39, , 2F
04/20 10:39, 2F
推
04/20 17:56, , 3F
04/20 17:56, 3F
→
04/20 18:00, , 4F
04/20 18:00, 4F
推
04/20 18:03, , 5F
04/20 18:03, 5F
→
04/20 18:04, , 6F
04/20 18:04, 6F
→
04/20 18:05, , 7F
04/20 18:05, 7F
→
04/20 18:06, , 8F
04/20 18:06, 8F
→
04/20 18:06, , 9F
04/20 18:06, 9F
→
04/20 19:29, , 10F
04/20 19:29, 10F
→
04/20 19:29, , 11F
04/20 19:29, 11F
→
04/20 19:30, , 12F
04/20 19:30, 12F
→
04/20 19:31, , 13F
04/20 19:31, 13F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
GameDesign 近期熱門文章
PTT遊戲區 即時熱門文章
9
12