Canvas、Bitmap、Paint

来源:互联网 发布:linux ioctlsocket 编辑:程序博客网 时间:2024/05/16 19:54

Canvas 画家、绘制工具

1.drawBitmap

        /**         * bitmap 要绘制的位图对象         * src 要裁切的位置,若是null则显示整张图片         * dst 裁切后的图片显示的区域         * paint 画笔         */drawBitmap(Bitmap bitmap,  Rect src,  RectF dst,Paint paint)

2.drawText

        /**         * text 要绘制的文字         * x 文字左端坐标         * y 文字基线y值         * paint 画笔         */drawText(String text, float x, float y, @NonNull Paint paint)

看张图更好理解
这里写图片描述

Bitmap 画布

1.getPixels

详见:http://blog.csdn.net/xx326664162/article/details/52240795

            /**             * getPixels()函数把一张图片,从指定的偏移位置(offset),指定的位置(x,y)截取指定的宽高(width,height)             * 把所得图像的每个像素颜色转为int值,存入pixels。             * stride 参数指定在行之间跳过的像素的数目。图片是二维的,存入一个一维数组中,那么就需要这个参数来指定多少个像素换一行。             */getPixels(@ColorInt int[] pixels, int offset, int stride,int x, int y, int width, int height)

Paint 画笔

1.setXfermode
设置混合模式
详见:http://blog.csdn.net/aigestudio/article/details/41316141

            mTopPaint.setXfermode(porterDuffXfermode);            mCanvas.drawPath(mPath, mTopPaint);            //还原混合模式            mTopPaint.setXfermode(null);