2013-04-16 36 views
4

我需要在我的VB.net Web應用程序中水平翻轉位圖圖像。如何在.net web應用程序中水平翻轉圖像

enter image description here

我真的,四處搜尋,但在任何簡單的vb.net方法不來。有一個存在嗎?

+0

這是另一種相似,所以懷疑 http://stackoverflow.com/questions/14694205/flipping-an-image-with-js-jquery – Constanta

+0

參見http://stackoverflow.com/questions/5768998/how翻轉背景圖像使用css – nmat

+0

是的,我看了這兩個。但我需要通過vb.net翻轉我的圖像。 – Urbycoz

回答

2

您得到一個文件引用的圖像,加載爲Bitmap,然後使用RotateFlip方法。

http://msdn.microsoft.com/en-us/library/system.drawing.rotatefliptype.aspx?cs-save-lang=1&cs-lang=vb#code-snippet-2

如果鏈接死亡微軟經常被人稱做:

bitmap1 = CType(Bitmap.FromFile("C:\Documents and Settings\All Users\" _ 
     & "Documents\My Music\music.bmp"), Bitmap) 
    bitmap1.RotateFlip(RotateFlipType.RotateNoneFlipX) 

您可能感興趣的圖像類(位圖是圖片)。你可以執行幾乎任何天真的操作(比如這個),並且有很多方法可以使3D卡真的變得瘋狂。你可以把它做得很遠。不過,您需要學習圖形矩陣來執行自定義效果。

http://msdn.microsoft.com/en-us/library/k7e7b2kd.aspx

編輯

關於這一問題的音符表現評論可以在這裏的一個問題。根據像這樣的圖像被加載的頻率,你可能應該緩存這個結果,例如寫入磁盤並讓瀏覽器通過它寫出的路徑實際請求文件(這會讓你得到任何IIS緩存你已經免費配置了),或者通過向這裏調用的Controller Action應用OutputCache指令,或者其他任何東西 - 這都不屬於這個問題的範圍。

也只是爲了記錄翻轉圖像是相當便宜。

+0

謝謝。這是我正在尋找的方法。 「相當便宜」是什麼意思? – Urbycoz

+0

在CPU週期方面,它相當便宜 - 即在具有專用顯卡的機器上,GPU幾乎立即執行 - 大部分時間丟失只是將數據傳出和傳回。在沒有一個的機器上,他們通常內置了一個弱的GPU,即使如此,如果他們沒有使用底層Matrix來執行並行操作的硬件Vector操作。所以對這種緩慢的擔憂可能不是很有根據的,儘管我確實認爲性能分析總是明智的,正如良好的緩存策略一樣。 –