zoukankan      html  css  js  c++  java
  • 压缩图片

    /**
     * 压缩图片
     * @param targetwidth 压缩的目标大小 例如将图片等比压缩到 1080 * xxxx 或者 xxxx * 1080 输入 1080 即可
     */
    private void CompressPic(double targetwidth) {
        Bitmap bitmap =  BitmapFactory.decodeFile(Environment.getExternalStorageDirectory().toString() +"/DCIM/pic.jpg");
        //double targetwidth = 1080;//;Math.sqrt(64.00 * 1000);// 1280
        Log.i("输出", "图片处理开始..");
        // 创建操作图片用的matrix对象
        Matrix matrix = new Matrix();
        // 计算宽高缩放率
        double x = Math.max(targetwidth / bitmap.getWidth(), targetwidth
                / bitmap.getHeight());
        // 缩放图片动作
        matrix.postScale((float) x, (float) x);
        bitmap = Bitmap.createBitmap(bitmap, 0, 0, bitmap.getWidth(),
                bitmap.getHeight(), matrix, true);
        String compressPicPath =  Environment.getExternalStorageDirectory().toString() +"/DCIM/pic_cmp.jpg";
        File file = new File(compressPicPath);
        if(file.exists()){
            file.delete();
        }
        try {
            FileOutputStream fos = new FileOutputStream(file);
            bitmap.compress(Bitmap.CompressFormat.JPEG,100,fos);
            fos.flush();
            fos.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    

      

  • 相关阅读:
    3.12
    3.11
    安卓开发
    安卓开发
    安卓开发
    安卓开发
    安卓开发
    安卓开发
    安卓开发
    安卓开发
  • 原文地址:https://www.cnblogs.com/Ayinger/p/11133842.html
Copyright © 2011-2022 走看看