zoukankan      html  css  js  c++  java
  • 四角切圆法

    	/**
    	 * 四角切圆
    	 * 
    	 * @param bitmap
    	 *            原始位图
    	 * @return 新位图
    	 */
    	public static Bitmap getRoundBitmap(Bitmap bitmap) {
    		try {
    			int width = bitmap.getWidth();
    			int height = bitmap.getHeight();
    			int left = 0, top = 0, right = width, bottom = height;
    			float roundPx = height / 2;
    			if (width > height) {
    				left = (width - height) / 2;
    				top = 0;
    				right = left + height;
    				bottom = height;
    			} else if (height > width) {
    				left = 0;
    				top = (height - width) / 2;
    				right = width;
    				bottom = top + width;
    				roundPx = width / 2;
    			}
    
    			Bitmap output = Bitmap.createBitmap(width, height,
    					Bitmap.Config.ARGB_8888);
    			if (output == null) {
    				return bitmap;
    			}
    			Canvas canvas = new Canvas(output);
    			int color = 0xff424242;
    			Paint paint = new Paint();
    			Rect rect = new Rect(left, top, right, bottom);
    			RectF rectF = new RectF(rect);
    
    			paint.setAntiAlias(true);
    			canvas.drawARGB(0, 0, 0, 0);
    			paint.setColor(color);
    			canvas.drawRoundRect(rectF, roundPx, roundPx, paint);
    			paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));
    			canvas.drawBitmap(bitmap, rect, rect, paint);
    			return output;
    		} catch (Exception e) {
    		}
    		return bitmap;
    	}

  • 相关阅读:
    Pytest学习之 autouse=True,自动调用fixture功能
    Pytest学习之xfail使用
    Pytest学习之use fixtures
    python
    python
    python
    python
    python
    python
    python
  • 原文地址:https://www.cnblogs.com/blfshiye/p/5028678.html
Copyright © 2011-2022 走看看