2016-08-22 6 views
1

以下のコードでimgの高さと幅を制限します(ギャラリーから画像を取得してアップロードします)。幅と高さではなく、1MBのみ)。 1 MBを超えると警告が表示されるはずです。どのようにイメージのバイト数でサイズを取得できますか?アップロード時に画像のサイズを制限する(最大1 MB)

uploadImg.addActionListener(new ActionListener() { 
    public void actionPerformed(ActionEvent evt) { 

     Display.getInstance().openGallery(new ActionListener() { 

      public void actionPerformed(ActionEvent evt) { 
       try { 
        if (evt == null) { 
         System.out.println("user cancelled"); 
         return; 
        } 

        eventImgpath = (String) evt.getSource(); 
        Image i = Image.createImage(eventImgpath); 
        if (i.getWidth() < 800 && i.getHeight() < 267) { 
         eventImage.setIcon(i.scaledWidth(Display.getInstance().getDisplayWidth())); 
        } else { 
         ToastBar.showErrorMessage("Please check the size of the image: Height= 800 & Width= 267", 5000); 
        } 
        eventImage.getParent().revalidate(); 
       } catch (Exception ex) { 
        ex.printStackTrace(); 
       } 
      } 
     }, Display.GALLERY_IMAGE); 
    } 
}); 

答えて

0

サイズをバイト単位で制限する方法はありません。この問題を回避するには、解像度を下げて出力ファイルのサイズを確認してください。例えば。 FileSystemStorageの場合はgetLengthメソッドを使用し、Storageの場合はentrySizeメソッドを使用できます。

関連する問題