• 团队博客


     public static final int SELECT_PIC_BY_TACK_PHOTO = 1;//拍照获取
        public static final int SELECT_PIC_BY_PICK_PHOTO = 2;//相册图片
        //按钮们
        private Button btn_take_photo;
        private Button btn_pick_photo;
        private Button btn_cancel;
        /** 获取到的图片路径 */
        private String picPath;
        private Intent lastIntent;
        private Uri photoUri;
        /** 从Intent获取图片路径的KEY */
        public static final String KEY_PHOTO_PATH = "photo_path";
        private Bitmap bitmap;
        private ImageView mImageView;
    
        public int wxat;
            //剪裁
            mView = (CropImageView) findViewById(R.id.cropimage);
            //设置资源和默认长宽
            Drawable drawable = new BitmapDrawable(bitmap);
            mView.setDrawable(drawable, 300,
                    300);
            //调用该方法得到剪裁好的图片
            Bitmap mBitmap= mView.getCropImage();
    package com.spring.sky.image.upload;
    
    import android.content.Context;
    import android.graphics.Canvas;
    import android.graphics.Color;
    import android.graphics.ColorFilter;
    import android.graphics.Paint;
    import android.graphics.Rect;
    import android.graphics.drawable.Drawable;
    
    public class FloatDrawable extends Drawable {
    
        private Context mContext;
        private int offset = 50;
        private Paint mLinePaint = new Paint();
        private Paint mLinePaint2 = new Paint();
        {
            mLinePaint.setARGB(200, 50, 50, 50);
            mLinePaint.setStrokeWidth(1F);
            mLinePaint.setStyle(Paint.Style.STROKE);
            mLinePaint.setAntiAlias(true);
            mLinePaint.setColor(Color.WHITE);
            //
            mLinePaint2.setARGB(200, 50, 50, 50);
            mLinePaint2.setStrokeWidth(7F);
            mLinePaint2.setStyle(Paint.Style.STROKE);
            mLinePaint2.setAntiAlias(true);
            mLinePaint2.setColor(Color.WHITE);
        }
    
        public FloatDrawable(Context context) {
            super();
            this.mContext = context;
    
        }
    
        public int getBorderWidth() {
            return dipTopx(mContext, offset);//根据dip计算的像素值,做适配用的
        }
    
        public int getBorderHeight() {
            return dipTopx(mContext, offset);
        }
    
        @Override
        public void draw(Canvas canvas) {
    
            int left = getBounds().left;
            int top = getBounds().top;
            int right = getBounds().right;
            int bottom = getBounds().bottom;
    
            Rect mRect = new Rect(left + dipTopx(mContext, offset) / 2, top
                    + dipTopx(mContext, offset) / 2, right
                    - dipTopx(mContext, offset) / 2, bottom
                    - dipTopx(mContext, offset) / 2);
            //画默认的选择框
            canvas.drawRect(mRect, mLinePaint);
            //画四个角的四个粗拐角、也就是八条粗线
            canvas.drawLine((left + dipTopx(mContext, offset) / 2 - 3.5f), top
                            + dipTopx(mContext, offset) / 2,
                    left + dipTopx(mContext, offset) - 8f,
                    top + dipTopx(mContext, offset) / 2, mLinePaint2);
            canvas.drawLine(left + dipTopx(mContext, offset) / 2,
                    top + dipTopx(mContext, offset) / 2,
                    left + dipTopx(mContext, offset) / 2,
                    top + dipTopx(mContext, offset) / 2 + 30, mLinePaint2);
            canvas.drawLine(right - dipTopx(mContext, offset) + 8f,
                    top + dipTopx(mContext, offset) / 2,
                    right - dipTopx(mContext, offset) / 2,
                    top + dipTopx(mContext, offset) / 2, mLinePaint2);
            canvas.drawLine(right - dipTopx(mContext, offset) / 2,
                    top + dipTopx(mContext, offset) / 2 - 3.5f,
                    right - dipTopx(mContext, offset) / 2,
                    top + dipTopx(mContext, offset) / 2 + 30, mLinePaint2);
            canvas.drawLine((left + dipTopx(mContext, offset) / 2 - 3.5f), bottom
                            - dipTopx(mContext, offset) / 2,
                    left + dipTopx(mContext, offset) - 8f,
                    bottom - dipTopx(mContext, offset) / 2, mLinePaint2);
            canvas.drawLine((left + dipTopx(mContext, offset) / 2), bottom
                            - dipTopx(mContext, offset) / 2,
                    (left + dipTopx(mContext, offset) / 2),
                    bottom - dipTopx(mContext, offset) / 2 - 30f, mLinePaint2);
            canvas.drawLine((right - dipTopx(mContext, offset) + 8f), bottom
                            - dipTopx(mContext, offset) / 2,
                    right - dipTopx(mContext, offset) / 2,
                    bottom - dipTopx(mContext, offset) / 2, mLinePaint2);
            canvas.drawLine((right - dipTopx(mContext, offset) / 2), bottom
                            - dipTopx(mContext, offset) / 2 - 30f,
                    right - dipTopx(mContext, offset) / 2,
                    bottom - dipTopx(mContext, offset) / 2 + 3.5f, mLinePaint2);
    
        }
    
        @Override
        public void setBounds(Rect bounds) {
            super.setBounds(new Rect(bounds.left - dipTopx(mContext, offset) / 2,
                    bounds.top - dipTopx(mContext, offset) / 2, bounds.right
                    + dipTopx(mContext, offset) / 2, bounds.bottom
                    + dipTopx(mContext, offset) / 2));
        }
    
        @Override
        public void setAlpha(int alpha) {
    
        }
    
        @Override
        public void setColorFilter(ColorFilter cf) {
    
        }
    
        @Override
        public int getOpacity() {
            return 0;
        }
    
        public int dipTopx(Context context, float dpValue) {
            final float scale = context.getResources().getDisplayMetrics().density;
            return (int) (dpValue * scale + 0.5f);
        }
    
    }
  • 相关阅读:
    SDUSTOJ 1466
    UVa
    51Nod
    UVa
    easyui-启用禁用方法
    设置系统时间
    移除/添加属性
    .net生成二维码图片
    Mysql数据库误删恢复
    js 加减乘除运算
  • 原文地址:https://www.cnblogs.com/hfy717/p/14868835.html
Copyright © 2020-2023  润新知