Utils.java :  » App » legoscans » com » mk » legoscans2 » Android Open Source

Android Open Source » App » legoscans 
legoscans » com » mk » legoscans2 » Utils.java
package com.mk.legoscans2;

import java.io.BufferedInputStream;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Random;

import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Matrix;

public class Utils {
  public static Bitmap getImageBitmapFromUrl(URL url)
  { 
    Bitmap bm = null; 
    try { 
      HttpURLConnection conn = (HttpURLConnection)url.openConnection();
      if(conn.getResponseCode() != 200)
      {
        return bm;
      }
      conn.connect();
      InputStream is = conn.getInputStream();

      BufferedInputStream bis = new BufferedInputStream(is); 
      try
      {
        bm = BitmapFactory.decodeStream(bis); 
      }
      catch(OutOfMemoryError ex)
      {
        bm = null;
      }
      bis.close(); 
      is.close(); 
    } catch (Exception e) {}
    
      return bm; 
  }
  
  public static String padLeft(String str, int totalLength, char padChar)
  {
    String padding = "";
    for(int i = 0; i < (totalLength - str.length()); i++)
    {
      padding += padChar;
    }
    return padding + str;
  }
  
  public static String getLocalStorageFolderName(SearchResultEntry searchResultEntry)
  {
    String folderName = searchResultEntry.getScan().getScanId().toString() + "_" + searchResultEntry.getScan().getName().replace(" ", "");
    return getValidFolderName(folderName);
  }
  
  private static String getValidFolderName(String folderName)
  {
    String fn = "";
    for(int i = 0; i < folderName.length(); i++)
    {
      Character c = folderName.charAt(i);
      if("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789_-".contains(c.toString()))
      {
        fn += c;
      }
    }
    
    if(fn.length() == 0)
    {
      Integer newFolderName = new Random().nextInt(9999999);
      fn = newFolderName.toString();
    }
    
    return fn;
  }
  
  public static Bitmap scaleBitmap(Bitmap original, int width, int height)
  {
        float scaleWidth = ((float) width) / original.getWidth();
        float scaleHeight = ((float) height) / original.getHeight();
       
        Matrix matrix = new Matrix();
        matrix.postScale(scaleWidth, scaleHeight);
 
        return Bitmap.createBitmap(original, 0, 0, original.getWidth(), original.getHeight(), matrix, true);
  }
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.