歡迎光臨 pure C# 技術社群. 登入註冊

pure C# 技術社群

- Microsoft .NET Framework 相關技術非官方討論社群 -

如何建立與檔案總管顯示圖片時,一樣的縮圖效果!!

  • 1
  • 2
  • [第1/2頁 共13項]
#1

如何建立與檔案總管顯示圖片時,一樣的縮圖效果!!

  • a
 0.0 (0 人評價)
我目前用Imagelist存放要顯示的圖片,但Imagelist的大小的限制,導致顯示的圖片依據此大小顯示,讓顯示的品質並不是很好,請問我要如何才能做到跟檔案總管縮圖一樣的效果,我看很多下載相簿程式的ap都有實作出來,請各位先進幫個忙

  • 回覆
  • |
  • 引用
  • |
  • 編輯
  • |
  • 私人訊息


贊助商連結

#2

Re: 如何建立與檔案總管顯示圖片時,一樣的縮圖效果!!

  • a
 0.0 (0 人評價)
一種方式就是先用Photoshop把圖片縮小到剛好你要顯示的大小
這樣就不會因為像素不整除而感覺圖片有點怪怪的
另一種方式就是用icon格式的圖片
icon可以同時儲存好幾個size的版本再同一個檔案
假設你一個圖片儲存有16x16 32x32 48x48三種size
Imagelist中可以依需求把ImageSize屬性設定為要顯示的size
這樣就可以避免因圖片縮放而產變型

  • 回覆
  • |
  • 引用
  • |
  • 編輯
  • |
  • 私人訊息

#3

Re: 如何建立與檔案總管顯示圖片時,一樣的縮圖效果!!

  • a
 0.0 (0 人評價)
Imagelist並不是用來做相簿程式的
其實Imagelist的運用比較像是早期的Application Resouse
也就是把程式所要用到的圖示預先存在應用程式裡這樣發佈程式的時後就只需要一個執行檔
不用連同一堆程式裡的小圖示一起發佈

老闆, 請給我提神用的細肩帶小女孩不加辣, 謝謝
  • 回覆
  • |
  • 引用
  • |
  • 編輯
  • |
  • 私人訊息

#4

Re: 如何建立與檔案總管顯示圖片時,一樣的縮圖效果!!

  • a
 0.0 (0 人評價)
感謝million大大的回答但我是希望用listview預覽圖片時,圖片能等比例縮圖,不用imagelist還有別的做法嗎?一般相簿下載的ap,不是用listview+imagelist做預覽的顯示嗎

  • 回覆
  • |
  • 引用
  • |
  • 編輯
  • |
  • 私人訊息

#5

Re: 如何建立與檔案總管顯示圖片時,一樣的縮圖效果!!

  • a
 0.0 (0 人評價)
要做到相簿程式的效果還是用Image物件比較好
因為圖片來源是在runtime才由程式讀入
這是我在網路上找到的產生縮圖函式
原本這是用在asp.net網頁動態產生縮圖用的
你可以試試修改成不要存成實體圖檔
直接在記憶體裡顯示圖片



  • 回覆
  • |
  • 引用
  • |
  • 編輯
  • |
  • 私人訊息

#6

Re: 如何建立與檔案總管顯示圖片時,一樣的縮圖效果!!

  • a
 0.0 (0 人評價)
諸葛亮你所提供的函式我有測試過了(使用cut方法),但最後還是會把imagelist所設的大小,填滿影像,顯示的品質是有改善,跟我後來用GetThumbNailImage方法處理過的縮圖存入ImageList,再交由listview來顯示,效果差不多,但缺點就是圖片太小的話,品質還是不優 以下連結是我程式拍下來的畫面http://www.wretch.cc/album/show.php?i=bigdstut&b=6&f=1132219245&p=16 有空就看一下吧還是感謝各位提供的方法,不過還是希望做到跟檔案總管的縮圖一樣完美呀><卡關~

  • 回覆
  • |
  • 引用
  • |
  • 編輯
  • |
  • 私人訊息

#7

Re: 如何建立與檔案總管顯示圖片時,一樣的縮圖效果!!

  • a
 0.0 (0 人評價)
你把處理過的圖片又放到ImageList那跟一開始就把原圖放到ImageList不是一樣嗎
你應該用別種方式來顯示已經縮小過的圖片
比如動態產生PictureBox並且一格一格排列然後將縮圖用PictureBox顯示
如果希望程式能快速處理圖片也可以直接操作GDI+讓圖片"畫"在一個panel上
其實寫程式要做到某種功能方法有百百種但要看需求而訂
ImageList 也是一種方法只是因為圖片品質嚴重破壞不能符合你的需求

  • 回覆
  • |
  • 引用
  • |
  • 編輯
  • |
  • 私人訊息


贊助商連結

#8

Re: 如何建立與檔案總管顯示圖片時,一樣的縮圖效果!!

  • a
 0.0 (0 人評價)
我覺得重點是在於Imagelist會自動把圖片縮小或放大成設定的大小
所以如果你給Imagelist的圖片大小不等於ImageSize屬性就會變型
換句話說如果給Imagelist的圖片剛好是ImageSize屬性的大小就不會變型
那麼可以先把問題簡化一下

「如何不論原圖片是多大或多小都產生固定大小的圖片」

前面的函式已經可以處理太大的圖片
現在只剩下太小的圖片要怎麼處理的問題了 (放大?? 不放大但是圖片周圍填上白色背景??)


  • 回覆
  • |
  • 引用
  • |
  • 編輯
  • |
  • 私人訊息
  • 1
  • 2
  • [第1/2頁 共13項]