2014-03-12 82 views
0

我想使用掃描書籍的jpg文件製作某種圖書(或某種照片庫)。 用戶給出他想要去的頁面的號碼,然後點擊按鈕到 查看頁面。 我需要知道什麼是加載圖片的最佳方式。 我在想這樣做的每一頁:爲照片庫加載圖片的最佳方式

private ImageIcon image1= new ImageIcon ("1.jpg"); 
private ImageIcon image2 = new ImageIcon ("2.jpg"); 
.... 

,然後把圖片中的數組等等...... ,但我得到了500圖片,這是繁瑣加載這樣的頁面。 有沒有其他方法?

回答

1

嗯,我可以說最好的方式是延遲加載和預緩存。 延遲加載意味着只在用戶需要時加載圖像。例如:

img = 56; // suppose the user want to see page 56 
if(images[img] != null) { // images is an array with the images 
    images[img] = new ImageIcon (img + ".jpg"); 
} 

此外,您可以在客戶看到頁面時看到下一個頁面(預緩存)。所以你也可以加載下面的X頁面。

PRELOAD = 10; // number of pages to preload 
img = 56; 
for(int i = 0; i < PRELOAD; i++) { 
    if(images[img+i] != null) { 
    images[img+i] = new ImageIcon ((img + i) + ".jpg"); 
    } 
} 

此外,您可能會認爲,在開始時,用戶將始終看第一頁。因此,您可以在程序的開始部分預先加載第一個X頁面。