2011-02-06 29 views
2

許多相機現在將縮略圖放入其JPEG和RAW圖像中。 我希望能夠自動加載一些圖像,然後只顯示縮略圖,或者更好地自動加載縮略圖部分的速度。使用Javascript從JPEG中提取縮略圖?

有沒有辦法在Javascript中做到這一點?

謝謝。

+0

「autoload」是什麼意思?另外,你想在瀏覽器中做這個,還是作爲一個獨立的程序/過程? (JavaScript!=瀏覽器,所以我提出了這個問題;如果您使用的是NodeJS或Adobe AIR或...) – 2011-02-06 16:50:20

+0

通過自動加載我的意思是在呈現頁面之前加載縮略圖。這將在瀏覽器中。 – user577877 2011-02-06 16:53:35

回答

3

你說你想這樣做的瀏覽器,所以當你說:

...或更好,但只自動加載速度縮略圖部分。

您不會從這個客戶端獲得速度優勢,因爲必須首先下載整個圖像,然後才能爲其製作縮略圖。

可以只是通過創建img元素創建檢索到的圖像,縮略圖和設置其widthheight到更小的東西;瀏覽器默認的功能就是縮小圖像(不一定非常漂亮)。

例子:

var img = document.createElement('img'); 
img.src = "your image url here"; 
img.style.width = "32px";  // Change as appropriate 
img.style.height = "32px";  // Change as appropriate 
document.body.appendChild(img); // Or append to some other container element 

Live copy

還有我認爲這是apprpropriate到形象得到一定的寬度和高度(通常用縮略圖,它如果他們都非常有用相同的尺寸,雖然上面的內容會混淆縱橫比)。

如果你想調整一個百分比(比如25%),你可以做到這一點,但它更復雜:你必須創建圖像,將其加載到屏幕外(有多種方法可以做到這一點),等待負載完成,然後進行計算。


如果您運行的是服務器,您最好找一些可以預處理圖像併爲您創建縮略圖的設備。例如,ImageMagick可以幫助服務器端。