iT邦幫忙

0

請問C# WinForm的背景圖片自動縮放

最近想要做個簡單的策略遊戲,
去網路上抓某地圖的圖片,
將圖片放在背景圖片,
並且用Stretch模式自動縮放,
打算照著邊線畫出區域,
目前區域是畫好了,
但是問題來了,
當我要縮放的時候,
我是用 目前視窗的寬度跟高度來做比例放大縮小

ScaleX = (double)this.Width / DesignWidth;
ScaleY = (double)this.Height / DesignHeight;

可是我發現背景圖片的縮放比例不大一樣,
就會造成如下圖的情況
https://ithelp.ithome.com.tw/upload/images/20180804/20105694I1xh0mXnS6.jpg
原來的地圖會跑一些出來,
如果X縮小那我畫的部分會凸出來,
不知道各位大大知不知道要如何去抓到背景圖片的縮放方式呢?
或是有建議用什麼樣的語言或引擎來寫這方面的程式,
麻煩各位大大幫忙解惑了,
/images/emoticon/emoticon41.gif/images/emoticon/emoticon41.gif/images/emoticon/emoticon41.gif

看更多先前的討論...收起先前的討論...
小魚 iT邦高手 1 級 ‧ 2018-08-04 10:33:40 檢舉
我發現另外一件奇怪的事情,
當我將視窗設成全螢幕的時候,
反而Width跟Height變少了...
Kevin iT邦新手 4 級 ‧ 2018-08-04 12:27:00 檢舉
如果真要寫遊戲opengl directx unity, 如果自己研究現在這樣應該就能了
Kevin iT邦新手 4 級 ‧ 2018-08-04 12:28:24 檢舉
我建議如果真的要這樣寫縮放都自己寫會比較好控制,因為有時候真的會被限制住或是無法按照自己想法執行
老話一句,把code放上來再說吧~
蠻牛 iT邦新手 5 級 ‧ 2018-08-04 17:48:09 檢舉
請改用 Zoom模式 就是您需要的模式
小魚 iT邦高手 1 級 ‧ 2018-08-04 19:59:43 檢舉
Zoom好像也不是,看來我還是學學Unity好了,
不過看書跟看網路的文章還是看不懂要怎麼開始使用...
Kevin iT邦新手 4 級 ‧ 2018-08-04 21:05:39 檢舉
youtube滿多實用的影片, 這是我之前看得但是上面那主要2D為主BOX和碰撞器等等, 下面那個影片就是一些事件, 其他就沒深入研究了
http://www.morningfungame.com/2017/05/unity-2d-character-movement-control-csharp.html
https://www.youtube.com/watch?v=ubPSb9FGOFE
小魚 iT邦高手 1 級 ‧ 2018-08-04 21:56:10 檢舉
好,謝謝
那原來的地圖是長怎麼樣?只看一張看不出來是發生什麼情況@_@

1 個回答

0
Homura
iT邦高手 1 級 ‧ 2018-08-06 11:44:35

話說你可以用GitHub的Electron專案做
這樣JS相關的函式庫都能用
還能跨平台/images/emoticon/emoticon07.gif
https://electronjs.org/

小魚 iT邦高手 1 級 ‧ 2018-08-06 11:57:33 檢舉

感謝您,
不過我是做單機的,
還是來研究一下Unity吧.
/images/emoticon/emoticon33.gif

Homura iT邦高手 1 級 ‧ 2018-08-06 13:32:59 檢舉

小魚
這也能單機的啊0.0
這是一個讓你能JS+CSS寫視窗程式的框架

我要發表回答

立即登入回答