全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:3105
推到 Plurk!
推到 Facebook!

提高图像显示速度的方法

尚未結案
No_War
一般會員


發表:5
回覆:6
積分:2
註冊:2003-04-11

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-11-14 10:08:50 IP:218.18.xxx.xxx 未訂閱
各位大大,小弟想做个浏览图片的程式,用的方法就是ImageList+ListView 来显示缩略图,在图片不大,不多的情况下,显示速度还可以, 但是当图片很大,很多的时候,显示速度明显下降,让人有点无法接受 的那种速度, 我有试过用ACDSee等图片浏览的工具,他们在显示缩略图的时候, 速度很快,不知道他们是怎么做的?用的是什么方法来提高显示速度的? 如果不用ImageList+ListView的元件,用其他方法能提高显示速度吗? 如果可以提高,要怎么提高呢? 望指点指点,谢谢!!!!!
RedSnow
版主


發表:79
回覆:1322
積分:845
註冊:2003-12-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-11-14 18:22:38 IP:61.217.xxx.xxx 未訂閱
No_War 您好:    提高顯示縮略圖速度的方法很多,以下我依據個人的經驗與看法提供一些概念供您參考,其它的就需要您另外做些功課了:
  1. .BMP 之類的點陣圖檔並未做壓縮處理,因此它們的體積通常會較大,但是因為無需做解碼運算的處理,所以讀取時的速度會很快。
  2. 其它有做壓縮處理的圖檔中,JPEG、TIFF 這些圖檔可以含有 Exif 之類的附加資訊,而其中有些可能會包含了縮略圖在內,直接讀取這個 Exif 的縮略圖出來顯示,在處理速度上會快得多。
  3. BCB 的 TJPEGImage 提供有 Performance 屬性,設成 jpBestSpeed 代表讀取時著重於速度 (品質會稍差些,但是對做成縮圖的影響應該不大),另外有一個屬性是 Scale,遇到較大的圖檔時,將這個屬性設成 jsEighth (代表著讀取八分之一大小的圖檔內容,Scale 另有數個參數可選,可視需要來設定),這樣的速度也會很快。
  4. 您也可以運用一些技巧,將處於顯示區的圖像先顯示出來,其它的不處於顯示區域內的項目在背景逐一處理。
  5. 第一次讀取圖檔時,無論使用了何種技巧?最終仍需花點時間做檢查、讀檔、計算....等處理,因此仍需花費較多的時間,一但某個目錄的圖檔都讀取完畢,並且製作好縮略圖後,您可以將做好的縮略圖儲存到磁碟上做成 Cache 檔 (緩存檔),當您下一次執行程式或是切換到其它目錄後再切換回來時,就可以先檢查目錄內是否有自己做好的縮圖檔 (緩存檔)?如果有的話就直接讀取來顯示,這樣子的速度會達到最快的狀態。
  6. Windows 會對目錄內的圖檔製作成縮圖檔,您可以對這種縮圖檔的格式做個瞭解,然後直接讀取這個縮圖檔,這樣子也能有效的大幅度提高自己程式縮略圖的製作與顯示速度。
另外我也幫您找了些站上的相關討論如下,一併納入參考吧: 請問 檔案總管 介面 右鍵的 (縮圖功能) http://delphi.ktop.com.tw/topic.php?topic_id=45063 當滑鼠移到圖檔時如何秀出圖檔訊息 http://delphi.ktop.com.tw/topic.php?topic_id=75094 抓取jpg Exif資訊 http://delphi.ktop.com.tw/topic.php?topic_id=30252 自製的類似acd 功能跑太慢了 http://delphi.ktop.com.tw/topic.php?topic_id=35135 7 天天敲鍵盤 v 時時按滑鼠 8
No_War
一般會員


發表:5
回覆:6
積分:2
註冊:2003-04-11

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-11-21 11:13:20 IP:218.18.xxx.xxx 未訂閱
非常感谢RedSnow 大大的答复, 我会根据您提供的方法、资料和思路试着去做一下, 看看能否把速度提高一个等级,谢谢您,谢谢!!!!!
系統時間:2024-04-26 8:27:36
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!