- import java.io.BufferedOutputStream;
- 04.import java.io.ByteArrayOutputStream;
- 05.import java.io.File;
- 06.import java.io.FileOutputStream;
- 07.import java.io.IOException;
- 08.import java.io.InputStream;
- 09.
- 10.import android.graphics.Bitmap;
- 11.import android.graphics.BitmapFactory;
- 12.import android.graphics.Matrix;
- 13.
- 14.public class ImageDispose {
- 15.
- 16.
- 17.
- 18. /**
- 19. * @param 将图片内容解析成字节数组
- 20. * @param inStream
- 21. * @return byte[]
- 22. * @throws Exception
- 23. */
- 24. public static byte[] readStream(InputStream inStream) throws Exception {
- 25. byte[] buffer = new byte[1024];
- 26. int len = -1;
- 27. ByteArrayOutputStream outStream = new ByteArrayOutputStream();
- 28. while ((len = inStream.read(buffer)) != -1) {
- 29. outStream.write(buffer, 0, len);
- 30. }
- 31. byte[] data = outStream.toByteArray();
- 32. outStream.close();
- 33. inStream.close();
- 34. return data;
- 35.
- 36. }
- 37. /**
- 38. * @param 将字节数组转换为ImageView可调用的Bitmap对象
- 39. * @param bytes
- 40. * @param opts
- 41. * @return Bitmap
- 42. */
- 43. public static Bitmap getPicFromBytes(byte[] bytes,
- 44. BitmapFactory.Options opts) {
- 45. if (bytes != null)
- 46. if (opts != null)
- 47. return BitmapFactory.decodeByteArray(bytes, 0, bytes.length,
- 48. opts);
- 49. else
- 50. return BitmapFactory.decodeByteArray(bytes, 0, bytes.length);
- 51. return null;
- 52. }
- 53. /**
- 54. * @param 图片缩放
- 55. * @param bitmap 对象
- 56. * @param w 要缩放的宽度
- 57. * @param h 要缩放的高度
- 58. * @return newBmp 新 Bitmap对象
- 59. */
- 60. public static Bitmap zoomBitmap(Bitmap bitmap, int w, int h){
- 61. int width = bitmap.getWidth();
- 62. int height = bitmap.getHeight();
- 63. Matrix matrix = new Matrix();
- 64. float scaleWidth = ((float) w / width);
- 65. float scaleHeight = ((float) h / height);
- 66. matrix.postScale(scaleWidth, scaleHeight);
- 67. Bitmap newBmp = Bitmap.createBitmap(bitmap, 0, 0, width, height,
- 68. matrix, true);
- 69. return newBmp;
- 70. }
- 71.
- 72. /**
- 73. * 把Bitmap转Byte
- 74. * @Author HEH
- 75. * @EditTime 2010-07-19 上午11:45:56
- 76. */
- 77. public static byte[] Bitmap2Bytes(Bitmap bm){
- 78. ByteArrayOutputStream baos = new ByteArrayOutputStream();
- 79. bm.compress(Bitmap.CompressFormat.PNG, 100, baos);
- 80. return baos.toByteArray();
- 81. }
- 82. /**
- 83. * 把字节数组保存为一个文件
- 84. * @Author HEH
- 85. * @EditTime 2010-07-19 上午11:45:56
- 86. */
- 87. public static File getFileFromBytes(byte[] b, String outputFile) {
- 88. BufferedOutputStream stream = null;
- 89. File file = null;
- 90. try {
- 91. file = new File(outputFile);
- 92. FileOutputStream fstream = new FileOutputStream(file);
- 93. stream = new BufferedOutputStream(fstream);
- 94. stream.write(b);
- 95. } catch (Exception e) {
- 96. e.printStackTrace();
- 97. } finally {
- 98. if (stream != null) {
- 99. try {
- 100. stream.close();
- 101. } catch (IOException e1) {
- 102. e1.printStackTrace();
- 103. }
- 104. }
- 105. }
- 106. return file;
- 107. }
- 108.
- 109.}
android 将图片内容解析成字节数组,将字节数组转换为ImageView可调用的Bitmap对象,图片缩放,把字节数组保存为一个文件,把Bitmap转Byt

最新推荐文章于 2022-09-01 14:56:51 发布
