Tag: android canvas

画布绘制位图?)

我知道要在画布上绘制位图,我们需要为全屏图像调用canvas.drawBitmap(filterBitmap,0f,0f,paint)。 但我无法理解为什么我的代码没有工作,我的ImageView是空的。 class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val bitmap = BitmapFactory.decodeResource(resources, R.drawable.grass) val filterBitmap = Bitmap.createBitmap(bitmap.width, bitmap.height, bitmap.config) val paint = Paint().apply { color = Color.RED style = Paint.Style.FILL } val canvas = Canvas(filterBitmap) canvas.drawBitmap(filterBitmap, 0f, 0f, paint) filter_image.setImageBitmap(filterBitmap) } Drawable资源有宽度和高度

如何在Android Canvas上绘制实心三角形

我有扩展View类的类MyView。 MyView应绘制实心三角形。 我画了一个三角形,但我无法填充它。 这是我的onDraw()方法: @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); Paint paint = new Paint(); paint.setColor(android.graphics.Color.BLACK); canvas.drawPaint(paint); paint.setStrokeWidth(4); paint.setColor(android.graphics.Color.RED); paint.setStyle(Paint.Style.FILL_AND_STROKE); paint.setAntiAlias(true); Point a = new Point(0, 0); Point b = new Point(0, 100); Point c = new Point(87, 50); Path path = new Path(); path.setFillType(FillType.EVEN_ODD); path.moveTo(ax, ay); path.lineTo(bx, by); path.moveTo(bx, by); path.lineTo(cx, cy); path.moveTo(cx, […]

绘制一个图像android的文本中间

我必须在地图视图上放置标记,并在标记上写上一个数字。 我已经这样做了,但文本对齐方式因不同的分辨率而异。 波纹管是参考代码 float xVal = (float) curScreenCoords.x; // Point curScreenCoords float yVal = (float) curScreenCoords.y-20; // Point curScreenCoords Bitmap bitmap = BitmapFactory.decodeResource ( context.getResources() , ( R.drawable.pin_number ) ) ; canvas.drawBitmap(bitmap, xVal, yVal, getInnerPaint()); public Paint getInnerPaint() { if (innerPaint == null) { innerPaint = new Paint(); } innerPaint.setARGB(255, 117, 161, 220); // blue […]

如何使用Android画布绘制矩形只有顶部和顶部的矩形圆?

我发现一个矩形的所有4个角落都是圆形的功能,但我想只有顶部2个角落。 我能做什么? canvas.drawRoundRect(new RectF(0, 100, 100, 300), 6, 6, paint);