2013-07-03 183 views
0

我正在做和包含圖像庫的IOS和Android應用程序,我需要在垂直滾動條的底部顯示所有圖像大拇指。我的網站正在開發使用PHP,他們從網站創建了大拇指,但是它不能減少圖像尺寸。由於圖像尺寸過大,我的圖庫頁面崩潰。不縮小圖像大小的縮略圖圖像

我正在尋找一個很好的php或javascript庫,可以創建拇指和縮小圖像大小。

幫助是非常明顯的,

感謝, VKS。

+0

這可能不會回答原來的問題。但在android中,您還可以將圖像的大小減小到所需的尺寸。請參閱http://developer.android.com/reference/android/graphics/Bitmap.html#createScaledBitmap(android.graphics.Bitmap,int,int,boolean) –

+0

使用Jpeg壓縮,將大小減小到大約100x100,並且僅存儲每次10件物品,請再次申請額外物品。 –

回答

0

您可以試試這個: 其中path是手機上圖片的地址。

public Bitmap getImage(String path) { 
     BitmapFactory.Options options = new BitmapFactory.Options(); 
     options.inJustDecodeBounds = true; 
     BitmapFactory.decodeFile(path, options); 
     int srcWidth = options.outWidth; 
     int srcHeight = options.outHeight; 
     int[] newWH = new int[2]; 
     newWH[0] = srcWidth/2; 
     newWH[1] = (newWH[0] * srcHeight)/srcWidth; 

     int inSampleSize = 1; 
     while (srcWidth/2 >= newWH[0]) { 
      srcWidth /= 2; 
      srcHeight /= 2; 
      inSampleSize *= 2; 
     } 

     // float desiredScale = (float) newWH[0]/srcWidth; 
     // Decode with inSampleSize 
     options.inJustDecodeBounds = false; 
     options.inDither = false; 
     options.inSampleSize = inSampleSize; 
     options.inScaled = false; 
     options.inPreferredConfig = Bitmap.Config.ARGB_8888; 
     Bitmap sampledSrcBitmap = BitmapFactory.decodeFile(path, options); 
     Matrix matrix = new Matrix(); 

     int newh = (srcWidth * sampledSrcBitmap.getHeight()) 
       /sampledSrcBitmap.getWidth(); 
     Bitmap r = Bitmap.createScaledBitmap(sampledSrcBitmap, srcWidth, newh, 
       true); 
     Bitmap resizedBitmap = Bitmap.createBitmap(r, 0, 0, srcWidth, newh, 
       matrix, true); 

     return resizedBitmap; 
    }