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);
}
}
|